This document describes each of the 9 MCP servers used by the /coord pipeline: purpose, installation, JSON configuration block, API key requirements, and fallback behavior.
์ด ๋ฌธ์๋ /coord ํ์ดํ๋ผ์ธ์์ ์ฌ์ฉํ๋ 9๊ฐ์ MCP ์๋ฒ ๊ฐ๊ฐ์ ์ค๋ช
ํฉ๋๋ค: ๋ชฉ์ , ์ค์น, JSON ๊ตฌ์ฑ ๋ธ๋ก, API ํค ์๊ตฌ์ฌํญ, ๋์ฒด ๋์.
MCP (Model Context Protocol) servers extend Claude Code with specialized capabilities. The pipeline activates the appropriate server based on task type โ it does not run all servers for every task.
MCP(Model Context Protocol) ์๋ฒ๋ Claude Code๋ฅผ ์ ๋ฌธํ๋ ๊ธฐ๋ฅ์ผ๋ก ํ์ฅํฉ๋๋ค. ํ์ดํ๋ผ์ธ์ ์์ ์ ํ์ ๋ฐ๋ผ ์ ์ ํ ์๋ฒ๋ฅผ ํ์ฑํํฉ๋๋ค โ ๋ชจ๋ ์์ ์ ๋ํด ๋ชจ๋ ์๋ฒ๋ฅผ ์คํํ์ง ์์ต๋๋ค.
| Stage (๋จ๊ณ) | MCP servers typically active (์ผ๋ฐ์ ์ผ๋ก ํ์ฑํ๋๋ MCP ์๋ฒ) |
|---|---|
| Stage 1 โ Memory | memory, serena, graphiti-memory |
| Stage 2 โ Plan | sequential-thinking |
| Stage 3 โ Research | tavily, context7, playwright, notebooklm |
| Stage 4 โ Execute | magic, morphllm, serena |
| Stage 5 โ Review | sequential-thinking |
| Stage 6 โ Memory | memory, serena, graphiti-memory |
Purpose: Multi-step structured reasoning with hypothesis testing and self-reflection. The primary reasoning engine for the Plan stage and complex debugging. Best when a problem has 3 or more interconnected components.
๋ชฉ์ : ๊ฐ์ค ํ ์คํธ ๋ฐ ์๊ธฐ ๋ฐ์ฑ์ด ์๋ ๋ค๋จ๊ณ ๊ตฌ์กฐํ๋ ์ถ๋ก . ๊ณํ ๋จ๊ณ์ ๋ณต์กํ ๋๋ฒ๊น ์ ์ํ ๊ธฐ๋ณธ ์ถ๋ก ์์ง.
When active (ํ์ฑํ ์์ ): Stage 2 (Plan), Stage 5 (Review), and any task with --think, --think-hard, or --ultrathink flags.
Installation (์ค์น):
npm install -g @modelcontextprotocol/server-sequential-thinkingConfiguration (๊ตฌ์ฑ):
"sequential-thinking": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-sequential-thinking"]
}API key required: No (API ํค ๋ถํ์)
Fallback (๋์ฒด): Native Claude reasoning โ slower for multi-component problems but functional for simple analysis. (๋ค์ดํฐ๋ธ Claude ์ถ๋ก โ ๋ค์ค ๊ตฌ์ฑ ์์ ๋ฌธ์ ์๋ ๋๋ฆฌ์ง๋ง ๋จ์ ๋ถ์์๋ ๊ธฐ๋ฅ์ )
Purpose: Key-value session persistence. Stores plan checkpoints, task completion status, and short-term session context. Data persists within a session but does not cross session boundaries.
๋ชฉ์ : ํค-๊ฐ ์ธ์ ์ง์์ฑ. ๊ณํ ์ฒดํฌํฌ์ธํธ, ์์ ์๋ฃ ์ํ, ๋จ๊ธฐ ์ธ์ ์ปจํ ์คํธ๋ฅผ ์ ์ฅํฉ๋๋ค. ๋ฐ์ดํฐ๋ ์ธ์ ๋ด์์ ์ง์๋์ง๋ง ์ธ์ ๊ฒฝ๊ณ๋ฅผ ๋์ง ์์ต๋๋ค.
When active (ํ์ฑํ ์์ ): Stage 1 (read), Stage 2 (write plan), Stage 4 (checkpoints), Stage 6 (final write).
Installation (์ค์น):
npm install -g @modelcontextprotocol/server-memoryConfiguration (๊ตฌ์ฑ):
"memory": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-memory"]
}API key required: No (API ํค ๋ถํ์)
Fallback (๋์ฒด): Claude's in-context memory โ lost when context window closes or compacts. For cross-session persistence, use auto-memory files instead. (Claude ์ธ์ปจํ ์คํธ ๋ฉ๋ชจ๋ฆฌ โ ์ปจํ ์คํธ ์ฐฝ์ด ๋ซํ๊ฑฐ๋ ์์ถ๋ ๋ ์์ค)
Purpose: Real-time web search with structured results, domain filtering, and time-range filtering. Supports academic search mode for scholarly content. The primary tool when information from after the model's knowledge cutoff is needed.
๋ชฉ์ : ๊ตฌ์กฐํ๋ ๊ฒฐ๊ณผ, ๋๋ฉ์ธ ํํฐ๋ง, ์๊ฐ ๋ฒ์ ํํฐ๋ง์ด ์๋ ์ค์๊ฐ ์น ๊ฒ์. ํ์ ์ฝํ ์ธ ๋ฅผ ์ํ ํ์ ๊ฒ์ ๋ชจ๋ ์ง์.
When active (ํ์ฑํ ์์ ): Stage 3 (Research), on-demand for current information queries.
Installation (์ค์น):
npm install -g @tavily/mcp-serverConfiguration (๊ตฌ์ฑ):
"tavily": {
"command": "npx",
"args": ["-y", "@tavily/mcp-server"],
"env": {
"TAVILY_API_KEY": "tvly-YOUR_KEY_HERE"
}
}API key required: Yes โ get a free key at https://app.tavily.com (๋ฌด๋ฃ ํค ๋ฐ๊ธ ํ์)
Search modes available (์ฌ์ฉ ๊ฐ๋ฅํ ๊ฒ์ ๋ชจ๋):
| Mode (๋ชจ๋) | Flag (ํ๋๊ทธ) | Best for (์ต์ ์ฉ๋) |
|---|---|---|
| General web | default | News, tutorials, blog posts |
| Academic | search_depth="advanced" |
Research papers, citations |
| News | topic="news" |
Recent events, announcements |
| Domain-specific | include_domains=[โฆ] |
Authoritative sources only |
Fallback (๋์ฒด): Native WebSearch tool โ less structured but functional. (๋ค์ดํฐ๋ธ WebSearch ๋๊ตฌ โ ๋ ๊ตฌ์กฐํ๋์ด ์์ง๋ง ๊ธฐ๋ฅ์ )
Purpose: Curated, version-specific documentation lookup for libraries and frameworks. Returns official documentation patterns rather than web search approximations. Eliminates hallucinated API signatures.
๋ชฉ์ : ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ํ๋ ์์ํฌ๋ฅผ ์ํ ํ๋ ์ด์ ๋ ๋ฒ์ ๋ณ ๋ฌธ์ ์กฐํ. ์น ๊ฒ์ ๊ทผ์ฌ๊ฐ์ด ์๋ ๊ณต์ ๋ฌธ์ ํจํด์ ๋ฐํํฉ๋๋ค.
When active (ํ์ฑํ ์์ ): Stage 3 (Research) when import statements, framework names, or library-specific questions are detected.
Installation (์ค์น):
npm install -g @upstash/context7-mcpConfiguration (๊ตฌ์ฑ):
"context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp"]
}API key required: No (API ํค ๋ถํ์)
Supported library categories (์ง์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฒ์ฃผ):
- Frontend frameworks: React, Vue, Angular, Next.js, Svelte (ํ๋ก ํธ์๋ ํ๋ ์์ํฌ)
- Backend frameworks: Express, FastAPI, Django, Rails (๋ฐฑ์๋ ํ๋ ์์ํฌ)
- Databases: PostgreSQL, MongoDB, Redis, Prisma (๋ฐ์ดํฐ๋ฒ ์ด์ค)
- Cloud SDKs: AWS, GCP, Azure, Vercel (ํด๋ผ์ฐ๋ SDK)
- ML libraries: PyTorch, scikit-learn, Hugging Face (ML ๋ผ์ด๋ธ๋ฌ๋ฆฌ)
Fallback (๋์ฒด): Tavily web search targeting official docs domains. (๊ณต์ ๋ฌธ์ ๋๋ฉ์ธ์ ํ๊ฒํ ํ๋ Tavily ์น ๊ฒ์)
Purpose: Modern, accessible UI component generation using patterns from 21st.dev. Produces production-ready React components with Tailwind CSS, proper ARIA attributes, and responsive design.
๋ชฉ์ : 21st.dev์ ํจํด์ ์ฌ์ฉํ ํ๋์ ์ด๊ณ ์ ๊ทผ ๊ฐ๋ฅํ UI ์ปดํฌ๋ํธ ์์ฑ. Tailwind CSS, ์ ์ ํ ARIA ์์ฑ, ๋ฐ์ํ ๋์์ธ์ด ์๋ ํ๋ก๋์ ์ค๋น React ์ปดํฌ๋ํธ๋ฅผ ์์ฑํฉ๋๋ค.
When active (ํ์ฑํ ์์ ): Stage 4 (Execute) when UI component requests are detected, or on /ui or /21 commands.
Installation (์ค์น):
npm install -g @21st-dev/magicConfiguration (๊ตฌ์ฑ):
"magic": {
"command": "npx",
"args": ["-y", "@21st-dev/magic"],
"env": {
"MAGIC_API_KEY": "YOUR_MAGIC_KEY_HERE"
}
}API key required: Yes โ get a key at https://21st.dev (API ํค ํ์)
Component types supported (์ง์ํ๋ ์ปดํฌ๋ํธ ์ ํ):
- Forms, input fields, validation (ํผ, ์ ๋ ฅ ํ๋, ๊ฒ์ฆ)
- Navigation: navbar, sidebar, breadcrumbs (๋ค๋น๊ฒ์ด์ )
- Data display: tables, cards, charts (๋ฐ์ดํฐ ํ์)
- Feedback: modals, toasts, alerts (ํผ๋๋ฐฑ)
- Layout: grids, containers, responsive wrappers (๋ ์ด์์)
Fallback (๋์ฒด): Manual HTML/CSS with Claude native generation โ functional but less polished. (๋ค์ดํฐ๋ธ Claude HTML/CSS ์์ฑ โ ๊ธฐ๋ฅ์ ์ด์ง๋ง ๋ ์ธ๋ จ๋จ)
Purpose: Real browser automation for E2E testing, visual validation, screenshot capture, and accessibility auditing. Uses Chromium by default. The only tool that can verify rendered output, not just source code.
๋ชฉ์ : E2E ํ ์คํธ, ์๊ฐ์ ๊ฒ์ฆ, ์คํฌ๋ฆฐ์ท ์บก์ฒ, ์ ๊ทผ์ฑ ๊ฐ์ฌ๋ฅผ ์ํ ์ค์ ๋ธ๋ผ์ฐ์ ์๋ํ. ๊ธฐ๋ณธ์ ์ผ๋ก Chromium ์ฌ์ฉ.
When active (ํ์ฑํ ์์ ): Stage 3 (complex page extraction) and Stage 5 (visual validation), on demand for browser testing.
Installation (์ค์น):
# Using pip (pip ์ฌ์ฉ)
pip install playwright-mcp
playwright install chromium
# Or using npm (npm ์ฌ์ฉ)
npm install -g @playwright/mcpConfiguration (๊ตฌ์ฑ):
"playwright": {
"command": "python3",
"args": ["-m", "playwright_mcp"],
"env": {
"PATH": "/home/YOUR_USERNAME/coord-env/bin:/usr/local/bin:/usr/bin:/bin"
}
}API key required: No (API ํค ๋ถํ์)
Capabilities (๊ธฐ๋ฅ):
| Task (์์ ) | Playwright tool (Playwright ๋๊ตฌ) |
|---|---|
| Navigate to a URL | browser_navigate |
| Click an element | browser_click |
| Fill a form | browser_fill_form |
| Take a screenshot | browser_take_screenshot |
| Read console errors | browser_console_messages |
| Test accessibility | browser_snapshot (ARIA tree) |
| Run custom JavaScript | browser_evaluate |
Fallback (๋์ฒด): Tavily for content extraction, manual testing instructions for E2E scenarios. (์ฝํ ์ธ ์ถ์ถ์ Tavily, E2E ์๋๋ฆฌ์ค๋ ์๋ ํ ์คํธ ์ง์นจ)
Purpose: Pattern-based code editing engine with token optimization. Makes consistent changes across multiple files using natural language edit instructions. 30โ50% more token-efficient than individual Edit calls.
๋ชฉ์ : ํ ํฐ ์ต์ ํ๊ฐ ์๋ ํจํด ๊ธฐ๋ฐ ์ฝ๋ ํธ์ง ์์ง. ์์ฐ์ด ํธ์ง ์ง์๋ฅผ ์ฌ์ฉํ์ฌ ์ฌ๋ฌ ํ์ผ์ ๊ฑธ์ณ ์ผ๊ด๋ ๋ณ๊ฒฝ์ ์ํํฉ๋๋ค.
When active (ํ์ฑํ ์์ ): Stage 4 (Execute) when bulk transformations, style enforcement, or framework migrations are planned.
Installation (์ค์น):
npm install -g morphllm-mcpConfiguration (๊ตฌ์ฑ):
"morphllm": {
"command": "npx",
"args": ["-y", "morphllm-mcp"]
}API key required: No (API ํค ๋ถํ์)
Best use cases (์ต์ ์ฌ์ฉ ์ฌ๋ก):
- Replace all
console.logwith structured logger calls (๋ชจ๋ console.log๋ฅผ ๊ตฌ์กฐํ๋ ๋ก๊ฑฐ ํธ์ถ๋ก ๊ต์ฒด) - Enforce ESLint rules across a large codebase (๋๊ท๋ชจ ์ฝ๋๋ฒ ์ด์ค์ ESLint ๊ท์น ์ ์ฉ)
- Update React class components to function components (React ํด๋์ค ์ปดํฌ๋ํธ๋ฅผ ํจ์ ์ปดํฌ๋ํธ๋ก ์ ๋ฐ์ดํธ)
- Apply consistent error handling pattern across all endpoints (๋ชจ๋ ์๋ํฌ์ธํธ์ ์ผ๊ด๋ ์ค๋ฅ ์ฒ๋ฆฌ ํจํด ์ ์ฉ)
When NOT to use morphllm (morphllm์ ์ฌ์ฉํ์ง ๋ง์์ผ ํ ๊ฒฝ์ฐ): Symbol renames with dependency tracking โ use serena instead. Complex semantic changes โ use individual edits.
Fallback (๋์ฒด): MultiEdit tool with multiple individual Edit calls. (์ฌ๋ฌ ๊ฐ๋ณ Edit ํธ์ถ์ด ์๋ MultiEdit ๋๊ตฌ)
Purpose: Semantic code understanding with LSP integration. Handles symbol operations (rename, extract, find references), dependency tracking, and cross-session project memory. The primary tool for understanding large, multi-language codebases.
๋ชฉ์ : LSP ํตํฉ์ด ์๋ ์๋งจํฑ ์ฝ๋ ์ดํด. ์ฌ๋ณผ ์กฐ์(์ด๋ฆ ๋ณ๊ฒฝ, ์ถ์ถ, ์ฐธ์กฐ ์ฐพ๊ธฐ), ์์กด์ฑ ์ถ์ , ์ธ์ ๊ฐ ํ๋ก์ ํธ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฒ๋ฆฌํฉ๋๋ค.
When active (ํ์ฑํ ์์ ): Stage 1 (memory read), Stage 3 (codebase exploration), Stage 4 (symbol operations), Stage 6 (memory write).
Installation (์ค์น): Serena is typically available as part of Claude Code's MCP ecosystem. Check your current installation:
Serena๋ ์ผ๋ฐ์ ์ผ๋ก Claude Code์ MCP ์ํ๊ณ์ ์ผ๋ถ๋ก ์ ๊ณต๋ฉ๋๋ค. ํ์ฌ ์ค์น๋ฅผ ํ์ธํ์ธ์:
claude mcp list | grep serenaIf not installed (์ค์น๋์ง ์์ ๊ฒฝ์ฐ):
npm install -g @serena-ai/mcpConfiguration (๊ตฌ์ฑ):
"serena": {
"command": "npx",
"args": ["-y", "@serena-ai/mcp"],
"env": {
"WORKSPACE_PATH": "/path/to/your/project"
}
}API key required: No (API ํค ๋ถํ์)
Key operations (์ฃผ์ ์์ ):
| Operation (์์ ) | Tool (๋๊ตฌ) |
|---|---|
| List stored memories | list_memories() |
| Read a memory | read_memory("key") |
| Write a memory | write_memory("key", value) |
| Delete a memory | delete_memory("key") |
| Find a symbol | find_symbol("functionName") |
| Find all references | find_referencing_symbols("ClassName") |
| Find declaration | find_declaration("variableName") |
Fallback (๋์ฒด): Grep for code search, manual file reads for structure discovery. (์ฝ๋ ๊ฒ์์ Grep, ๊ตฌ์กฐ ๋ฐ๊ฒฌ์ ์๋ ํ์ผ ์ฝ๊ธฐ)
Purpose: Deep analysis of long-form documents using Google NotebookLM's knowledge base capabilities. Best for research papers, lengthy technical specifications, and document collections that exceed Claude's context window.
๋ชฉ์ : Google NotebookLM์ ์ง์ ๋ฒ ์ด์ค ๊ธฐ๋ฅ์ ์ฌ์ฉํ ์ฅํ ๋ฌธ์์ ์ฌ์ธต ๋ถ์. ์ฐ๊ตฌ ๋ ผ๋ฌธ, ๊ธด ๊ธฐ์ ์ฌ์, Claude์ ์ปจํ ์คํธ ์ฐฝ์ ์ด๊ณผํ๋ ๋ฌธ์ ์ปฌ๋ ์ ์ ์ต์ ์ ๋๋ค.
When active (ํ์ฑํ ์์ ): Stage 3 (Research) when document ingestion is required, or explicitly when user provides a long document for analysis.
Installation (์ค์น):
pip install notebooklm-mcp-cliVerify (ํ์ธ):
nlm --versionConfiguration (๊ตฌ์ฑ):
"notebooklm": {
"command": "python3",
"args": ["-m", "notebooklm_tools.mcp.server"],
"env": {
"PATH": "/home/YOUR_USERNAME/coord-env/bin:/usr/local/bin:/usr/bin:/bin"
}
}Authentication (์ธ์ฆ): Requires Google account authorization. Run nlm login in a terminal after installation.
Google ๊ณ์ ์ธ์ฆ์ด ํ์ํฉ๋๋ค. ์ค์น ํ ํฐ๋ฏธ๋์์ nlm login์ ์คํํฉ๋๋ค.
API key required: No โ uses Google account OAuth (API ํค ๋ถํ์ โ Google ๊ณ์ OAuth ์ฌ์ฉ)
Key capabilities (์ฃผ์ ๊ธฐ๋ฅ):
| Task (์์ ) | Tool (๋๊ตฌ) |
|---|---|
| Create a new notebook | notebook_create |
| Add a source document | source_add |
| Query the knowledge base | notebook_query |
| Cross-notebook analysis | cross_notebook_query |
| Generate audio overview | studio_create(artifact_type="audio") |
Fallback (๋์ฒด): Reading large documents directly with the Read tool + sequential summarization. Slower for very long documents but always available. (Read ๋๊ตฌ๋ก ์ง์ ์ฝ๊ธฐ + ์์ฐจ ์์ฝ โ ๋งค์ฐ ๊ธด ๋ฌธ์์๋ ๋๋ฆฌ์ง๋ง ํญ์ ์ฌ์ฉ ๊ฐ๋ฅ)
Purpose: Long-term domain knowledge graph. Stores temporally-aware facts, research decisions, meeting records, and experimental results as a queryable knowledge graph. Unlike the memory server, Graphiti persists across sessions and months.
๋ชฉ์ : ์ฅ๊ธฐ ๋๋ฉ์ธ ์ง์ ๊ทธ๋ํ. ์๊ฐ ์ธ์ ์ฌ์ค, ์ฐ๊ตฌ ๊ฒฐ์ , ํ์๋ก, ์คํ ๊ฒฐ๊ณผ๋ฅผ ์ฟผ๋ฆฌ ๊ฐ๋ฅํ ์ง์ ๊ทธ๋ํ๋ก ์ ์ฅํฉ๋๋ค. memory ์๋ฒ์ ๋ฌ๋ฆฌ Graphiti๋ ์ธ์
๊ณผ ๋ฌ์ ๋์ด ์ง์๋ฉ๋๋ค.
When active (ํ์ฑํ ์์ ): Stage 1 (knowledge retrieval), Stage 6 (knowledge storage), when search_nodes or add_memory operations are needed.
Installation (์ค์น):
pip install graphiti-core
# Set up the database backend (๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฐฑ์๋ ์ค์ )
# See: https://github.com/getzep/graphitiConfiguration (๊ตฌ์ฑ):
"graphiti-memory": {
"command": "python3",
"args": ["-m", "graphiti_mcp.server"],
"env": {
"OPENROUTER_API_KEY": "sk-or-YOUR_KEY_HERE",
"NEO4J_URI": "bolt://localhost:7687",
"NEO4J_USER": "neo4j",
"NEO4J_PASSWORD": "YOUR_DB_PASSWORD"
}
}API key required: Yes โ requires OPENROUTER_API_KEY for embeddings, and Neo4j for the graph database.
์๋ฒ ๋ฉ์ ์ํ OPENROUTER_API_KEY์ ๊ทธ๋ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค๋ฅผ ์ํ Neo4j๊ฐ ํ์ํฉ๋๋ค.
Key operations (์ฃผ์ ์์ ):
| Operation (์์ ) | Tool (๋๊ตฌ) |
|---|---|
| Store a fact or event | add_memory |
| Search for entities | search_nodes |
| Search for relationships | search_memory_facts |
| Get recent episodes | get_episodes |
| Delete outdated fact | delete_entity_edge |
Important note (์ค์ ์ฐธ๊ณ ์ฌํญ): If Graphiti is unavailable (database not running, API key missing), the pipeline falls back gracefully to auto-memory only. A warning is logged to /tmp/chavis/session_init.log.
Graphiti๋ฅผ ์ฌ์ฉํ ์ ์๋ ๊ฒฝ์ฐ(๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ฏธ์คํ, API ํค ๋๋ฝ), ํ์ดํ๋ผ์ธ์ ์๋์ผ๋ก auto-memory ์ ์ฉ์ผ๋ก ๋์ฒด๋ฉ๋๋ค.
Fallback (๋์ฒด): Auto-memory files at ~/.claude/projects/-home-USERNAME/memory/. Less queryable but always available. (์๋ ๋ฉ๋ชจ๋ฆฌ ํ์ผ โ ์ฟผ๋ฆฌ ๊ฐ๋ฅ์ฑ์ ๋ฎ์ง๋ง ํญ์ ์ฌ์ฉ ๊ฐ๋ฅ)
The following is the full mcpServers configuration block with all 9 servers. Copy it into ~/.claude/settings.json and replace placeholder values.
๋ค์์ 9๊ฐ ์๋ฒ ๋ชจ๋๊ฐ ์๋ ์ ์ฒด mcpServers ๊ตฌ์ฑ ๋ธ๋ก์
๋๋ค. ~/.claude/settings.json์ ๋ณต์ฌํ๊ณ ํ๋ ์ด์คํ๋ ๊ฐ์ ๊ต์ฒดํฉ๋๋ค.
{
"mcpServers": {
"sequential-thinking": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-sequential-thinking"]
},
"memory": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-memory"]
},
"tavily": {
"command": "npx",
"args": ["-y", "@tavily/mcp-server"],
"env": {
"TAVILY_API_KEY": "tvly-YOUR_KEY_HERE"
}
},
"context7": {
"command": "npx",
"args": ["-y", "@upstash/context7-mcp"]
},
"magic": {
"command": "npx",
"args": ["-y", "@21st-dev/magic"],
"env": {
"MAGIC_API_KEY": "YOUR_MAGIC_KEY_HERE"
}
},
"playwright": {
"command": "python3",
"args": ["-m", "playwright_mcp"],
"env": {
"PATH": "/home/YOUR_USERNAME/coord-env/bin:/usr/local/bin:/usr/bin:/bin"
}
},
"morphllm": {
"command": "npx",
"args": ["-y", "morphllm-mcp"]
},
"serena": {
"command": "npx",
"args": ["-y", "@serena-ai/mcp"]
},
"notebooklm": {
"command": "python3",
"args": ["-m", "notebooklm_tools.mcp.server"],
"env": {
"PATH": "/home/YOUR_USERNAME/coord-env/bin:/usr/local/bin:/usr/bin:/bin"
}
},
"graphiti-memory": {
"command": "python3",
"args": ["-m", "graphiti_mcp.server"],
"env": {
"OPENROUTER_API_KEY": "sk-or-YOUR_KEY_HERE",
"NEO4J_URI": "bolt://localhost:7687",
"NEO4J_USER": "neo4j",
"NEO4J_PASSWORD": "YOUR_DB_PASSWORD"
}
}
}
}