CCXT
Official CCXT MCP server - Market data and trading across 100+ exchanges and prediction markets
Actual Budget, carefully: deletes preview first, and new transactions check for duplicates.
Elige la app de IA que usas y copia la configuración.
Pasó 3/3 revisiones · Funciona en tu computadora · ✓ Comandos revisados el 14 nov 2026
Primero: ¿qué IA usas?
Elige tu app y los pasos aparecen abajo.
Funciona con Claude, pero hay que preparar algo antes
Necesitas una clave de Actual Budget (créala en el sitio del autor) · 2 ajuste(s) que rellenar (ACTUAL_SERVER_URL, ACTUAL_BUDGET_ID) · Instala Node.js en tu computadora primero (una sola vez) · Solo en la app de Claude para computadora (Windows o Mac), no en la web ni en el móvil
Una sola vez; sirve para todos los servidores que necesitan Node.js
Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Consulta precios y planes gratis en su sitio.
Son ajustes del programa, no claves. No hace falta registrarse; rellénalos como explica el autor.
ACTUAL_SERVER_URL URL of your Actual Budget server, for example http://localhost:5006ACTUAL_BUDGET_ID Your budget's Sync ID, found under Settings > Show advanced settingsLas descripciones siguen en el inglés original.
SettingsDeveloperEdit Config
{
"mcpServers": {
"actual-budget": {
"command": "npx",
"args": [
"-y",
"actual-budget-mcp"
],
"env": {
"ACTUAL_SERVER_URL": "your-value",
"ACTUAL_SESSION_TOKEN": "your-value",
"ACTUAL_BUDGET_ID": "your-value",
"ACTUAL_ENCRYPTION_PASSWORD": "your-value",
"ACTUAL_ENCRYPTION_PASSWORDS": "your-value",
"ACTUAL_HTTP_TOKEN": "your-value",
"ACTUAL_HTTP_WRITE_TOKEN": "your-value"
}
}
}
}Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie
Usa Actual Budget y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si Claude dice que está usando Actual Budget o muestra una herramienta de Actual Budget en la respuesta, ya está conectado
El comando de arriba funciona sin estos valores. Añádelos solo si quieres cambiar algo, según la descripción del autor.
ACTUAL_PASSWORD Password for your Actual Budget server. Not needed if you set ACTUAL_SESSION_TOKENACTUAL_BUDGET_IDS Every budget this server serves, comma separated, when it is more than one. Each tool then takes a budget_id, and each budget is opened in a process of its ownACTUAL_BUDGET_WORKERS How many budgets stay open at once. Defaults to 3. A fourth budget closes the one that went longest without a callACTUAL_WORKER_IDLE_MINUTES How long an open budget with nothing to do stays open. Defaults to 15ACTUAL_WORKER_READY_SECONDS How long a call waits for a budget that is still opening before it answers that it is still opening. Defaults to 45ACTUAL_READ_ONLY Set to 1 to hide every write tool from the model, exposing only reads and analysisACTUAL_TOOLSET Set to chat to offer the 18 everyday tools instead of all 44, which is 17.4 KiB of tool descriptions instead of 39.7 KiB on every connection. Defaults to fullACTUAL_DATA_DIR Directory for the local budget cacheACTUAL_HTTP_TIMEOUT_MS How long to wait for your server to start replying, in milliseconds. Defaults to 60000; raise it if a GoCardless bank sync is being cut offACTUAL_HTTP_PORT Serve MCP over HTTP on this port instead of stdio. Only for a server you run yourself and point clients at: a client that starts this package itself speaks stdio and cannot reach it once this is setACTUAL_HTTP_HOST What to bind to. Defaults to 127.0.0.1; inside a container that is unreachable, so 0.0.0.0 together with ACTUAL_HTTP_ALLOW_REMOTEACTUAL_HTTP_ALLOW_REMOTE Set to 1 to bind somewhere other than loopback. Nothing here terminates TLS, so put something in front of it that doesACTUAL_HTTP_ALLOWED_HOSTS Hostnames to accept in the Host header, comma separated and without ports, for a server that is not on loopback. Anything else is answered 403Las descripciones siguen en el inglés original.
Nombres de menú comprobados con la ayuda de Anthropic el 11 nov 2026 · tu pantalla puede variar un poco según la versión
ChatGPT todavía no puede conectar Actual Budget
Actual Budget se instala en tu computadora, pero ChatGPT solo conecta servidores que funcionan en la web
A · Usa una app que pueda conectar Actual Budget
B · Otros en Contabilidad, finanzas e impuestos que funcionan con ChatGPT
Elegidos entre los más usados de la misma categoría, solo los que se conectan con una dirección y sin clave
Funciona con Claude Code, pero hay que preparar algo antes
Necesitas una clave de Actual Budget (créala en el sitio del autor) · 2 ajuste(s) que rellenar (ACTUAL_SERVER_URL, ACTUAL_BUDGET_ID) · Instala Node.js en tu computadora primero (una sola vez)
Una sola vez; sirve para todos los servidores que necesitan Node.js
Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Consulta precios y planes gratis en su sitio.
Son ajustes del programa, no claves. No hace falta registrarse; rellénalos como explica el autor.
ACTUAL_SERVER_URL URL of your Actual Budget server, for example http://localhost:5006ACTUAL_BUDGET_ID Your budget's Sync ID, found under Settings > Show advanced settingsLas descripciones siguen en el inglés original.
Mac: pulsa Command+Espacio y escribe Terminal · Windows: abre PowerShell
claude mcp add --scope user actual-budget --env ACTUAL_SERVER_URL=your-value --env ACTUAL_SESSION_TOKEN=your-value --env ACTUAL_BUDGET_ID=your-value --env ACTUAL_ENCRYPTION_PASSWORD=your-value --env ACTUAL_ENCRYPTION_PASSWORDS=your-value --env ACTUAL_HTTP_TOKEN=your-value --env ACTUAL_HTTP_WRITE_TOKEN=your-value -- npx -y actual-budget-mcpCambia “your-value” por tu clave antes de pulsar Enter
Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie
Deberías ver Actual Budget en la lista como conectado
Usa Actual Budget y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si Claude Code dice que está usando Actual Budget o muestra una herramienta de Actual Budget en la respuesta, ya está conectado
El comando de arriba funciona sin estos valores. Añádelos solo si quieres cambiar algo, según la descripción del autor.
ACTUAL_PASSWORD Password for your Actual Budget server. Not needed if you set ACTUAL_SESSION_TOKENACTUAL_BUDGET_IDS Every budget this server serves, comma separated, when it is more than one. Each tool then takes a budget_id, and each budget is opened in a process of its ownACTUAL_BUDGET_WORKERS How many budgets stay open at once. Defaults to 3. A fourth budget closes the one that went longest without a callACTUAL_WORKER_IDLE_MINUTES How long an open budget with nothing to do stays open. Defaults to 15ACTUAL_WORKER_READY_SECONDS How long a call waits for a budget that is still opening before it answers that it is still opening. Defaults to 45ACTUAL_READ_ONLY Set to 1 to hide every write tool from the model, exposing only reads and analysisACTUAL_TOOLSET Set to chat to offer the 18 everyday tools instead of all 44, which is 17.4 KiB of tool descriptions instead of 39.7 KiB on every connection. Defaults to fullACTUAL_DATA_DIR Directory for the local budget cacheACTUAL_HTTP_TIMEOUT_MS How long to wait for your server to start replying, in milliseconds. Defaults to 60000; raise it if a GoCardless bank sync is being cut offACTUAL_HTTP_PORT Serve MCP over HTTP on this port instead of stdio. Only for a server you run yourself and point clients at: a client that starts this package itself speaks stdio and cannot reach it once this is setACTUAL_HTTP_HOST What to bind to. Defaults to 127.0.0.1; inside a container that is unreachable, so 0.0.0.0 together with ACTUAL_HTTP_ALLOW_REMOTEACTUAL_HTTP_ALLOW_REMOTE Set to 1 to bind somewhere other than loopback. Nothing here terminates TLS, so put something in front of it that doesACTUAL_HTTP_ALLOWED_HOSTS Hostnames to accept in the Host header, comma separated and without ports, for a server that is not on loopback. Anything else is answered 403Las descripciones siguen en el inglés original.
Nombres de menú comprobados con la ayuda de Anthropic el 11 nov 2026 · tu pantalla puede variar un poco según la versión
Funciona con Cursor, pero hay que preparar algo antes
Necesitas una clave de Actual Budget (créala en el sitio del autor) · 2 ajuste(s) que rellenar (ACTUAL_SERVER_URL, ACTUAL_BUDGET_ID) · Instala Node.js en tu computadora primero (una sola vez)
Una sola vez; sirve para todos los servidores que necesitan Node.js
Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Consulta precios y planes gratis en su sitio.
Son ajustes del programa, no claves. No hace falta registrarse; rellénalos como explica el autor.
ACTUAL_SERVER_URL URL of your Actual Budget server, for example http://localhost:5006ACTUAL_BUDGET_ID Your budget's Sync ID, found under Settings > Show advanced settingsLas descripciones siguen en el inglés original.
En la configuración de Actual Budget, ACTUAL_SESSION_TOKEN, ACTUAL_ENCRYPTION_PASSWORD, ACTUAL_ENCRYPTION_PASSWORDS, ACTUAL_HTTP_TOKEN, ACTUAL_HTTP_WRITE_TOKEN, ACTUAL_SERVER_URL, ACTUAL_BUDGET_ID está vacío; añade tu clave y guarda
Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie
Usa Actual Budget y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si Cursor dice que está usando Actual Budget o muestra una herramienta de Actual Budget en la respuesta, ya está conectado
El comando de arriba funciona sin estos valores. Añádelos solo si quieres cambiar algo, según la descripción del autor.
ACTUAL_PASSWORD Password for your Actual Budget server. Not needed if you set ACTUAL_SESSION_TOKENACTUAL_BUDGET_IDS Every budget this server serves, comma separated, when it is more than one. Each tool then takes a budget_id, and each budget is opened in a process of its ownACTUAL_BUDGET_WORKERS How many budgets stay open at once. Defaults to 3. A fourth budget closes the one that went longest without a callACTUAL_WORKER_IDLE_MINUTES How long an open budget with nothing to do stays open. Defaults to 15ACTUAL_WORKER_READY_SECONDS How long a call waits for a budget that is still opening before it answers that it is still opening. Defaults to 45ACTUAL_READ_ONLY Set to 1 to hide every write tool from the model, exposing only reads and analysisACTUAL_TOOLSET Set to chat to offer the 18 everyday tools instead of all 44, which is 17.4 KiB of tool descriptions instead of 39.7 KiB on every connection. Defaults to fullACTUAL_DATA_DIR Directory for the local budget cacheACTUAL_HTTP_TIMEOUT_MS How long to wait for your server to start replying, in milliseconds. Defaults to 60000; raise it if a GoCardless bank sync is being cut offACTUAL_HTTP_PORT Serve MCP over HTTP on this port instead of stdio. Only for a server you run yourself and point clients at: a client that starts this package itself speaks stdio and cannot reach it once this is setACTUAL_HTTP_HOST What to bind to. Defaults to 127.0.0.1; inside a container that is unreachable, so 0.0.0.0 together with ACTUAL_HTTP_ALLOW_REMOTEACTUAL_HTTP_ALLOW_REMOTE Set to 1 to bind somewhere other than loopback. Nothing here terminates TLS, so put something in front of it that doesACTUAL_HTTP_ALLOWED_HOSTS Hostnames to accept in the Host header, comma separated and without ports, for a server that is not on loopback. Anything else is answered 403Las descripciones siguen en el inglés original.
Nombres de menú comprobados con la ayuda de Cursor el 11 nov 2026 · tu pantalla puede variar un poco según la versión
Funciona con VS Code, pero hay que preparar algo antes
Necesitas una clave de Actual Budget (créala en el sitio del autor) · 2 ajuste(s) que rellenar (ACTUAL_SERVER_URL, ACTUAL_BUDGET_ID) · Instala Node.js en tu computadora primero (una sola vez)
Una sola vez; sirve para todos los servidores que necesitan Node.js
Abre el sitio del autor, crea una cuenta y una clave de API para el siguiente paso. Consulta precios y planes gratis en su sitio.
Son ajustes del programa, no claves. No hace falta registrarse; rellénalos como explica el autor.
ACTUAL_SERVER_URL URL of your Actual Budget server, for example http://localhost:5006ACTUAL_BUDGET_ID Your budget's Sync ID, found under Settings > Show advanced settingsLas descripciones siguen en el inglés original.
En la configuración de Actual Budget, ACTUAL_SESSION_TOKEN, ACTUAL_ENCRYPTION_PASSWORD, ACTUAL_ENCRYPTION_PASSWORDS, ACTUAL_HTTP_TOKEN, ACTUAL_HTTP_WRITE_TOKEN, ACTUAL_SERVER_URL, ACTUAL_BUDGET_ID está vacío; añade tu clave y guarda
Pega la clave solo en el campo de la app; nunca en un chat ni se la envíes a nadie
Usa Actual Budget y dime qué puedes hacer por mí; luego muéstrame una cosa✓ Si VS Code dice que está usando Actual Budget o muestra una herramienta de Actual Budget en la respuesta, ya está conectado
El comando de arriba funciona sin estos valores. Añádelos solo si quieres cambiar algo, según la descripción del autor.
ACTUAL_PASSWORD Password for your Actual Budget server. Not needed if you set ACTUAL_SESSION_TOKENACTUAL_BUDGET_IDS Every budget this server serves, comma separated, when it is more than one. Each tool then takes a budget_id, and each budget is opened in a process of its ownACTUAL_BUDGET_WORKERS How many budgets stay open at once. Defaults to 3. A fourth budget closes the one that went longest without a callACTUAL_WORKER_IDLE_MINUTES How long an open budget with nothing to do stays open. Defaults to 15ACTUAL_WORKER_READY_SECONDS How long a call waits for a budget that is still opening before it answers that it is still opening. Defaults to 45ACTUAL_READ_ONLY Set to 1 to hide every write tool from the model, exposing only reads and analysisACTUAL_TOOLSET Set to chat to offer the 18 everyday tools instead of all 44, which is 17.4 KiB of tool descriptions instead of 39.7 KiB on every connection. Defaults to fullACTUAL_DATA_DIR Directory for the local budget cacheACTUAL_HTTP_TIMEOUT_MS How long to wait for your server to start replying, in milliseconds. Defaults to 60000; raise it if a GoCardless bank sync is being cut offACTUAL_HTTP_PORT Serve MCP over HTTP on this port instead of stdio. Only for a server you run yourself and point clients at: a client that starts this package itself speaks stdio and cannot reach it once this is setACTUAL_HTTP_HOST What to bind to. Defaults to 127.0.0.1; inside a container that is unreachable, so 0.0.0.0 together with ACTUAL_HTTP_ALLOW_REMOTEACTUAL_HTTP_ALLOW_REMOTE Set to 1 to bind somewhere other than loopback. Nothing here terminates TLS, so put something in front of it that doesACTUAL_HTTP_ALLOWED_HOSTS Hostnames to accept in the Host header, comma separated and without ports, for a server that is not on loopback. Anything else is answered 403Las descripciones siguen en el inglés original.
Nombres de menú comprobados con la ayuda de VS Code el 11 nov 2026 · tu pantalla puede variar un poco según la versión
Otras apps que usan MCP, como Windsurf, Zed o Gemini CLI, añaden servidores de forma distinta. Míralo en la lista de apps
Ver todas las apps que usan MCP →
La configuración JSON está en “Para desarrolladores”, abajo
Claude Code
claude mcp add --scope user actual-budget --env ACTUAL_SERVER_URL=your-value --env ACTUAL_SESSION_TOKEN=your-value --env ACTUAL_BUDGET_ID=your-value --env ACTUAL_ENCRYPTION_PASSWORD=your-value --env ACTUAL_ENCRYPTION_PASSWORDS=your-value --env ACTUAL_HTTP_TOKEN=your-value --env ACTUAL_HTTP_WRITE_TOKEN=your-value -- npx -y actual-budget-mcpClaude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"actual-budget": {
"command": "npx",
"args": [
"-y",
"actual-budget-mcp"
],
"env": {
"ACTUAL_SERVER_URL": "your-value",
"ACTUAL_SESSION_TOKEN": "your-value",
"ACTUAL_BUDGET_ID": "your-value",
"ACTUAL_ENCRYPTION_PASSWORD": "your-value",
"ACTUAL_ENCRYPTION_PASSWORDS": "your-value",
"ACTUAL_HTTP_TOKEN": "your-value",
"ACTUAL_HTTP_WRITE_TOKEN": "your-value"
}
}
}
}Cursor (~/.cursor/mcp.json)
{
"mcpServers": {
"actual-budget": {
"command": "npx",
"args": [
"-y",
"actual-budget-mcp"
],
"env": {
"ACTUAL_SERVER_URL": "your-value",
"ACTUAL_SESSION_TOKEN": "your-value",
"ACTUAL_BUDGET_ID": "your-value",
"ACTUAL_ENCRYPTION_PASSWORD": "your-value",
"ACTUAL_ENCRYPTION_PASSWORDS": "your-value",
"ACTUAL_HTTP_TOKEN": "your-value",
"ACTUAL_HTTP_WRITE_TOKEN": "your-value"
}
}
}
}VS Code (mcp.json)
{
"servers": {
"actual-budget": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"actual-budget-mcp"
],
"env": {
"ACTUAL_SERVER_URL": "your-value",
"ACTUAL_SESSION_TOKEN": "your-value",
"ACTUAL_BUDGET_ID": "your-value",
"ACTUAL_ENCRYPTION_PASSWORD": "your-value",
"ACTUAL_ENCRYPTION_PASSWORDS": "your-value",
"ACTUAL_HTTP_TOKEN": "your-value",
"ACTUAL_HTTP_WRITE_TOKEN": "your-value"
}
}
}
}ACTUAL_SERVER_URL obligatorio envACTUAL_PASSWORD secreto envACTUAL_SESSION_TOKEN secreto obligatorio envACTUAL_BUDGET_ID obligatorio envACTUAL_ENCRYPTION_PASSWORD secreto obligatorio envACTUAL_BUDGET_IDS envACTUAL_ENCRYPTION_PASSWORDS secreto obligatorio envACTUAL_BUDGET_WORKERS envACTUAL_WORKER_IDLE_MINUTES envACTUAL_WORKER_READY_SECONDS envACTUAL_READ_ONLY envACTUAL_TOOLSET envACTUAL_DATA_DIR envACTUAL_HTTP_TIMEOUT_MS envACTUAL_HTTP_PORT envACTUAL_HTTP_TOKEN secreto obligatorio envACTUAL_HTTP_WRITE_TOKEN secreto obligatorio envACTUAL_HTTP_HOST envACTUAL_HTTP_ALLOW_REMOTE envACTUAL_HTTP_ALLOWED_HOSTS envLas descripciones siguen en el inglés original.
Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
npm: actual-budget-mcpoci: ghcr.io/henfrydls/actual-budget-mcp:0.12.0Según cómo se conecta este servidor y la documentación de cada app, comprobado el 10 nov 2026.
Se ejecutan en tu computadora en
ClaudeGooseLM StudioMsty StudioCherry StudioCursorVS Code + GitHub CopilotVisual StudioWindsurf (Devin Desktop)ZedKiroClineContinueJetBrains AI AssistantClaude CodeCodex CLIGemini CLIOpenCodenodecodeWarpLibreChatRaycast
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 14 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub henfrydls, dueña del repo
Último cambio de código: hace 3 días
Usa MIT
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Pregunta, comparte un consejo o avisa de que no funciona. Ordenado por lo que la gente marcó como útil.
Aún no hay publicaciones. Sé la primera persona en preguntar o compartir.
Lo publicado aquí lo escriben usuarios, no el equipo de PopNx.
Aún no hay reseñas
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 3 de 3 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
Debes completar: ACTUAL_SESSION_TOKEN, ACTUAL_ENCRYPTION_PASSWORD, ACTUAL_ENCRYPTION_PASSWORDS, ACTUAL_HTTP_TOKEN, ACTUAL_HTTP_WRITE_TOKEN
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez hace 3 días, y la última versión (0.12.0) llegó al registro hace 10 días.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Node.js, Docker en tu computadora.
En la misma categoría: CCXT, Finance Toolkit, AKQuant
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:↓ Descargas por semanai★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
Official CCXT MCP server - Market data and trading across 100+ exchanges and prediction markets
500+ transparent financial methods calculated from raw statements, not third-party endpoints.
Write and backtest trading strategies with AKQuant: API lookup, strategy checks, backtest runs
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
Talk to your budget. An MCP server that connects Actual Budget to Claude. Ask where the money went, get real analysis back, and let it write without holding your breath.
Listed in the official Actual Budget community projects.
ACTUAL_READ_ONLY=1 hides the write tools from the model entirely (Safety)repair_sync rebuilds the local sync state when @actual-app/api and your server disagree, the failure that otherwise leaves every tool erroringa1b2c3d4-..., with helpful suggestions if ambiguousYes. This is an MCP server, so it works with any client that speaks MCP, and the model behind that client is the client's business, not this server's. Claude Desktop, Claude Code, Cursor and VS Code are the ones documented below because they are the ones people ask about, but anything that can run an MCP client, including a local setup pointed at Ollama or LM Studio, talks to it the same way.
Your budget data goes to whatever model your client uses. If that matters to you, and for a lot of people running Actual it does, a local model keeps it on your machine.
No. ChatGPT's connectors only accept remote MCP servers: a public HTTPS endpoint speaking SSE or Streamable HTTP. With HTTP mode this server can be one. What we have read says their connectors sign in through OAuth or not at all and cannot send the fixed token header this version takes, and nobody here has tried it. OpenAI does offer a tunnel for local servers, but it is limited to enterprise plans.
Making it work would mean exposing your Actual server to the internet, which is the opposite of what most people running Actual want. Anything that can start a local MCP process works instead: Claude Desktop, Claude Code, Cursor, VS Code, Gemini CLI, or your own setup pointed at a local model.
If what you actually want is OpenAI's model, use Codex, which does run MCP servers locally over stdio. Option 6 is the one command it takes.
On Claude Desktop, the shortest path is the extension: no config file to edit and no command to run. Otherwise, copy this into Claude Code or Claude Desktop:
Install the actual-budget-mcp MCP server from npm (https://github.com/henfrydls/actual-budget-mcp).
Configure it with these credentials:
Claude will configure everything for you.
A packaged Desktop Extension is available: install it and Claude Desktop asks for your server URL, password and Sync ID in its own settings UI, with the password and session token stored in your operating system's keychain rather than a config file you have to edit.
[Download actual-budget-mcp.mcpb](https://github.com/henfrydls/actual-budget-mcp/releases/latest/download/actual-budget-mcp.mcpb), then open Claude Desktop, go to Settings > Extensions, and drag the file onto that screen.
On Windows, dragging is the way in: double-clicking the file opens Windows' "select an app to open this file" dialogue instead, because Claude Desktop does not register the .mcpb file type. Verified on a clean Windows 11 install with Claude Desktop 0.14.10.
The extension carries everything it needs, so the first question you ask is answered straight away rather than after an install you cannot see. It is a large download, once, with a progress bar.
You do not need Node.js installed for this route. Claude Desktop runs the extension on the Node it ships with. Checked by renaming Node out of the way on a Windows 11 machine and asking a question anyway: the server started and answered.
Earlier builds launched the package from npm instead. That made the download small and moved it to the first run, where nothing showed progress: Claude Desktop waited, decided the server was dead and said it could not connect, and the extension started working on its own a few minutes later. The bundle now includes Actual's SQLite binary for every platform it supports. They are N-API binaries, so one per platform serves every Node version, and nothing has to be chosen at startup.
Installing a new version over an old one keeps the settings you filled in, with one exception seen in practice: the saved server password was cleared when a field's title changed between versions. If Claude cannot connect after an update, open the extension's settings and check the password field before looking anywhere else.
claude mcp add actual-budget-mcp -e ACTUAL_SERVER_URL=http://localhost:5006 -e ACTUAL_PASSWORD=your-password -e ACTUAL_BUDGET_ID=your-budget-id -- npx -y actual-budget-mcp
Add this to your claude_desktop_config.json:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": { "actual-budget-mcp": { "command": "npx", "args": ["-y", "actual-budget-mcp"], "env": { "ACTUAL_SERVER_URL": "http://localhost:5006", "ACTUAL_PASSWORD": "your-password", "ACTUAL_BUDGET_ID": "your-budget-sync-id" } } } }
The button installs it with placeholder values. Open Cursor Settings > MCP afterwards and replace the three: your server URL, your password, and your budget's Sync ID. To do it all by hand instead, go to Cursor Settings > MCP > Add new MCP server and add:
{
"mcpServers": { "actual-budget-mcp": { "command": "npx", "args": ["-y", "actual-budget-mcp"], "env": { "ACTUAL_SERVER_URL": "http://localhost:5006", "ACTUAL_PASSWORD": "your-password", "ACTUAL_BUDGET_ID": "your-budget-sync-id" } } } }
Same as above: the button fills in placeholders, and you replace the three values afterwards. By hand, add this to your VS Code settings.json:
{
"mcp": { "servers": { "actual-budget-mcp": { "command": "npx", "args": ["-y", "actual-budget-mcp"], "env": { "ACTUAL_SERVER_URL": "http://localhost:5006", "ACTUAL_PASSWORD": "your-password", "ACTUAL_BUDGET_ID": "your-budget-sync-id" } } } } }
One command, and it writes the entry into ~/.codex/config.toml for you:
codex mcp add actual-budget-mcp \
--env ACTUAL_SERVER_URL=http://localhost:5006 \ --env ACTUAL_PASSWORD=your-password \ --env ACTUAL_BUDGET_ID=your-budget-sync-id \ -- npx -y actual-budget-mcp
Codex has no extension or bundle format, so this one-liner is the shortest route there is. codex mcp list shows it afterwards, and codex mcp remove actual-budget-mcp undoes it.
This is Codex the local agent, the CLI and the IDE extension. Codex in the browser runs on OpenAI's machines and cannot reach an Actual server on your network.
The image speaks stdio like every other option, so your client starts the container and owns its lifetime:
{
"mcpServers": { "actual-budget-mcp": { "command": "docker", "args": [ "run", "-i", "--rm", "--add-host=host.docker.internal:host-gateway", "-v", "actual-budget-mcp-data:/data", "-e", "ACTUAL_SERVER_URL", "-e", "ACTUAL_PASSWORD", "-e", "ACTUAL_BUDGET_ID", "ghcr.io/henfrydls/actual-budget-mcp:latest" ], "env": { "ACTUAL_SERVER_URL": "http://host.docker.internal:5006", "ACTUAL_PASSWORD": "your-password", "ACTUAL_BUDGET_ID": "your-budget-sync-id" } } } }
Two things that bite everyone once:
host.docker.internal (