MCP Server
Atomic exposes an MCP server so AI agents can search, read, create, and update atoms. You can use it locally through the desktop app bridge or remotely through the self-hosted HTTP endpoint.
Tools
Atomic exposes four MCP tools:
| Tool | What It Does |
|---|---|
semantic_search |
Hybrid keyword + semantic search over atoms, with optional since_days recency filtering |
read_atom |
Read full atom content by ID, with line-based pagination |
create_atom |
Store new markdown memory as an atom |
update_atom |
Replace an existing atom’s markdown content |
The server instructions tell agents to search before answering from memory, remember durable context, and update stale atoms instead of duplicating them.
Desktop App: Local Bridge
The desktop app bundles atomic-mcp-bridge, a stdio-to-HTTP bridge. It reads the local sidecar connection automatically, so you do not need to create or paste a token.
Open Settings > Integrations > MCP Integration in the desktop app for the exact bridge path.
Example for Claude Code, Claude Desktop, or any stdio MCP client:
{
"mcpServers": {
"atomic": {
"command": "/Applications/Atomic.app/Contents/MacOS/atomic-mcp-bridge"
}
}
}
On Windows the binary name is atomic-mcp-bridge.exe. On Linux the path depends on the installed package layout.
Remote or Self-Hosted: Streamable HTTP
For self-hosted servers, connect to:
https://your-server.example/mcp
Use a Bearer token:
{
"mcpServers": {
"atomic": {
"url": "https://your-server.example/mcp",
"headers": {
"Authorization": "Bearer YOUR_TOKEN"
}
}
}
}
Some clients use "type": "url" for HTTP MCP servers. If your client requires it, add that field to the atomic object.
Create a Token
From the UI, create a dedicated token in Settings or the onboarding integration step.
From the CLI:
atomic-server --data-dir ./data token create --name "claude"
Save the raw token immediately. It is shown only once.
Multi-Database
To target a specific database, add the db query parameter:
https://your-server.example/mcp?db=<database-id>
Without db, MCP tools use the active database.
OAuth and Public URL
Remote MCP OAuth discovery depends on PUBLIC_URL / --public-url. If this is not set, OAuth discovery endpoints return 404.
For self-hosted deployments:
PUBLIC_URL=https://atomic.example.com docker compose up -d
Your reverse proxy must pass:
/mcp/.well-known/oauth-authorization-server/.well-known/oauth-protected-resource/oauth/register/oauth/authorize/oauth/token
Suggested Agent Prompt
Add guidance like this to your project instructions:
You have access to Atomic, your long-term memory. Search Atomic before answering
questions that may relate to past context. Store durable preferences, decisions,
project context, and important facts. Update stale atoms instead of creating
duplicates.
Troubleshooting
- Desktop bridge cannot connect - open Atomic first; the sidecar runs while the desktop app is running.
- HTTP MCP returns 401 - create a new token and update your MCP client config.
- Remote OAuth discovery fails - set
PUBLIC_URLand verify the.well-knownroutes through your proxy. - Agent cannot find expected memory - check that it is using the intended database.