Connector guide12-minute read45 MCP tools7 languages

Connect Zoho Books to Microsoft Copilot via MCP

Let your AI work in Zoho Books: look up and manage customers, vendors and items, create, email, mark as sent and void invoices, create estimates, record customer payments, bills and expenses, and read the chart of accounts, account ledgers and bank transactions. Any Zoho data center, Zoho OAuth sign-in.

HCBy HelpCode teamUpdated 12 min read Open-source on GitHub

No credit card · 7-day trial · Self-host alternative available

Zoho Books

Zoho Books

Let your AI work in Zoho Books: look up and manage customers, vendors and items, create, email, mark as sent and void invoices, create estimates, record customer payments, bills and expenses, and read the chart of accounts, account ledgers and bank transactions. Any Zoho data center, Zoho OAuth sign-in.

tools

45

Region

INTL

Category

Accounting

Authentication

OAuth 2.0

Required env vars

ZOHO_BOOKS_CLIENT_IDZOHO_BOOKS_CLIENT_SECRETZOHO_BOOKS_ORGANIZATION_IDZOHO_BOOKS_ACCOUNTS_URLZOHO_BOOKS_API_URL
Install in one click on Cloud

7-day free trial · No credit card

  • 7-day free trial
    No credit card required
  • GDPR & SOC 2 ready
    EU data residency, audit logs
  • Open-source on GitHub
    Open source · AGPL-3.0
  • Works with ChatGPT, Claude, Gemini
    Any MCP-compatible client

Summary

Let your AI work in Zoho Books: look up and manage customers, vendors and items, create, email, mark as sent and void invoices, create estimates, record customer payments, bills and expenses, and read the chart of accounts, account ledgers and bank transactions. Any Zoho data center, Zoho OAuth sign-in.

Guided setup

Connect Zoho Books to Microsoft Copilot in 2 minutes

Start a free trial on AnythingMCP Cloud, connect Zoho Books in the guided setup, then add your MCP URL to Microsoft Copilot. No code and no server to run.

No credit card · 7-day trial · Self-host alternative available

Try asking

Example prompts for Zoho Books

Click any prompt to copy it. Paste into Claude, ChatGPT, Cursor, Gemini, Copilot or OpenClaw to run it against this connector.

Zoho Books · live via MCP
Share
Opus 4.7

Claude is AI and can make mistakes. Please double-check responses.

💡 No install? Use cloud.anythingmcp.com directly. Sign in, click Connectors → Zoho Books, paste your credentials, mint an MCP API key and you're done. No Docker, no git clone, no local server.

Zoho Books + Microsoft Copilot

Let your AI work in Zoho Books: look up and manage customers, vendors and items, create, email, mark as sent and void invoices, create estimates, record customer payments, bills and expenses, and read the chart of accounts, account ledgers and bank transactions. Any Zoho data center, Zoho OAuth sign-in.

Prerequisites

See the full setup instructions baked into the connector (visible in the in-app store when you select the connector). The required environment variables for this connector are:

ZOHO_BOOKS_CLIENT_ID, ZOHO_BOOKS_CLIENT_SECRET, ZOHO_BOOKS_ORGANIZATION_ID, ZOHO_BOOKS_ACCOUNTS_URL, ZOHO_BOOKS_API_URL

Step 1 — Get credentials

  1. Find your Zoho data center: it shows in the address bar when you use Zoho Books (for example books.zoho.eu or books.zoho.com). Set ZOHO_BOOKS_ACCOUNTS_URL and ZOHO_BOOKS_API_URL to that data center, without a trailing slash: https://accounts.zoho.eu and https://www.zohoapis.eu for the EU, https://accounts.zoho.com and https://www.zohoapis.com for the US. India, Australia, Japan, Saudi Arabia, the UAE and China follow the same pattern (.in, .com.au, .jp, .sa, .ae, .com.cn); Canada uses https://accounts.zohocloud.ca and https://www.zohoapis.ca.
  2. Open the Zoho API Console at api-console.zoho.com, signed in with your Zoho account, and choose Add Client → Server-based Applications.
  3. Give the client a name (for example AnythingMCP), your company site as homepage URL and https://cloud.anythingmcp.com/api/mcp-oauth/callback as Authorized Redirect URI. If you host AnythingMCP yourself, enter https://your-anythingmcp-host/api/mcp-oauth/callback instead. Create the client.
  4. On the Client Secret tab, copy the Client ID (it starts with 1000.) and the Client Secret into ZOHO_BOOKS_CLIENT_ID and ZOHO_BOOKS_CLIENT_SECRET. If your Books organization lives in another data center than the one the console opened in, enable that data center on the client's Settings tab (Multi-DC) and use the client secret shown there for it.
  5. Find the organization ID: in Zoho Books, click the organization name (top right) and open Manage Organizations; the ID is shown next to each organization. Paste the digits into ZOHO_BOOKS_ORGANIZATION_ID. One connector works with one organization; install it again for a second one.
  6. Install the connector, click Authorize with Provider on the connector page, sign in to Zoho and approve the requested access.
  7. Run zoho_books_list_organizations and check that your organization ID is listed, then zoho_books_get_organization to confirm the name and base currency before the AI reads or writes anything.

