Zoho expense logo Help Docs
/

Connect Zoho Expense to AI Models Using Zoho MCP

Model Context Protocol (MCP) is an open protocol that standardizes how applications communicate with Large Language Models (LLMs). The Zoho MCP server uses this protocol to connect your Zoho Expense data and workflows directly to AI models such as Claude and ChatGPT.

Once connected, you can create expenses and expense reports, reimburse expense reports, manage trips, and more; all through plain-language prompts in your AI model’s interface, without having to navigate to Zoho Expense manually.


How Zoho MCP Works

The Zoho MCP server acts as a secure bridge between your AI model and your Zoho Expense organization. When you prompt your AI model (the MCP client), it processes the request through the MCP server, which then calls the Zoho Expense API to carry out the action.

Note: The Zoho Expense API is the underlying interface through which all tool actions are executed. When a prompt is processed, the AI model translates it into an API request and calls the Zoho Expense API on your behalf. This means every action your AI model performs is subject to API limits, permissions, and audit logs.

Before you get started, here are the key components you’ll encounter:

ComponentRole
MCP ServerThe configured server that exposes a set of tools (such as Create Expense Categories, List Users, or Approve Expense Report) to your AI model.
MCP ClientThe AI model (Claude, Cursor, Windsurf, etc.) that receives and processes your prompts.
ToolsThe specific actions your AI model is permitted to perform in Zoho Expense. You select tools from the available list in Zoho MCP.
YouProvide natural-language instructions; the AI model calls the right tool on your behalf.

Here is the lifecycle of an action:

  • You type a prompt in your AI model’s interface for example, “In [Org ID], create an expense for Zylker Corp for $500.”
  • The AI model identifies the right tool from the enabled tools on your MCP server.
  • The AI model sends the request to the Zoho MCP server.
  • The MCP server calls the Zoho Expense API to carry out the action.
  • The action is executed in your Zoho Expense account in this case, an expense is created for Zylker Corp.

Supported MCP Clients

Zoho MCP works with any MCP-compatible client. The following clients have dedicated setup guides:

  • Claude (claude.ai)
  • ChatGPT

In addition to Claude and ChatGPT, Zoho MCP is compatible with Cursor, Windsurf, VS Code (with GitHub Copilot in Agent mode), Zed, Continue, Cline, and n8n. Learn More


Prerequisites

Before setting up an MCP server, ensure the following are in place:

  • To connect your Zoho MCP server with Claude, you must be a Claude Organization Admin. Once connected, the integration is automatically accessible to all members of your Claude organization. This applies only if you are on the Claude Team plan or higher.
  • For all MCP clients, account-level access to your Zoho Expense organization is required.
  • MCP client installed: Make sure your preferred AI model such as Claude or ChatGPT is set up and ready to use.

Set Up Your MCP Server

Setting up your MCP server is the foundation of your Zoho MCP configuration. Only after your server is configured can your AI model connect to it and begin executing actions in Zoho Expense through the tools you have enabled.

Note: AI models can sometimes misinterpret prompts or make mistakes. Always review the actions your AI model performs before treating them as final. We recommend testing in your sandbox environment before going live. Reach out to us at support@zohoexpense.com if you need any help.

Generate Your Server URL

  • Log in to Zoho MCP using your Zoho Expense account credentials.
  • Create or select an MCP server.
  • Go to Connect in the left sidebar.
  • Copy the Server URL shown on the page.

Your Server URL follows this format: https://[mcp-server-name]-[org-id].zohomcp.com/mcp/[api-key]/message

Warning: Treat your Server URL like a password. It grants access to your Zoho Expense tools and data, anyone with this URL can use it to interact with your MCP server. Do not share it in public repositories, shared documents, or anywhere others can view it. If you suspect your Server URL has been compromised, regenerate it immediately.

Regenerate Your API Key

If your Server URL is ever exposed or compromised, you can regenerate a new API key. This invalidates the old URL immediately, and any MCP clients using the old URL will lose access.

  • Go to Connect in the left sidebar.
  • Click Regenerate API Key at the top right of the Server URL section.
  • Copy the new Server URL and update it in all connected MCP clients.

