configure-plugin/skills/configure-mcp/SKILL.md
Check and configure MCP servers for project integration. Use when setting up MCP servers, checking MCP status, or adding new servers to a project.
npx skillsauth add laurigates/claude-plugins configure-mcpInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Check and configure Model Context Protocol (MCP) servers for this project.
MCP Philosophy: Servers are managed project-by-project (in .mcp.json), not user-scoped (in ~/.claude/settings.json), to keep context clean and dependencies explicit.
For server configurations, environment variable reference, and report templates, see REFERENCE.md.
| Use this skill when... | Use another approach when... |
|------------------------|------------------------------|
| Setting up MCP servers for a project | Configuring user-level settings (edit ~/.claude/settings.json directly) |
| Checking MCP server status and validating configuration | Just viewing .mcp.json contents (use Read tool) |
| Adding specific servers (context7, playwright, sequential-thinking, etc.) | Installing npm/bun packages for non-MCP purposes (use package manager) |
| Ensuring team-shareable MCP setups | Personal-only MCP configuration (use ~/.claude/settings.json) |
| Installing core productivity servers | Debugging specific server runtime issues (check server logs, restart Claude Code) |
find . -maxdepth 1 -name \'.mcp.json\'grep '.mcp.json' .gitignorefind . -maxdepth 1 -name \'.project-standards.yaml\'find . -maxdepth 1 -name 'playwright.config.*' -print -quitfind . -maxdepth 2 \( -name '*.ts' -o -name '*.py' -o -name '*.go' -o -name '*.rs' \) -print -quitfind . -maxdepth 1 -name \'~/.local/share/chezmoi/.chezmoidata.toml\'Parse these from $ARGUMENTS:
--check-only: Report current status, do not offer installation--fix: Install servers without prompting for confirmation--core: Install all core servers (context7, sequential-thinking)--server <name>: Install specific server by name (repeatable)If no flags provided, run interactive mode (detect → report → offer to install).
These servers should be installed in all projects:
| Server | Purpose | Env Vars |
|--------|---------|----------|
| context7 | Documentation context from Upstash | None |
| sequential-thinking | Enhanced reasoning and planning | None |
Execute this MCP configuration workflow:
First, test whether .mcp.json exists in the current working directory:
.mcp.json is absent (the Config exists context line is empty, or test -f .mcp.json would fail): print "No .mcp.json found — starting fresh." and treat mcpServers as {} for the remainder of the workflow. Do not abort. Proceed to Step 2 so the user can still install core servers or specific servers via flags / interactive mode; Step 3 will create the file from scratch..mcp.json exists: use the Read tool to load .mcp.json and parse the mcpServers object. List all configured servers and surface the result to subsequent steps. For each server, check its command type (npx, bunx, uvx, go run) and required env vars. Flag any servers with missing required environment variables.If --check-only, skip to Step 4 (report only).
Based on the flags:
--core: Select context7 and sequential-thinking.--server <name>: Select the named server(s). Validate against the available servers in REFERENCE.md.playwright if playwright.config.* exists, suggest cclsp if large TS/Python/Rust codebase).If all requested servers are already installed, report "All servers already configured" and stop.
For each selected server:
.mcp.json doesn't exist, create it with {"mcpServers": {}}.mcpServers object. Preserve existing servers..mcp.json with proper JSON formatting.If cclsp is selected, also set up cclsp.json (see REFERENCE.md for language detection and setup details).
Handle git tracking:
.mcp.json is in .gitignore..gitignore for personal projects or tracking for team projects.Print a summary using the report format from REFERENCE.md:
If .project-standards.yaml exists, update the MCP section with current server list and timestamp.
After configuring .mcp.json, use these /mcp commands in Claude Code to manage servers without editing files:
| Command | Description |
|---------|-------------|
| /mcp | List all configured servers and connection status |
| /mcp enable <server> | Enable a server for the current session |
| /mcp disable <server> | Disable a server for the current session (session-scoped) |
Note: Enable/disable are session-scoped only. Permanent changes require editing .mcp.json.
| Context | Command |
|---------|---------|
| Quick status check | jq -c '.mcpServers \| keys' .mcp.json 2>/dev/null |
| Validate JSON syntax | jq empty .mcp.json 2>&1 |
| List environment variables needed | jq -r '.mcpServers[] \| .env // {} \| keys[]' .mcp.json 2>/dev/null \| sort -u |
| Check if server installed | jq -e '.mcpServers.context7' .mcp.json >/dev/null 2>&1 && echo "installed" \|\| echo "missing" |
| Core servers install (automated) | /configure:mcp --core --fix |
| Specific server install (automated) | /configure:mcp --server context7 --fix |
| Check-only mode (CI/reporting) | /configure:mcp --check-only |
| Flag | Description |
|------|-------------|
| --check-only | Report status without offering to install servers |
| --fix | Install specified or suggested servers without prompting |
| --core | Install all core servers (context7, sequential-thinking) |
| --server <name> | Install specific server (can be repeated) |
.mcp.json: Offer to backup and replace with valid templatetesting
Verify accumulated bug claims at upstream HEAD and dedup against trackers before filing issues. Use when filing upstream reports from backlogs, audit docs, or git-history findings.
documentation
Gate outward-bound text (upstream issues, docs, PR bodies) through isolated haiku fresh-reader critique before publishing. Use when an artifact must survive a reader with zero project context.
tools
Suggest improvements to SKILL.md content, descriptions, or tool config from eval results. Use when raising pass rates, fixing triggering, or iterating on a skill after evaluation.
tools
deadbranch CLI for stale-branch cleanup — dry-run preview, TUI or non-interactive delete, protects main/develop/WIP. Use when asked to clean up branches, prune branches, or remove stale branches.