Skip to content

MCP Server Reference

Server Inventory

Server Transport Source Auth Method
azure-devops stdio setup.sh (user scope) PAT via AZURE_DEVOPS_PAT env var
taskmaster-ai stdio setup.sh (user scope) None
github http setup.sh (user scope) OAuth via /mcp command
playwright stdio compound-engineering plugin None
context7 http compound-engineering plugin None
Granola managed claude.ai connector Anthropic-managed
Asana managed claude.ai connector Anthropic-managed
Atlassian managed claude.ai connector Anthropic-managed
Gmail managed claude.ai connector Anthropic-managed
Google Calendar managed claude.ai connector Anthropic-managed
HubSpot managed claude.ai connector Anthropic-managed

Environment Variables

Variable Required By Purpose How to Obtain
AZURE_DEVOPS_PAT azure-devops Personal Access Token for Azure DevOps API Azure DevOps > User Settings > Personal Access Tokens

No other servers require environment variables. GitHub uses OAuth (see below), and taskmaster-ai requires no credentials.

Authentication

OAuth Servers (GitHub)

The GitHub MCP server uses OAuth authentication managed by Claude Code:

  1. Run setup.sh --full to register the server
  2. Open Claude Code in any project
  3. Run /mcp to see the authentication status
  4. Follow the OAuth flow to authorize GitHub access
  5. Verify with claude mcp list — github should show "Connected"

PAT-based Servers (Azure DevOps)

Azure DevOps requires a Personal Access Token set in your shell profile:

# Add to ~/.zshrc or ~/.bashrc
export AZURE_DEVOPS_PAT="your-token-here"

Generate the token in Azure DevOps with these scopes: Code (Read & Write), Work Items (Read & Write), Build (Read), Release (Read).

Scope Precedence

Claude Code resolves MCP servers using this precedence (highest first):

  1. Local scope (~/.claude.json local entries) — project-specific overrides
  2. Project scope (.mcp.json in project root) — per-repo server definitions
  3. User scope (~/.claude.json user entries) — cross-project defaults

The toolkit uses user scope for team-wide servers so they are available in every project. If a local-scope entry exists for the same server name, it shadows the user-scope entry. The migrate_mcp_servers() function in setup.sh removes known local-scope entries to prevent this shadowing.

Adding Custom Servers

For project-specific MCP servers, create a .mcp.json file in the project root:

{
  "mcpServers": {
    "my-project-server": {
      "command": "npx",
      "args": ["my-mcp-server"],
      "type": "stdio"
    }
  }
}

This is project-scoped and does not affect other projects. See SPEC-025 for details.

Rollback

To reverse all MCP server installations from setup.sh:

claude mcp remove azure-devops
claude mcp remove taskmaster-ai
claude mcp remove github

This removes only the user-scope entries added by the toolkit. Plugin-provided servers (playwright, context7) and Anthropic-managed servers (Granola, Asana, etc.) are unaffected.