Local-first LLM orchestration: memory, knowledge, state, routing, swarm, API discovery, plugins.
Alpha MCP server for local-first LLM orchestration: memory, knowledge, routing, swarm patterns, API probing, persistent state, tests, automation planning, and plugin discovery in one stdio server.
Homebase is designed primarily for local LLMs (Ollama, Qwen, Llama, or any locally-hosted model via a MCP-capable harness). All persistent storage uses SQLite with no cloud dependency. External LLM providers (Claude, Codex, Gemini, OpenAI) can also connect as MCP clients, but local, offline-capable setups are the primary target.
German README: README_de.md
Part of the ellmos-ai family under the open-bricks umbrella.
Discoverability: Published on npm as ellmos-homebase-mcp and maintained in the ellmos-ai organization.
[!NOTE] For AI Assistants & LLM Agents: Machine-readable architecture summary, index, and tool capabilities are published in llms.txt. MCP registry metadata is available in server.json.
#sec-01)#sec-02)#sec-03)#sec-04)#sec-05)#sec-06)#sec-07)#sec-08)#sec-09)#sec-10)#sec-11)#sec-12)#sec-13)#sec-14)#sec-15)#sec-16)#sec-17)#sec-18)flowchart TD
subgraph Clients ["MCP Clients (Local / Remote)"]
Ollama["Local LLMs (Ollama, Qwen, Llama)"]
Claude["Claude Code / Desktop"]
Codex["Codex / Antigravity"]
end
subgraph Transport ["Transport Layer"]
Stdio["stdio (Python MCP SDK)"]
end
subgraph Core ["ellmos-homebase-mcp Core Engine"]
Server["homebase.server"]
Config["homebase.config"]
end
subgraph ToolGroups ["51 MCP Tools across 14 Functional Modules"]
Mem["hb_mem_* (SQLite Memory)"]
KB["hb_kb_* (Knowledge Digest)"]
State["hb_state_* (State & Tasks)"]
Route["hb_route_* (Model Router)"]
Swarm["hb_swarm_* (Swarm Patterns)"]
Api["hb_api_* (API Probing)"]
Conn["hb_conn_* (Connectors Queue)"]
Auto["hb_auto_* (Automation Chains)"]
Plug["hb_plug_* (Plugin Discovery)"]
Garden["hb_garden_* (Garden Store)"]
Test["hb_test_* (Self Tests)"]
Policy["hb_policy_* (Policy Registry, read-only)"]
Ticket["hb_ticket_* (Ticket Master, read-only)"]
Lock["hb_lock_* (Lock Master, read-only)"]
end
subgraph Storage ["Local Storage (Offline-First)"]
DB[(SQLite Storage ~/.homebase/)]
end
Clients --> Stdio
Stdio --> Server
Server --> Config
Server --> ToolGroups
ToolGroups --> DB
sequenceDiagram
autonumber
participant Client as MCP Client (Local LLM / Claude / Codex)
participant Stdio as Transport Layer (stdio)
participant Server as Server & Registry (homebase)
participant Module as Functional Module (hb_mem / hb_state / hb_route)
participant Engine as Engine Seam (Bundled vs Canonical)
participant DB as SQLite Storage (~/.homebase/)
Client->>Stdio: JSON-RPC 2.0 Request (tools/call: hb_mem_store, agent_id="agent-01")
Stdio->>Server: Decode & dispatch tool call
Server->>Module: Validate arguments & inject agent provenance
alt Bundled Engine Mode (Default)
Module->>DB: Execute SQLite query (WAL mode, busy timeout)
DB-->>Module: Return structured records / mutation status
else Canonical Engine Mode ([engines].mode = "canonical")
Module->>Engine: Seam check (Gardener / TASKPLAN / USMC)
alt Engine Available
Engine-->>Module: Delegate to canonical subsystem
else Engine Unreachable
Engine-->>Module: Raise CanonicalEngineUnavailable (Fail-Closed)
end
end
Module-->>Server: Format response in requested language (i18n: en/de/es/zh/ja/ru)
Server-->>Stdio: Encode JSON-RPC 2.0 Response
Stdio-->>Client: Result payload (Zero cloud egress, 100% local)
| Capability / Invariant | Guarantee | Technical Implementation |
|---|---|---|
| 100% Local-First & Zero-Egress | Complete privacy and offline operation; no unexpected cloud communication or telemetry. | All persistent memory, knowledge, and state are saved in local SQLite (~/.homebase/). |
| Strict Engine Seams & Fail-Closed | No silent fallback into disconnected databases when requesting canonical systems. | MODE-CONTRACT.md enforcement: raises CanonicalEngineUnavailable if target is unreachable. |
Team-Memory Provenance (agent_id) | Deterministic audit trail and filterable ownership for multi-agent workflows. | Native agent_id tracking across memory facts, knowledge entries, and task state. |
| Credential-Free Discovery & Planning | Zero secret exposure during local routing recommendations and API probing. | hb_route_*, hb_swarm_*, and hb_api_* run without transmitting API keys or private tokens. |
| Safe Plan-and-Queue Adapters | Safe queueing and chain staging without arbitrary remote code execution. | hb_conn_* and hb_auto_* maintain plan-only queues and offline staging records. |
| Full Native i18n Localization | Seamless multilingual developer and agent interaction. | Localized tool descriptions and JSON schemas for en, de, es, zh, ja, ru. |
| Non-Elevation & Secret Hygiene | Unprivileged execution and strict credential exclusion from distribution. | Non-root compatibility; live configs/secrets ignored in .gitignore and .npmignore. |
| Multi-OS CI Smoke Integrity | Verified cross-platform reliability on all major operating systems. | Multi-version CI matrix covering Python 3.10–3.13 and Node.js 20–24 on Linux/Windows/macOS. |
| Invariant ID | Title & Scope | Guarantee & Technical Enforcement | Verification Seam |
|---|---|---|---|
INV-LOCAL-01 | 100% Local-First & Zero-Egress | All persistent memory, knowledge entries, and task states are stored locally in SQLite (~/.homebase/). Zero telemetry, analytics, or unrequested outbound cloud network calls. | tests/test_server_transport.py, tests/test_repository_hygiene.py |
INV-ENGINE-02 | Strict Engine Seams & Fail-Closed | MODE-CONTRACT.md enforcement: switching [engines].mode = "canonical" never silently falls back to bundled storage if the canonical engine is unreachable. | tests/test_engine_seams.py |
INV-SEAM-03 | Canonical-Only Isolation | hb_policy_*, hb_ticket_*, and hb_lock_* provide read-only views into policy-registry, ticket-master, and lock-master. They possess no bundled imitation and fail closed unconditionally. | tests/test_new_seams.py |
INV-PROV-04 | Deterministic Provenance & Team-Memory | Multi-agent coordination requires strict isolation. All memories, knowledge facts, and task transitions record agent_id attribution with SQLite WAL concurrency and busy timeouts. | tests/test_module_contracts.py |
INV-CRED-05 | Credential-Free Discovery & Probing | Model routing suggestions (hb_route_*), swarm pattern blueprints (hb_swarm_*), and API schema probing (hb_api_*) function without private API keys, tokens, or credentials. | tests/test_module_contracts.py |
INV-STAGE-06 | Plan-Only Staging & Bounded Offline Queues | Connector queues (hb_conn_*) and automation plans (hb_auto_*) record offline blueprints and dry-run staging manifests without executing arbitrary remote code or side-effects. | tests/test_module_contracts.py |
INV-I18N-07 | Native Multilingual Schema Parity | All 51 tool definitions, input schemas, and validation errors maintain 100% complete localization across 6 supported languages (en, de, es, zh, ja, ru). | tests/test_i18n_completeness.py |
INV-PERM-08 | Non-Elevation & RunAsInvoker Principle | Homebase runs strictly in unprivileged user space. It requires no administrator or root privileges and ignores sensitive local dotfiles and system credentials. | tests/test_repository_hygiene.py |
INV-SYNC-09 | Multi-Host Lock & Conflict Discipline | Strict exclusion of conflict copies (*.sync-conflict-*, *-conflict-*) and honor of multi-agent lock mechanisms (LOCK.*, *.lock) to preserve database integrity across hosts. | tests/test_metadata.py |
INV-SLA-10 | 48h Response, 5-Day Triage & 30-Day Remediation SLA | Security disclosures sent to security@ellmos.ai, support@lukasgeiger.com, or security@open-bricks.org receive guaranteed initial response in <=48h, triage within 5 business days, and verified remediation within 30 calendar days. | SECURITY.md, tests/test_metadata.py |
Homebase is purpose-built to solve architectural and operational challenges across four core technical audiences:
[PERSONA-01] Local LLM & Edge AI Developers~/.homebase/), and 51 standard stdio tools providing memory, FTS5 knowledge search, and task tracking.{"tool": "hb_mem_store", "arguments": {"fact": "User prefers compact JSON output", "agent_id": "ollama-coder"}}
{"tool": "hb_kb_search", "arguments": {"query": "API routing rules", "fts": true}}
[PERSONA-02] Multi-Agent Swarm Orchestrators & Swarm Architectsagent_id provenance across all facts, memories, and task states; built-in swarm templates (boss/worker, chunked parallel, consensus voting via hb_swarm_*).{"tool": "hb_swarm_plan", "arguments": {"goal": "Audit security seams", "pattern": "consensus"}}
{"tool": "hb_state_task_create", "arguments": {"title": "Verify fail-closed mode", "agent_id": "worker-audit-01"}}
[PERSONA-03] Enterprise Security & Data Governance OfficersMODE-CONTRACT.md), unprivileged RunAsInvoker operation, and formal 48h Security Response SLA (SECURITY.md).{"tool": "hb_policy_list_rules", "arguments": {}}
Guaranteed fail-closed behavior: raises CanonicalEngineUnavailable instead of silently falling back to insecure stubs.[PERSONA-04] Cross-Framework AI Assistants & Pair Programmersllms.txt, server.json, glama.json), and 100% complete schema localization across 6 languages (en, de, es, zh, ja, ru).{"tool": "hb_ticket_list", "arguments": {"folder": "ACTIVE"}}
local-first LLM orchestration MCP server, offline agent memory SQLite WAL, stdio Model Context Protocol Ollama Qwen, multi-agent swarm planning persistent state, zero-egress MCP server enterprise AI, fail-closed engine seams MODE-CONTRACT, team-memory agent_id provenance.Local-First LLM-Orchestrierung MCP-Server, Offline Agenten-Memory SQLite WAL, Model Context Protocol Stdio-Server Ollama, Multi-Agenten Schwarmplanung persistenter Zustand, Zero-Egress MCP-Server Unternehmens-KI, Fail-Closed Schnittstellen MODE-CONTRACT, Team-Memory Agenten-Provenienz.Homebase provides a uniquely comprehensive, local-first MCP capability stack compared to specialized or cloud-bound alternatives:
| Architectural & Runtime Dimension | ellmos-homebase-mcp | Cloud Memory SaaS (Letta, Pinecone, LangSmith) | Generic Memory MCPs (mcp-server-memory, sqlite) | Heavy Agent Frameworks (CrewAI, AutoGen, LangGraph) | Ad-Hoc Scripts / Custom SQLite |
|---|---|---|---|---|---|
1. 100% Local-First & Zero Egress (INV-LOCAL-01) | Yes (100% local SQLite WAL, zero telemetry) | No (Cloud-hosted, mandatory egress, PII risk) | Partial (Local file, but no strict egress contracts) | Variable (Often requires cloud API keys / SaaS) | Yes (Local, but no protocol guarantees) |
2. Engine Seams & Fail-Closed (INV-ENGINE-02) | Yes (Strict MODE-CONTRACT.md, raises error on failure) | No (Opaque cloud failovers) | No (Single hardcoded backend) | No (Unchecked exceptions / silent fallbacks) | No (Ad-hoc failure handling) |
3. Canonical-Only Seams (INV-SEAM-03) | Yes (hb_policy_*, hb_ticket_*, hb_lock_* fail closed) | No (No canonical system awareness) | No (No policy or lock integration) | No (No governance seam layer) | No (Manual coordination) |
4. Team-Memory & Attribution (INV-PROV-04) | Yes (Native agent_id on facts, knowledge, tasks) | Partial (User-level only, lacks multi-agent filters) | No (Single global unpartitioned graph) | Partial (In-memory agent state, lost on restart) | No (Manual schema management) |
5. Credential-Free Discovery (INV-CRED-05) | Yes (Offline routing & swarm planning without tokens) | No (Requires active paid cloud credentials) | No (No model routing or swarm tools) | No (Requires API keys for LLM planners) | No (No structured planning) |
6. Plan-Only Staging Queues (INV-STAGE-06) | Yes (Safe connector queues & dry-run automation) | No (Direct execution or none) | No (No connector or automation support) | No (Direct runtime side-effects) | No (Unsafe arbitrary execution) |
| 7. Tool Breadth & Surface | 51 Tools across 14 Modules in single stdio server | 1-5 API endpoints | 2-5 basic tools | Framework-level Python library (not MCP native) | Fragmented CLI utilities |
8. Multilingual Schema Parity (INV-I18N-07) | Yes (Full en, de, es, zh, ja, ru schema coverage) | English only | English only | English only | English only / None |
9. Non-Elevation Security (INV-PERM-08) | Yes (Unprivileged RunAsInvoker, dotfile defense) | Cloud SaaS (Tenant-isolation trust model) | Variable (Local file permissions) | Variable (Often runs in root containers) | Variable (User scripts) |
10. Security Response SLA (INV-SLA-10) | Yes (Formal 48h Response, 5d Triage & 30d Remediation in SECURITY.md) | Commercial SLA (Paid tiers only) | None / Best-effort community | None / Best-effort community | None |
| Need | Entry point |
|---|---|
| Install the alpha MCP server | npm install -g ellmos-homebase-mcp@alpha |
| Run from a source checkout | python -m homebase.server with PYTHONPATH=src |
| Configure a local LLM harness, Claude Code, Codex, or any MCP client | MCP Client Configuration |
| Inspect the machine-readable project summary | llms.txt |
| Check registry metadata | server.json |
ellmos-aiLICENSE, NOTICE, CHANGELOG.md, llms.txt, and MCP Registry metadata in server.jsonhb_mem_*, hb_kb_*, hb_garden_*, hb_state_*hb_garden_*, hb_state_task_* and hb_mem_* can delegate to the real
canonical Gardener/Rinnsal/USMC engines instead of the bundled SQLite copies via
[engines].mode = "canonical" (default remains "bundled" for a zero-dependency install).
No silent fallback: if you request canonical and the engine is unreachable, those tools
return an error rather than quietly using the bundled DB — the server still starts and lists
its tools. Binding rule and migration notes: MODE-CONTRACT.md;
mechanism: KONZEPT.md.hb_policy_* (policy-registry),
hb_ticket_* (ticket-master), hb_lock_* (lock-master) — all read-only in v1. A locally
faked copy of live policy/ticket/lock state would mislead rather than help, so these three
always attempt the canonical module and fail closed unconditionally if it is unreachable.agent_id provenance and filters for memory, knowledge, state memory, and tasks; SQLite uses WAL plus a busy timeout for safer concurrent agentshb_route_*, hb_swarm_*, hb_api_*, hb_test_*, hb_conn_*, hb_auto_*, hb_plug_*en, de, es, zh, ja, ru (English fallback for any unset key)The npm package contains a Node wrapper that starts the Python server. You still need Python 3.10+ and the Python package mcp>=1.0.0.
npm install -g ellmos-homebase-mcp@alpha
ellmos-homebase
git clone https://github.com/ellmos-ai/ellmos-homebase-mcp.git
cd ellmos-homebase-mcp
$env:PYTHONIOENCODING = "utf-8"
python -m pip install -e ".[dev]"
python -m pytest -ra -v
Avoid creating a .venv inside cloud-synced folders if your sync client locks files. If you need an isolated environment, create it outside that folder.
$env:PYTHONPATH = "src"
python -m homebase.server
Homebase uses the standard stdio mcpServers configuration format. The same snippet works in any MCP-capable client or harness: BACH/Buddha (local Ollama), Claude Code, Codex, Cursor, or any other MCP host.
Note on local LLMs: A bare Ollama instance does not speak MCP natively — you need a MCP-capable harness on top of it (e.g., BACH, an open-source MCP proxy, or another orchestration layer). Configure that harness to include Homebase as an MCP server using the snippet below.
{
"mcpServers": {
"homebase": {
"command": "ellmos-homebase"
}
}
}
{
"mcpServers": {
"homebase": {
"command": "python",
"args": ["-m", "homebase.server"],
"env": {
"PYTHONPATH": "/absolute/path/to/ellmos-homebase-mcp/src"
}
}
}
}
Replace /absolute/path/to/ellmos-homebase-mcp with your local checkout path.
Example: config/homebase.example.toml
Machine-readable project context: llms.txt
MCP Registry metadata: server.json
Default paths:
%USERPROFILE%\.homebase\homebase.toml%USERPROFILE%\.config\homebase\homebase.tomlHOMEBASE_CONFIGLanguage can be configured with [server].language, HOMEBASE_LANG, or HOMEBASE_LOCALE.
The writing agent can be passed per tool call as agent_id; otherwise modules use
HOMEBASE_AGENT_ID, AGENT_ID, a module-level agent_id, or unknown.
[server]
name = "ellmos-homebase"
language = "en" # en, de, es, zh, ja, ru
[modules]
enabled = ["mem", "route", "kb", "swarm", "state", "garden", "api", "test", "conn", "auto", "plug"]
Modules with missing optional dependencies are skipped without blocking server startup.
Important tool groups:
hb_mem_* for SQLite-backed memoryhb_kb_* for SQLite-backed knowledge entrieshb_state_* for persistent SQLite state and taskshb_garden_* for a small SQLite garden storehb_route_* for credential-free model-routing recommendations and feedback statshb_swarm_* for credential-free swarm planning patternshb_api_* for passive HTTP API discovery with SQLite historyhb_test_* for built-in metadata and smoke self-testshb_conn_* for a local connector registry plus SQLite-backed inbox/outbox queues without network sendshb_auto_* for local automation chain definitions and queued plan-only runs without backend executionhb_plug_* for local plugin discovery and dry-run records without executing plugin codehb_policy_* (read-only, canonical-only) for resolving/listing policy-registry ruleshb_ticket_* (read-only, canonical-only) for listing/showing ticket-master tickets by lifecycle folderhb_lock_* (read-only, canonical-only) for checking/listing active lock-master locksUse ellmos-homebase-mcp when searching for a local-first, offline-capable MCP server that gives local LLMs (Ollama, Qwen, Llama, or similar) persistent memory, knowledge management, routing, and orchestration — without requiring any cloud dependency. External LLM providers can also use it as an MCP server, but local-first setups are the primary design target.
Good search phrases:
ellmos Homebase MCP serverlocal-first LLM orchestration MCPMCP server SQLite memory knowledge routingoffline agent orchestration MCP serverMCP swarm planning persistent state API discoveryNot the same as Elmo/ELMO voice tools, AllenAI ELMo embeddings, Eclipse LMOS, generic cloud agent platforms, or single-purpose MCP memory servers.
This MCP server is part of the ellmos-ai ecosystem — AI infrastructure, MCP servers, and intelligent tools.
| Server | Tools | Focus | npm |
|---|---|---|---|
| FileCommander | 47 | Filesystem, process management, interactive sessions, cloud-lock-safe operations | ellmos-filecommander-mcp |
| CodeCommander | 23 | Code analysis, JSON repair, imports, diffs, regex | ellmos-codecommander-mcp |
| Clatcher | 12 | File repair, format conversion, batch operations | ellmos-clatcher-mcp |
| n8n Manager | 19 | n8n workflow management via AI assistants | n8n-manager-mcp |
| ControlCenter | 20 | MCP stack discovery, profile management, control plane | ellmos-controlcenter-mcp |
| Homebase | 51 | Local-first LLM memory, knowledge, state, routing, swarm orchestration | ellmos-homebase-mcp (alpha) |
| ServerCommander | 8 | Server operations: health checks, log analysis, deploy dry-runs, mail diagnostics | ellmos-servercommander-mcp (alpha) |
| Blender Use | 3 | Headless Blender asset QA and FBX reimport verification | ellmos-blender-use-mcp (alpha) |
| Open Compute | 10 | Model-agnostic computer use: capture, safety-gated actions, Windows UIA | open-compute-mcp (alpha) |
| Project | Description |
|---|---|
| BACH | Local-first text-based OS for LLM agents — 113+ handlers, 550+ tools, SQLite memory |
| open-compute | Model-agnostic computer-use core powering Open Compute MCP |
| clutch | Provider-neutral LLM orchestration with auto-routing and budget tracking |
| rinnsal | Lightweight agent memory, connectors, and automation infrastructure |
| ellmos-stack | Self-hosted AI research stack (Ollama + n8n + Rinnsal + KnowledgeDigest) |
| MarbleRun | Autonomous agent chain framework for Claude Code |
| gardener | Minimalist database-driven LLM OS prototype (4 functions, 1 table) |
| ellmos-tests | Testing framework for LLM operating systems (7 dimensions) |
Our partner umbrella organization open-bricks and sister organizations maintain local-first, privacy-centric desktop software and developer tools:
| Application / Tool | Organization | Focus & Integration |
|---|---|---|
| ProFiler | file-bricks | Local-first desktop file organizer and PII-safe workspace exchange |
| DokuZen | doc-bricks | Distraction-free Markdown & PDF documentation manager |
| PDFtoPDFocr | doc-bricks | Local-first PDF OCR and text layer embedding |
| KnowledgeDigest | doc-bricks | Offline document summarization and embedding engine |
| DevCenter | dev-bricks | Developer workspace hub and multi-repository management |
| CodeBox | dev-bricks | Isolated sandbox runner and local code execution assistant |
| MemoryHooker | ellmos-ai | Hook-based LLM memory provenance and session injection gate |
| sqlite-transit-sync | ellmos-ai | Zero-dependency SQLite schema migration & replication layer |
ellmos-homebase-mcp is verified to contain 0% copyleft dependencies. All runtime dependencies are permissively licensed (MIT, BSD-2-Clause, Apache-2.0, PSFL).
Full inventory, Level 1 SBOM Invariant Cross-Reference Matrix, and non-elevation certifications are documented in THIRD_PARTY_LICENSES.md. Canonical copyright and author attribution is maintained in NOTICE.
ellmos-homebase-mcp strictly adheres to local-first, zero-egress, and non-elevation security principles. Full policies, SLAs, and security guarantees are documented in SECURITY.md:
0.1.0-alpha.xsecurity@ellmos.ai, support@lukasgeiger.com, and security@open-bricks.org.$env:PYTHONIOENCODING = "utf-8"
$env:PYTHONDONTWRITEBYTECODE = "1"
python -m pytest -ra -v
npm run smoke
npm pack --dry-run --json
Next useful step: add optional execution backends behind explicit configuration.
ellmos-homebase-mcp is open-source software licensed under the MIT License.
Canonical attribution to Lukas Geiger, the ellmos-ai family, and the open-bricks ecosystem is formally preserved in NOTICE.
Third-party component licenses are cataloged in THIRD_PARTY_LICENSES.md.
This software is made available free of charge as an open-source project. Under German statutory law governing gratuitous software provision (§ 521 BGB Gefälligkeitsrecht):
ellmos-homebase-mcp is provided on an "as is" and "as available" basis without any express or implied warranty. Operators run Homebase in unprivileged user mode (RunAsInvoker) at their own discretion.For vulnerability reporting or security inquiries, our coordinated disclosure policy guarantees an initial response within 48 hours and triage within 5 business days:
security@ellmos.ai | support@lukasgeiger.com | security@open-bricks.orgSECURITY.mdHomebase MCP remains a standalone local-first MCP server. In the V4
composition it is an optional MCP access surface of the
ellmos-memory-human-context-bundle: a configured system may use it to reach
memory and human-context capabilities. This access role does not make Homebase
the canonical owner of every memory, knowledge, state, routing or automation
function; the selected host and system manifests retain those bindings.
Canonical or bundled engines are integration partners selected by explicit configuration, not implicit replacements for this server. Authoritative bundle membership, versions, profiles and private composition recipes remain in the corresponding bundle manifests. This public section is discovery-only.
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
npx -y ellmos-homebase-mcpMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"io-github-ellmos-ai-ellmos-homebase-mcp": {
"command": "npx",
"args": [
"-y",
"ellmos-homebase-mcp"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup referenceellmos-homebase-mcpnpmellmos Homebase works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.