Note: Regenerating the API key disconnects all existing MCP client integrations. You’ll need to reconfigure each client with the new URL.


Configure Tools in Zoho MCP

Tools are the building blocks of everything your AI model can do in Zoho Expense. When you connect an AI model to Zoho Expense through the MCP server, the AI model doesn’t automatically get access to every action in Zoho Expense. Instead, you choose exactly which actions the AI model is permitted to perform. These permitted actions are called tools. Each tool maps to a specific Zoho Expense API call when an AI model executes a tool, it triggers the corresponding API in the background to carry out the action on your Zoho Expense data.

Scenario: Patricia Boyle, Finance Manager at Zylker Technologies, wants to use Claude to review and approve trip requests, but she doesn’t want the AI model to have the ability to cancel trips or manage users. By enabling only the Get Trip, List Trips, and Approve Trip tools in Zoho MCP, she ensures Claude can assist with exactly those tasks and nothing beyond them.

Learn how you can configure tools in Zoho MCP.


Connect with an MCP Client

With your MCP server set up, the next step is connecting it to your AI model. This allows your AI model to receive prompts and execute actions in Zoho Expense through the tools you have enabled.

Connect with Claude

  • Go to claude.ai/settings/connectors, or open the Claude desktop application.
  • Go to Settings, and click Connectors.
  • Click Add Custom Connector at the bottom.
  • Enter a name for your connector, for example, Zoho Expense.
  • Paste the Server URL from Zoho MCP in the URL field and click Save.
  • Scroll down to the connector you created and click Connect.

Note: During the connection setup, you will encounter two authorization screens. The first requests access to your Zoho MCP account and the tools you have enabled. The second is a Zoho OAuth screen that lists the specific Zoho Expense permissions being requested. Review the permissions on both screens and click Allow, then Accept, to complete the authorization.

Once authorized, the connector will be active and Claude can begin executing actions in Zoho Expense on your behalf.

Access Zoho MCP Tools in Claude

  • Open a new chat in Claude.
  • Click the + icon in the chat toolbar and click Connectors.
  • Select the custom connector you created.
  • Start prompting Claude to manage your Zoho Expense data.

Note: Each time you add a new tool in your MCP server, disconnect your custom connector in Claude and reconnect. You’ll need to grant the required permissions to proceed.

Connect with ChatGPT

Note: Connecting Zoho MCP with ChatGPT requires a ChatGPT Plus, Pro, or Team plan. This feature is not available on the free tier.

ChatGPT supports MCP-based integrations through custom apps, allowing you to connect it to your Zoho MCP server and perform actions in Zoho Expense directly from your ChatGPT conversations.

First, copy your MCP URL from Zoho MCP:

  • Log in to Zoho MCP account.
  • Create or select your MCP server.
  • Configure the tools as required.
  • Go to Connect in the left sidebar.
  • Copy the MCP URL.

Next, create a custom app in ChatGPT:

  • Log in to your ChatGPT account.
  • Click your profile icon and click Settings.
  • Go to the Apps tab and scroll down to Advanced Settings.
  • Toggle Developer Mode and click Create App.

Note: Developer Mode is a ChatGPT setting that allows you to connect external tools and services such as Zoho MCP to your ChatGPT account using custom apps.

  • In the New App page, enter a name for your connector in the Name field.
  • Paste the MCP URL copied from Zoho MCP in the MCP Server URL field.
  • Set Authentication to OAuth.
  • Read the terms, check I trust this application, and click Create.

Note: During the connection setup, you will encounter two authorization screens. The first requests access to your Zoho MCP account and the tools you have enabled. The second is a Zoho OAuth screen that lists the specific Zoho Expense permissions being requested. Review the permissions on both screens and click Allow, then Accept, to complete the authorization.

Your connection will be created and you can then use ChatGPT to perform actions in your Zoho Expense account.

Access Zoho MCP Tools in ChatGPT

Here’s how you can start using the tools to perform actions from ChatGPT:

  • Open a new chat in ChatGPT.
  • Click the + icon in the chat toolbar.
  • Click More and select the app you created.
  • Start prompting ChatGPT to manage your Zoho Expense data.

