-
Notifications
You must be signed in to change notification settings - Fork 3.9k
Make projects toolset part of the default toolsets #2275
Description
Describe the feature or problem you'd like to solve
The projects toolset is fully implemented with three tools (projects_list, projects_get, projects_write), but it is not included in the default toolset configuration. This means users connecting to the remote MCP server at https://api.githubcopilot.com/mcp/ have no access to GitHub Projects v2 tools unless they know to use the /x/projects URL path or custom headers.
The README advertises "Issue & PR Automation: Create, update, and manage issues and pull requests. Let AI help triage bugs, review code changes, and maintain project boards." — but the project board tools are not available out of the box.
When a user asks an AI assistant to list issues on their project board (e.g., https://github.com/orgs/myorg/projects/2/), the assistant reports there are no tools available for GitHub Projects. This is confusing because the capability exists but is hidden behind a non-default toolset.
Additionally, Claude Desktop's connector UI (adding a server via URL) does not support custom headers or URL path modifiers, so users of that flow have no way to enable the projects toolset without switching to a local stdio setup.
Proposed solution
Mark ToolsetMetadataProjects with Default: true in pkg/github/tools.go, the same way repos, issues, pull_requests, users, and context are marked:
ToolsetMetadataProjects = inventory.ToolsetMetadata{
ID: "projects",
Description: "GitHub Projects related tools",
Icon: "project",
Default: true, // <-- add this
InstructionsFunc: generateProjectsToolsetInstructions,
}This would make the projects tools available by default for both the local (stdio) and remote (HTTP) server, matching the README's advertised capabilities.
Example prompts or workflows (for tools/toolsets only)
- "List all items on my project board at https://github.com/orgs/myorg/projects/2/"
- "What issues are in the 'In Progress' column of our team project?"
- "Add issue [docker] build arm64 #42 from myorg/myrepo to the team project board"
- "Update the status of the billing refactor item to 'Done' on the project board"
- "Show me the status updates for our Q2 planning project"
Additional context
- The
projectstoolset contains only 3 tools, so adding it to defaults has minimal impact on tool count. - The toolset has no feature flags or holdback flags gating it — it's simply not marked as default.
- Users connecting via Claude Desktop's URL connector have no practical way to enable non-default toolsets, since the connector UI doesn't support headers or URL path parameters.
- The workaround today requires running the local server binary with
--toolsets=default,projectsand a personal access token, which is a significant setup hurdle compared to just pasting the MCP URL.