Staying signed in: access tokens last an hour and are renewed automatically with the stored refresh token, which does not expire unless it is revoked. Zoho keeps at most 20 refresh tokens per user and client: authorizing the same client a 21st time, in AnythingMCP or elsewhere, silently revokes the oldest one. If the connector loses its sign-in, click Authorize with Provider again.

Permissions and read-only setup: the connector asks for ZohoBooks.settings.ALL, ZohoBooks.contacts.ALL, ZohoBooks.invoices.ALL, ZohoBooks.estimates.ALL, ZohoBooks.customerpayments.ALL, ZohoBooks.bills.ALL, ZohoBooks.expenses.ALL, ZohoBooks.accountants.READ, ZohoBooks.banking.READ. Items, taxes and organization settings fall under ZohoBooks.settings, the chart of accounts under ZohoBooks.accountants. It works as the Zoho user who authorized it, within that user's role. For a read-only setup, change every .ALL to .READ in the connector's OAuth settings, authorize again and switch off zoho_books_create_contact, zoho_books_update_contact, zoho_books_mark_contact_inactive, zoho_books_create_item, zoho_books_update_item, zoho_books_mark_item_inactive, zoho_books_create_invoice, zoho_books_email_invoice, zoho_books_mark_invoice_sent, zoho_books_void_invoice, zoho_books_mark_invoice_draft, zoho_books_create_estimate, zoho_books_create_customer_payment, zoho_books_create_bill and zoho_books_create_expense.

Switched off at install: the delete tools zoho_books_delete_contact, zoho_books_delete_invoice, zoho_books_delete_estimate, zoho_books_delete_customer_payment, zoho_books_delete_bill and zoho_books_delete_expense. A deleted record cannot be restored, so turn one on only if the AI should really delete that kind of record.

Writes are real: zoho_books_email_invoice emails the customer from your organization, zoho_books_mark_invoice_sent and zoho_books_void_invoice change the books, and zoho_books_create_customer_payment, zoho_books_create_bill and zoho_books_create_expense post to the ledger. The AI says what it is about to book or send and waits for your yes. Recording a customer payment is bookkeeping only: no money is collected.

Invoices and corrections: a new invoice is a draft numbered by your organization's auto-numbering, and it is only emailed if you ask for it to go out at once. Zoho refuses to delete a sent invoice: void it with zoho_books_void_invoice instead. A void invoice stays on record, as bookkeeping rules such as Germany's GoBD expect, and zoho_books_mark_invoice_draft turns it back into an editable draft to correct and reissue.

Totals and balances: Zoho does not document a reports API for Books. For totals the AI reads balances from the chart of accounts, the bookings of one account with zoho_books_list_account_transactions, or lists filtered by date.

Limits: 100 requests per minute per organization and, per day, 1,000 on Free, 2,000 on Standard, 5,000 on Professional and 10,000 on Premium and above. Over a limit Zoho answers 429 (code 44 per minute, 45 per day): wait a minute, or until the next day.

Common errors: invalid_client at sign-in or an empty organization list means the two URLs are not your data center. 401 code 57 ("You are not authorized to perform this operation") or invalid_oauthtoken means the sign-in lacks a scope, was revoked, or ZOHO_BOOKS_API_URL is the wrong data center: check both URLs, then click Authorize with Provider again. 400 or 404 naming the organization means ZOHO_BOOKS_ORGANIZATION_ID is wrong or not visible to this user: compare it with zoho_books_list_organizations. Other 400 errors name the field (a duplicate name, an invalid value, a missing required field). Code 4529 means a sent invoice cannot be deleted: void it. Code 3000 when deleting a contact means invoices or payments still refer to it: use zoho_books_mark_contact_inactive.

The connector does not handle sales orders, purchase orders, credit notes, vendor payments, journals, projects, recurring invoices, attachments or PDFs.

Step 2 — Install the adapter

curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d

Step 3 — Add the connector in Microsoft Copilot

