BZ

bu5hm4nn/zoho-bookkeeper-mcp

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

1 stars 5 forks 质量 68 趋势 5MIT

A Model Context Protocol (MCP) server for Zoho Books integration, designed for bookkeeping workflows with AI agents.

概览

A Model Context Protocol (MCP) server for Zoho Books integration, designed for bookkeeping workflows with AI agents. The official Zoho MCP service (zohomcp.com) has limitations: - - The MCP schema incorrectly maps binary file parameters as query strings - - 100+ tools exhaust AI tool limits quickly - - The mcp.zoho.com interface is troublesome and cannot be used by agents - Proper multipart/form-data file uploads for attachments - Curated set of 49 tools for bookkeeping workflows - Auto-refreshing OAuth tokens (1-hour lifetime with 5-minute buffer) - Both stdio (CLI) and HTTP stream transports - for journals, expenses, bills, and invoices - with proper multipart upload support (PDF, images, Office documents) - management and transaction queries - integration and transaction listing - for customers and vendors - with automatic token refresh - for container orchestration - Node.js 20+ - Zoho Books account with API access - Zoho OAuth 2.

README

以下为原文 README 节选,完整内容请查看原文。

Zoho Bookkeeper MCP Server

A Model Context Protocol (MCP) server for Zoho Books integration, designed for bookkeeping workflows with AI agents.

Why This Exists

The official Zoho MCP service (zohomcp.com) has limitations:

  • Cannot upload file attachments - The MCP schema incorrectly maps binary file parameters as query strings
  • Too many tools - 100+ tools exhaust AI tool limits quickly
  • Difficult control over tool selection - The mcp.zoho.com interface is troublesome and cannot be used by agents

This custom MCP server provides:

  • Proper multipart/form-data file uploads for attachments
  • Curated set of 49 tools for bookkeeping workflows
  • Auto-refreshing OAuth tokens (1-hour lifetime with 5-minute buffer)
  • Both stdio (CLI) and HTTP stream transports

Features

  • Full CRUD operations for journals, expenses, bills, and invoices
  • File attachments with proper multipart upload support (PDF, images, Office documents)
  • Chart of accounts management and transaction queries
  • Bank account integration and transaction listing
  • Contact management for customers and vendors
  • OAuth 2.0 with automatic token refresh
  • Health checks for container orchestration

Available Tools (49 total)

Category Tools Description
Organizations 2 List orgs, get org details
Chart of Accounts 4 List/get/create accounts, list transactions
Journals 9 Full CRUD + publish + attachments
Expenses 6 Full CRUD + receipt attachments
Bills 6 Full CRUD + attachments
Invoices 5 List/get + attachments
Contacts 2 List/get customers and vendors
Vendors 4 Vendor-specific list/get/create/update workflows
Bank Accounts 11 List accounts/transactions + matching + categorization workflows

Prerequisites

  • Node.js 20+
  • Zoho Books account with API access
  • Zoho OAuth 2.0 credentials (see Configuration)

Installation

npx zoho-bookkeeper-mcp

Option 2: Install globally

npm install -g zoho-bookkeeper-mcp
zoho-bookkeeper-mcp

Option 3: Docker

docker build -t zoho-bookkeeper-mcp .
docker run -p 8004:8004 \
  -e ZOHO_CLIENT_ID=your_client_id \
  -e ZOHO_CLIENT_SECRET=your_client_secret \
  -e ZOHO_REFRESH_TOKEN=your_refresh_token \
  zoho-bookkeeper-mcp

Option 4: From source

git clone https://github.com/bu5hm4nn/zoho-bookkeeper-mcp.git
cd zoho-bookkeeper-mcp
pnpm install
pnpm build

Configuration

Run the interactive setup:

pnpm setup

This will guide you through:

  1. Creating a Zoho Self-Client application
  2. Entering your Client ID and Secret
  3. Generating and exchanging an authorization code
  4. Saving credentials to .env

Manual Configuration

在 GitHub 查看完整 README

安装

npx zoho-bookkeeper-mcp
新手?先看 mcpskill.org 教程 →

配置

{ "mcpServers": { "zoho-bookkeeper": { "command": "npx", "args": ["zoho-bookkeeper-mcp"], "env": { "ZOHO_CLIENT_ID": "your_client_id", "ZOHO_CLIENT_SECRET": "your_client_secret", "ZOHO_REFRESH_TOKEN": "your_refresh_token" } } } }