- Home
- MCP servers
- GitHub Team Management
GitHub Team Management
- typescript
2
GitHub Stars
typescript
Language
5 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.
You can run the GitHub Team Management MCP Server to automate GitHub project management for AI assistants, including creating issues, managing boards, assigning team members, and automating workflows with OAuth authentication. This server is designed to work with both Claude and ChatGPT, enabling seamless, enterprise-grade GitHub automation across your repositories and projects.
How to use
You will connect an MCP client to the server endpoint to start automating GitHub workflows. Begin by deploying the server to Cloudflare Workers, then authenticate with GitHub via OAuth. Once connected, you can perform comprehensive GitHub operations such as creating issues with assignees and labels, updating project boards, drafting issues, and retrieving analytics across repositories and organizations. Use the server as a single automation surface for both Claude and ChatGPT, enabling consistent actions regardless of the AI assistant you choose.
Practical usage patterns include: creating issues with metadata for sprints, associating issues to project boards, bulk-updating issue states, and querying organization-wide activity. You can also draft issues directly in project boards, assign board items to team members, and apply labels to both issues and project board items. Security and access controls ensure only authenticated users with proper GitHub scopes can operate on repositories and projects.
How to install
Prerequisites include a Node.js 18+ runtime, a Cloudflare account with a Workers plan, a GitHub OAuth App, and the Wrangler CLI.
# Clone and install
git clone <repository-url>
cd team-mcp
npm install
# Login to Cloudflare
wrangler login
# Deploy to Cloudflare Workers
npm run deploy
Additional configuration and usage notes
GitHub OAuth setup involves creating a new OAuth App on GitHub with a callback URL that points to your deployed MCP URL. After creating the app, you will obtain a Client ID and Client Secret to configure the server.
Environment variables you will set include your GitHub OAuth client credentials and a cookie encryption key. You will also optionally provide a Dune Analytics key and OCR Space key if you plan to use those features.
To connect an AI assistant, you will configure the client to connect to the MCP server’s streaming endpoint. Claude Desktop uses a configuration that points to the server’s SSE endpoint, while ChatGPT Pro uses the Deep Research-compatible URL for the same SSE stream.
Security & troubleshooting
The server uses encrypted token storage and secure cookies. It requests minimal GitHub scopes to perform its actions and enforces HTTPS for all communications. If authentication fails, verify the OAuth configuration and that the callback URL exactly matches what you configured in GitHub.
If you encounter rate limit errors, note that authenticated GitHub calls are rate-limited and the server includes automatic retry with exponential backoff. Check remaining quota in error responses and adjust request patterns accordingly.
If a tool or board item is not found, confirm that you are using the correct tool name and that OAuth authentication completed successfully. You can verify project board access and item existence by retrieving project board details and listing items.
Notes on compatibility and future features
The MCP server is designed to be compatible with both Claude and ChatGPT clients. It provides the same set of tools and endpoints, with responses optimized for each client type. The roadmap includes webhook support, enhanced analytics, and expanded cross-platform integration.
Available tools
createGitHubIssue
Create GitHub issues with assignees, labels, and milestones and optionally add the issue to a project board.
commentOnGitHubIssue
Add comments to an existing GitHub issue.
updateIssueAssignees
Replace the current issue assignees with a new set.
updateIssueLabels
Replace the current issue labels with a new set.
closeIssue
Close an issue with an optional reason like COMPLETED or NOT_PLANNED.
reopenIssue
Reopen a previously closed issue.
updateIssue
Update the issue title and/or body.
getIssueDetails
Fetch comprehensive details for a specific issue.
getProjectBoardDetails
Retrieve project board details including items and fields.
updateProjectBoardItem
Update custom fields on a project board item.
assignProjectBoardItem
Smartly assign users to a project board item, honoring custom fields when present.
unassignProjectBoardItem
Remove specific assignees from a project board item.
labelProjectBoardItem
Add labels to a project board item.
addIssueToProject
Add an existing GitHub issue to a project board with an initial status.
createProjectBoardDraftIssue
Create a draft issue directly in the project board.
updateProjectBoardDraftIssueTitle
Update the title and body of a project board draft issue.
getProjectAssignableUsers
List team members who can be assigned to project items.
search
AI-optimized search across repositories, issues, PRs, and project items.
fetch
Fetch detailed information for specific records by ID.
listOrganizationRepos
List and filter repositories within the organization.
getRepositoryDetails
Get repository details including recent activity.
getRecentActivity
Monitor recent activity across organization repositories.
searchIssuesAndPRs
Search issues and pull requests across the organization.
getEFPDuneStatistics
Access real-time EFP blockchain analytics via Dune endpoints.