Your server URL: in AnythingMCP, open MCP Servers → the server this connector is on, and copy its URL (https://cloud.anythingmcp.com/mcp/…). Use it wherever this guide shows YOUR_SERVER_ID.

Microsoft Copilot uses MCP servers through agents built in Copilot Studio: you add AnythingMCP to an agent as a tool, then publish the agent to Microsoft 365 Copilot and Teams. Copilot Studio connects from Microsoft's cloud over Streamable HTTP, which AnythingMCP supports.

  1. In Copilot Studio, open your agent (or create one), go to Tools and choose Add a tool → New tool → Model Context Protocol.
  2. Enter a Server name (for example AnythingMCP), a Server description that says what the connector does, and the Server URL https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID. Copilot Studio uses the description to decide when to call the server.
  3. Under authentication, choose API key, set Type to Header and the header name to X-API-Key, then select Create.
  4. In Add tool, choose Create a new connection, paste an MCP API key from AnythingMCP (MCP Servers → your server → API keys) and select Add to agent.
  5. Try it in the agent's Test pane: ask for something that needs the Zoho Books tools.
  6. Select Publish, then Channels → Microsoft 365 and Microsoft Teams, keep Make agent available in Microsoft Copilot selected and choose Add channel. See agent in Teams installs it for you; in Microsoft 365 Copilot, type @ and pick the agent.

Prefer per-user sign-in? Choose OAuth 2.0 → Dynamic discovery instead of an API key: each user then signs in to AnythingMCP the first time the agent calls it.

Self-hosting? Use your instance's public HTTPS address instead of https://cloud.anythingmcp.com. Copilot Studio connects from Microsoft's cloud, so localhost does not work.

Available tools

ToolWhat it does
zoho_books_list_organizationsList the Zoho Books organizations this sign-in can reach: organization_id, name, country, currency, time zone and whether it is the default
zoho_books_get_organizationRead the connected organization: name, address, base currency, fiscal year start, time zone, tax settings and contact details
zoho_books_list_contactsList contacts (customers and vendors) with contact_id, name, company, email, status and outstanding receivables or payables
zoho_books_get_contactRead one contact with addresses, contact persons, payment terms, currency, balances and custom fields
zoho_books_create_contactCreate a customer or vendor
zoho_books_update_contactUpdate a contact
zoho_books_mark_contact_inactiveMark a contact inactive: it stays in the books but is hidden from lists and cannot be used on new transactions
zoho_books_delete_contactDelete a contact for good
zoho_books_list_itemsList items (products and services) with item_id, name, SKU, rate, unit, tax and status
zoho_books_get_itemRead one item with selling and purchase prices, accounts, tax, unit and stock details
zoho_books_create_itemCreate an item (product or service)
zoho_books_update_itemUpdate an item
zoho_books_mark_item_inactiveMark an item inactive so it can no longer be added to new documents
zoho_books_list_invoicesList invoices with invoice_id, number, customer, status, date, due date, total and balance
zoho_books_get_invoiceRead one invoice with line items, taxes, totals, balance, payments, customer and status
zoho_books_create_invoiceCreate an invoice (a draft, unless send is true, which also emails it to the customer: confirm that with the user first)
zoho_books_email_invoiceEmail an invoice to the customer from the organization, with the invoice attached
zoho_books_mark_invoice_sentMark a draft invoice as sent without emailing it (for invoices delivered another way)
zoho_books_void_invoiceVoid an invoice: it stays on record with status void but no longer counts as receivable or revenue
zoho_books_mark_invoice_draftTurn a void invoice back into a draft, for example to correct and reissue it
zoho_books_delete_invoiceDelete an invoice for good: only a draft without recorded payments
zoho_books_list_estimatesList estimates (quotes) with estimate_id, number, customer, status, date, expiry date and total
zoho_books_get_estimateRead one estimate with line items, taxes, totals and status
zoho_books_create_estimateCreate an estimate (quote) as a draft
zoho_books_delete_estimateDelete an estimate (quote) for good; it cannot be restored
zoho_books_list_customer_paymentsList payments received from customers with payment_id, customer, date, amount, payment mode and the invoices they paid
zoho_books_get_customer_paymentRead one customer payment with the invoices it was applied to
zoho_books_create_customer_paymentRecord a payment received from a customer and apply it to invoices (bookkeeping only; no money is collected)
zoho_books_delete_customer_paymentDelete a recorded customer payment; the invoices become unpaid again
zoho_books_list_billsList bills (vendor invoices) with bill_id, number, vendor, status, date, due date, total and balance
zoho_books_get_billRead one bill with line items, accounts, taxes, totals, balance and payments
zoho_books_create_billRecord a bill received from a vendor (it posts to the ledger as payable)
zoho_books_delete_billDelete a bill for good (only without recorded payments)
zoho_books_list_expensesList expenses with expense_id, date, account, amount, vendor, customer and status (billable, invoiced, ...)
zoho_books_get_expenseRead one expense with account, paid-through account, tax, vendor, customer and receipts
zoho_books_create_expenseRecord an expense paid from a bank, cash or credit card account (it posts to the ledger)
zoho_books_delete_expenseDelete an expense for good; its ledger postings are removed
zoho_books_list_chart_of_accountsList the chart of accounts: account_id, name, code, type (asset, liability, equity, income, expense, bank, cash, ...), active flag and…
zoho_books_get_accountRead one account of the chart of accounts: name, code, type, currency, description and balance
zoho_books_list_account_transactionsList the transactions booked on one account (invoices, payments, bills, expenses, journals) with date, debit, credit and reference: a…
zoho_books_list_bank_accountsList bank, cash and credit card accounts with account_id, name, type, currency, balance and bank name
zoho_books_get_bank_accountRead one bank or credit card account with balance and bank details
zoho_books_list_bank_transactionsList bank transactions (deposits, withdrawals, transfers and feed lines) with date, amount, type, status (categorized, uncategorized…
zoho_books_get_bank_transactionRead one bank transaction with its accounts, amounts and the documents it is matched to
zoho_books_list_taxesList the organization's taxes and tax groups with tax_id, name, percentage and type, for line items and expenses

Example prompts

  • "Which invoices are overdue, and how much does each customer still owe?"
  • "Show me the balance of our Office Supplies expense account and every booking on it in September."
  • "Create a draft invoice for Acme Ltd: 12 hours of Consulting at 95 EUR, due in 14 days. Don't send it yet."
  • "Record today's bank transfer of 1,140 EUR from Acme Ltd as a payment against invoice INV-000123."

FAQ

Which Copilot is this for? Microsoft 365 Copilot at work, through agents built in Copilot Studio. The Microsoft Copilot app for personal accounts has no option to add your own MCP server.

What do I need? A work account with access to Copilot Studio (a license or a trial) to build the agent. People who use it in Microsoft 365 Copilot or Teams need access to the agent: share it with them, or ask an admin to publish it to the organization. If your organization applies data policies to Power Platform connectors, they cover MCP servers too.

The agent doesn't call the tools. Check that the header name is exactly X-API-Key and that the key belongs to the same MCP server as the URL, and make the server description specific: Copilot Studio uses it to decide when to call the server. Publish the agent again after each change; in an open chat, type "start over" to get the new version.

Next steps

Was this guide helpful?

Connect Zoho Books to Microsoft Copilot in 2 minutes

Start a free trial on AnythingMCP Cloud, connect Zoho Books in the guided setup, then add your MCP URL to Microsoft Copilot. No code and no server to run.

Related guides

Connectors

Connect Zoho Books to ChatGPT via MCP

Let your AI work in Zoho Books: look up and manage customers, vendors and items, create, email, mark as sent and void invoices, create estimates, record customer payments, bills and expenses, and read the chart of accounts, account ledgers and bank transactions. Any Zoho data center, Zoho OAuth sign-in.

Connectors

Connect Zoho Books to Claude via MCP

Let your AI work in Zoho Books: look up and manage customers, vendors and items, create, email, mark as sent and void invoices, create estimates, record customer payments, bills and expenses, and read the chart of accounts, account ledgers and bank transactions. Any Zoho data center, Zoho OAuth sign-in.

Connectors

Connect Zoho Books to Cursor via MCP

Let your AI work in Zoho Books: look up and manage customers, vendors and items, create, email, mark as sent and void invoices, create estimates, record customer payments, bills and expenses, and read the chart of accounts, account ledgers and bank transactions. Any Zoho data center, Zoho OAuth sign-in.

Connectors

Connect Zoho Books to Gemini CLI via MCP

Let your AI work in Zoho Books: look up and manage customers, vendors and items, create, email, mark as sent and void invoices, create estimates, record customer payments, bills and expenses, and read the chart of accounts, account ledgers and bank transactions. Any Zoho data center, Zoho OAuth sign-in.

Connectors

Connect Zoho Books to Meta Muse via MCP

Let your AI work in Zoho Books: look up and manage customers, vendors and items, create, email, mark as sent and void invoices, create estimates, record customer payments, bills and expenses, and read the chart of accounts, account ledgers and bank transactions. Any Zoho data center, Zoho OAuth sign-in.

Connectors

Zoho Books MCP Server: Invoices, Payments and Bills

Let your AI work in Zoho Books: look up and manage customers, vendors and items, create, email, mark as sent and void invoices, create estimates, record customer payments, bills and expenses, and read the chart of accounts, account ledgers and bank transactions. Any Zoho data center, Zoho OAuth sign-in.