- Home
- MCP servers
- Brightspace
Brightspace
- python
4
GitHub Stars
python
Language
6 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"pranav-vijayananth-brightspace-mcp-server": {
"command": "/absolute/path/to/brightspace-mcp-server/venv/bin/python",
"args": [
"/absolute/path/to/brightspace-mcp-server/mcp_server.py"
],
"env": {
"PURDUE_PASSWORD": "YOUR_PASSWORD",
"PURDUE_USERNAME": "YOUR_USERNAME"
}
}
}
}You can access your Purdue Brightspace data through Claude Desktop using a dedicated MCP server. This server authenticates with your Purdue account, navigates Brightspace via browser automation, and exposes tools that let you ask Claude natural-language questions about your courses and related data.
How to use
Use Claude Desktop to interact with Brightspace data through natural language. After you configure the MCP server, you can ask Claude questions like “What courses am I taking?” and Claude will fetch your course list from Brightspace. The server handles the login flow, including Duo Mobile 2FA, and returns your data so Claude can present it in a human-friendly way.
How to install
Prerequisites: Python 3.12, macOS (recommended), Purdue Career Account with Brightspace access, Duo Mobile configured, and Claude Desktop installed.
Step 1. Clone the project and set up the environment.
# Clone the repository
git clone https://github.com/your-username/brightspace-mcp-server.git
cd brightspace-mcp-server
# Run the automated setup to create a Python 3.12 virtual environment and install dependencies
python3 setup.py
# Activate the virtual environment
source venv/bin/activate # macOS/Linux
# or
venv\Scripts\activate # Windows
Step 2. Configure credentials.
PURDUE_USERNAME=your_purdue_username
PURDUE_PASSWORD=your_purdue_password
Step 3. Test the scraper optional checks (auth and course scraping) if you want to verify locally.
# Test basic connectivity and authentication
python testing/playwright_trial.py
# Test full course scraping
python brightspace_api.py
Configuration and MCP integration
Configure Claude Desktop to load the MCP server as a local process. You will run the Python interpreter from your virtual environment and point to the MCP server script.
{
"mcpServers": {
"brightspace": {
"command": "/absolute/path/to/brightspace-mcp-server/venv/bin/python",
"args": [
"/absolute/path/to/brightspace-mcp-server/mcp_server.py"
],
"env": [
{"name": "PURDUE_USERNAME", "value": "YOUR_USERNAME"},
{"name": "PURDUE_PASSWORD", "value": "YOUR_PASSWORD"}
]
}
}
}
Replace each "/absolute/path/to/" with your actual project path. For example, if your project is under /Users/you/Documents/brightspace-mcp-server, use that base path.
Troubleshooting and tips
If the MCP server does not show up in Claude Desktop, check that all paths are absolute, the Python version is 3.12, and you fully restart Claude Desktop after saving the config.
If authentication fails, ensure the credentials in the environment are correct, run the local test script, and approve Duo Mobile promptly when prompted.
If no courses are found, run the scraper directly and verify Brightspace enrollment. CSS selectors may need updates if Brightspace UI changes.
Development and available tools
The MCP server exposes tools that allow Claude to query Brightspace data. Available tools include a basic test tool and planned data-fetching tools.
Available tools described include:
- hello: Test that the MCP server is working
- get_courses: Retrieve the list of enrolled courses (planned/soon)
- get_assignments: Retrieve assignments for courses (planned/soon)
Available tools
hello
Test that the MCP server is working and responds to basic queries.
get_courses
Fetch the list of courses the user is enrolled in (upcoming feature).
get_assignments
Fetch assignments for enrolled courses (upcoming feature).