Note: Each time you add a new tool in your MCP server, refresh your custom connector in ChatGPT and grant the required permissions to proceed. If you run into any issues, write to us at support@zohoexpense.com. Our support team will help you resolve the issue.


Best Practices to Write Effective Prompts

Your prompt is the instruction your AI model works from. The clearer it is, the less back-and-forth you’ll need. A well-structured prompt gets the right action done on the right record the first time.

Keep these tips in mind:

  • Name things specifically. Use the exact field names, IDs, and module names as they appear in Zoho Expense.
  • Reference records by their unique IDs so there’s no ambiguity about which user, expense, or plan you mean.
  • State your intent clearly what you want done, to what, and under what conditions.
  • Include edge cases upfront. If something should only happen when a condition is met, say so.

Scenario: Johan, a Finance Operations Manager at Zylker Technologies, used to manually review submitted expense reports, cross-check trip requests against approved expenses, and verify project allocations at the end of every month, a process that took hours and left room for oversight. Now, using Zoho MCP, he simply prompts his AI model: “In [Org Name] (Org ID), list all submitted expense reports and show me the trips that are approved but don’t have linked expenses.” In seconds, he has a complete view, spots a closed trip with no associated expense report, and creates one on the spot.

Here are some example prompts to help you get started with common expense workflows. Adapt them with your actual customer names, amounts, and plan details.

Manage Expenses

  • In [Org Name] (Org ID), create an expense for Zylker Corp for $500.
  • In [Org Name] (Org ID), get all the expenses of Zylker Corp.

Manage Trips

  • In [Org Name] (Org ID), create a one-way trip request for [user name] from [departure location] to [arrival location] on [date].
  • In [Org Name] (Org ID), approve trip request [trip ID] submitted by [user name].

Note: The prompts above cover only a handful of the available tools. To see the full list, log in to Zoho MCP and go to Tools.

Pro Tip: When working with AI models, select only the tools you need for the current task before starting a chat. This helps keep responses focused and reduces the chances of unintended actions.


Track Your Activity Using Logs

Every time your AI model performs an action in Zoho Expense through the MCP server, whether it merges expenses, updates a trip, or deletes a user, that action is logged. The Logs page gives you a complete, searchable record of all tool calls made through your MCP server, along with their outcomes.

Scenario: Aaron Brown, Finance Manager at Zylker, notices that several expenses were merged incorrectly over the past two days. Rather than manually tracing which team member’s AI model made those calls, he goes to the Logs page, filters by the Merge Expenses tool and the relevant date range, and immediately identifies the ZUID and Execution ID linked to each action, giving him everything he needs to investigate and correct the issue.

Each log entry captures the following:

FieldWhat It Tells You
ToolThe specific Zoho Expense action that was called, such as Create Expense or List Users.
StatusWhether the tool call succeeded or failed.
ZUIDThe Zoho User ID of the person whose AI model triggered the action.
Execution IDA unique identifier for that specific tool call, useful when escalating an issue or cross-referencing with API logs.

View Logs

The Logs page records every action performed through your Zoho MCP server. Each log entry captures what tool was used, who triggered it, whether it succeeded, and a unique identifier you can use to trace that specific execution.

  • Log in to Zoho MCP account.
  • Select the MCP server for which you’d like to view activity logs.
  • Go to Logs in the left sidebar.
  • Set filters Date, Time, Timezone, Status, Tool, ZUID, or Execution ID to narrow down the results.
  • Click Search to view matching log entries.

Note: You can combine multiple filters in a single search. For example, filtering by both a specific Tool and a Status of Failed will show you all unsuccessful calls to that tool within your chosen date range, making it easier to pinpoint issues without scrolling through unrelated entries.


Manage Your Connections

A connection provides your AI model with the access credentials such as OAuth access tokens and refresh tokens needed to interact with external services. Without one, the AI model can receive a prompt and identify the right tool, but cannot execute any actions.

Depending on how your organization works, you can choose to let each user authorize access themselves when they first use a tool, or you can set up a single admin-managed connection that powers all tool calls across the organization. Both approaches are supported, and you can switch between them at any time. Learn More

Was this document helpful?
Yes
No

Thank you for your feedback!