ZenMoney MCP

ZenMoney MCP

Read-only MCP server for ZenMoney that syncs financial data into memory and exposes it through tools and resources, enabling agentic analysis of transactions and spending patterns.

Category
Visit Server

README

ZenMoney MCP

Read-only MCP server for ZenMoney. It syncs ZenMoney data into process memory and exposes it through MCP tools and resources. It does not persist financial data or API responses to disk.

Agentic Workflows

The read-only mode is a good fit for agentic workflows with tools such as Hermes and OpenClaw. Agents can analyze transactions in the way the user asks, compare spending patterns, prepare recurring personal-finance reports, and surface anomalies without being able to create, update, or delete ZenMoney data.

Unofficial Project

This is an unofficial project and is not affiliated with, endorsed by, or sponsored by ZenMoney. Users are responsible for complying with ZenMoney terms and for protecting their own access tokens.

MCP Client Config

Use the published CLI through npx and pass runtime configuration through your MCP client:

{
  "mcpServers": {
    "zenmoney": {
      "command": "npx",
      "args": ["-y", "@nonnname/zenmoney-mcp"],
      "env": {
        "ZENMONEY_ACCESS_TOKEN": "paste-token-here",
        "ZENMONEY_SYNC_ON_START": "true",
        "ZENMONEY_API_BASE_URL": "https://api.zenmoney.ru/v8",
        "ZENMONEY_DEFAULT_RESULT_LIMIT": "100",
        "ZENMONEY_MAX_RESULT_LIMIT": "500",
        "ZENMONEY_REQUEST_TIMEOUT_MS": "30000",
        "ZENMONEY_ENABLE_WRITE_TOOLS": "false"
      }
    }
  }
}

The same example is available in mcp-config.example.json.

Configuration

ZENMONEY_ACCESS_TOKEN=
ZENMONEY_SYNC_ON_START=true
ZENMONEY_API_BASE_URL=https://api.zenmoney.ru/v8
ZENMONEY_DEFAULT_RESULT_LIMIT=100
ZENMONEY_MAX_RESULT_LIMIT=500
ZENMONEY_REQUEST_TIMEOUT_MS=30000
ZENMONEY_ENABLE_WRITE_TOOLS=false

ZENMONEY_DEFAULT_RESULT_LIMIT and ZENMONEY_MAX_RESULT_LIMIT limit MCP responses from the in-memory snapshot. They do not limit ZenMoney API synchronization.

Local Development

npm install
cp .env.example .env
npm run dev

For a production-like local run from source:

npm run build
npm start

Tools

  • zenmoney_sync
  • zenmoney_cache_status
  • zenmoney_list_accounts
  • zenmoney_list_transactions
  • zenmoney_get_transaction
  • zenmoney_list_tags
  • zenmoney_list_merchants
  • zenmoney_list_budgets
  • zenmoney_suggest_transaction

Optional Write Tools

The server is read-only by default. Write tools are not registered unless you explicitly enable them at process startup.

Enable write tools with a launch argument:

{
  "mcpServers": {
    "zenmoney": {
      "command": "npx",
      "args": ["-y", "@nonnname/zenmoney-mcp", "--enable-write-tools"],
      "env": {
        "ZENMONEY_ACCESS_TOKEN": "paste-token-here"
      }
    }
  }
}

Or enable write tools with an environment variable:

{
  "env": {
    "ZENMONEY_ACCESS_TOKEN": "paste-token-here",
    "ZENMONEY_ENABLE_WRITE_TOOLS": "true"
  }
}

Write tools can create, update, and delete ZenMoney user entities except budgets. Update and delete tools require expectedChanged, which is the changed value returned by the read tools. If the entity changes remotely before the write, the server returns a conflict and does not send the mutation.

Budget writes are not supported.

Write tools registered only after opt-in:

  • zenmoney_create_transaction
  • zenmoney_update_transaction
  • zenmoney_delete_transaction
  • zenmoney_create_expense
  • zenmoney_create_income
  • zenmoney_create_transfer
  • zenmoney_create_account
  • zenmoney_update_account
  • zenmoney_delete_account
  • zenmoney_create_tag
  • zenmoney_update_tag
  • zenmoney_delete_tag
  • zenmoney_create_merchant
  • zenmoney_update_merchant
  • zenmoney_delete_merchant
  • zenmoney_create_reminder
  • zenmoney_update_reminder
  • zenmoney_delete_reminder
  • zenmoney_create_reminder_marker
  • zenmoney_update_reminder_marker
  • zenmoney_delete_reminder_marker

Resources

  • zenmoney://status
  • zenmoney://accounts
  • zenmoney://transactions
  • zenmoney://transactions/{id}
  • zenmoney://tags
  • zenmoney://merchants
  • zenmoney://budgets
  • zenmoney://schema/account
  • zenmoney://schema/transaction
  • zenmoney://schema/tag
  • zenmoney://schema/merchant
  • zenmoney://schema/budget

Verification

Mocked tests do not need a real ZenMoney token:

npm test
npm run build

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured