Configure popular MCP servers for enhanced agent capabilities
Configure Model Context Protocol (MCP) servers to extend Claude Code's capabilities with external tools like web search, file system access, and GitHub integration.
MCP servers provide additional tools that Claude Code agents can use. This skill helps you configure popular MCP servers using the claude mcp add command-line interface.
Use AskUserQuestion with one question at a time and no more than 3 options per question. Recent Claude Code builds reject larger option payloads as invalid tool parameters, so keep the MCP selection flow staged.
Question: "What kind of MCP setup would you like?"
Options:
Ask a follow-up AskUserQuestion:
Question: "Which recommended MCP bundle should I configure?"
Options:
Map that choice to the server list you will configure.
Ask a follow-up AskUserQuestion:
Question: "Which server should I configure first?"
Options:
If the user chooses More server choices, ask one more AskUserQuestion:
Question: "Which additional MCP option do you want?"
Options:
Skip directly to the Custom MCP Server section below.
No API key required. Ready to use immediately.
Ask for API key:
Do you have an Exa API key?
- Get one at: https://exa.ai
- Enter your API key, or type 'skip' to configure later
Ask for allowed directories:
Which directories should the filesystem MCP have access to?
Default: Current working directory
Enter comma-separated paths, or press Enter for default
Ask for token:
Do you have a GitHub Personal Access Token?
- Create one at: https://github.com/settings/tokens
- Recommended scopes: repo, read:org
- Enter your token, or type 'skip' to configure later
Use the claude mcp add command to configure each MCP server. The CLI automatically handles settings.json updates and merging.
claude mcp add context7 -- npx -y @upstash/context7-mcp
claude mcp add -e EXA_API_KEY=<user-provided-key> exa -- npx -y exa-mcp-server
claude mcp add filesystem -- npx -y @modelcontextprotocol/server-filesystem <allowed-directories>
Option 1: Docker (local)
claude mcp add -e GITHUB_PERSONAL_ACCESS_TOKEN=<user-provided-token> github -- docker run -i --rm -e GITHUB_PERSONAL_ACCESS_TOKEN ghcr.io/github/github-mcp-server
Option 2: HTTP (remote)
claude mcp add --transport http github https://api.githubcopilot.com/mcp/
Note: Docker option requires Docker installed. HTTP option is simpler but may have different capabilities.
After configuration, verify the MCP servers are properly set up:
# List configured MCP servers
claude mcp list
This will display all configured MCP servers and their status.
MCP Server Configuration Complete!
CONFIGURED SERVERS:
[List the servers that were configured]
NEXT STEPS:
1. Restart Claude Code for changes to take effect
2. The configured MCP tools will be available to all agents
3. Run `claude mcp list` to verify configuration
USAGE TIPS:
- Context7: Ask about library documentation (e.g., "How do I use React hooks?")
- Exa: Use for web searches (e.g., "Search the web for latest TypeScript features")
- Filesystem: Extended file operations beyond the working directory
- GitHub: Interact with GitHub repos, issues, and PRs
TROUBLESHOOTING:
- If MCP servers don't appear, run `claude mcp list` to check status
- Ensure you have Node.js 18+ installed for npx-based servers
- For GitHub Docker option, ensure Docker is installed and running
- Run /oh-my-claudecode:omc-doctor to diagnose issues
MANAGING MCP SERVERS:
- Add more servers: /oh-my-claudecode:mcp-setup or `claude mcp add ...`
- List servers: `claude mcp list`
- Remove a server: `claude mcp remove <server-name>`
If user selects "Custom":
Ask for:
stdio (default) or httpnpx my-mcp-server)https://example.com/mcp)Then construct and run the appropriate claude mcp add command:
For stdio servers:
# Without environment variables
claude mcp add <server-name> -- <command> [args...]
# With environment variables
claude mcp add -e KEY1=value1 -e KEY2=value2 <server-name> -- <command> [args...]
For HTTP servers:
# Basic HTTP server
claude mcp add --transport http <server-name> <url>
# HTTP server with headers
claude mcp add --transport http --header "Authorization: Bearer <token>" <server-name> <url>
If the custom server is meant to provide organization-specific reference material to OMC workflows, prefer a single tool named get_company_context that returns markdown via { context: string }.
Example local registration:
claude mcp add company-context -- node examples/vendor-mcp-server/server.mjs
Then point OMC at the full tool name in .claude/omc.jsonc or ~/.config/claude-omc/config.jsonc:
{
"companyContext": {
"tool": "mcp__company-context__get_company_context",
"onError": "warn"
}
}
This remains advisory prompt context, not runtime enforcement.
claude mcp list to verify server statusclaude mcp add with correct credentials if neededclaude mcp list to confirm servers are activeclaude mcp remove <server-name>