- Home
- MCP servers
- ZohoCRM
ZohoCRM
- javascript
0
GitHub Stars
javascript
Language
7 months ago
First Indexed
3 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"creatrcollective-zohocrm-mcp-server": {
"command": "sh",
"args": [
"-c",
"docker run --rm -i --name zoho-mcp-server -p 3000:3000 -v zoho-mcp-data:/app/data -e ZOHO_CLIENT_ID -e ZOHO_CLIENT_SECRET -e SCOPES whiteside1992daniel/zohocrm-mcpserver:VERSION"
],
"env": {
"SCOPES": "ZohoCRM.settings.READ,ZohoCRM.modules.READ,ZohoSearch.securesearch.READ,ZohoCRM.settings.layouts.READ",
"ZOHO_CLIENT_ID": "YOURCLIENTID",
"ZOHO_CLIENT_SECRET": "YOURCLIENTSECRET"
}
}
}
}You can connect Claude-style clients to Zoho CRM through a dedicated MCP server that runs in a container. This enables natural language queries to explore CRM data in read-only mode, such as listing modules, inspecting fields, searching records, and fetching specific records without modifying anything in Zoho CRM.
How to use
Start the MCP server from your Claude client as a locally running process. Once the server is up, you can ask Claude to list Zoho CRM modules, fetch field information for a module, search across records using natural language, or retrieve a specific record by ID. The integration is read-only, so you can explore data safely without altering any CRM records.
How to install
Prerequisites you need on your system before starting:
- Docker or Docker Desktop for running the MCP server
- A Zoho OAuth client ID and client secret for authentication
Step 1: Prepare the MCP server container configuration Prepare the following runtime command to start the MCP server via Docker. This snippet launches a container that serves the MCP API at port 3000 and exposes necessary Zoho credentials as environment variables.
sh -c docker run --rm -i --name zoho-mcp-server -p 3000:3000 -v zoho-mcp-data:/app/data -e ZOHO_CLIENT_ID -e ZOHO_CLIENT_SECRET -e SCOPES whiteside1992daniel/zohocrm-mcpserver:VERSION
Step 2: Run the Docker command with your credentials Replace placeholders with your actual values and run the command shown above to start the server. The SCOPES should include ZohoCRM permissions required for read-only access.
Step 3: Configure your MCP client to connect to the local server In your MCP client configuration, point to the locally started MCP server so Claude can communicate with it. The server typically runs at http://localhost:3000.
Configuration and security
OAuth credentials are required to connect to Zoho CRM. You will provide a Zoho Client ID and Client Secret to the MCP server environment. Ensure you have configured Zoho OAuth in the Zoho Developer Console, including a redirect URI that the server can use during the OAuth flow.
If you need to reconfigure OAuth, update your environment variables in the MCP server startup command and restart the server so the new credentials take effect.
Troubleshooting
If the MCP server fails to start or Claude cannot access Zoho data, check the following steps.
-
Ensure Docker is running and the container can be created on port 3000.
-
Verify ZOHO_CLIENT_ID and ZOHO_CLIENT_SECRET are provided and valid, and that the redirect URI in Zoho matches http://localhost:3000/authRedirect.
-
Look at the container logs to diagnose startup or OAuth errors. Use docker logs zoho-mcp-server to inspect runtime messages.
Appendix - Tools and endpoints
The MCP provides a set of tools to interact with Zoho CRM data. Each tool is available through the MCP server and supports various query patterns.
Appendix - Example usage within Claude
Query examples you can try after the server is running:
Show me all the modules in my Zoho CRM
What fields are available in the Contacts module?
Available tools
validate-zoho-oauth
Check if OAuth refresh token exists
setup-zoho-oauth
Obtain a new OAuth refresh token
list-zoho-modules
List all CRM modules and their API names
zoho-module-list-fields
Get fields for a specific module by API name
simple-search-zoho-records
Search CRM records using a natural language string within a module
count-zoho-records
Count records in a module with optional filters
get-zoho-record
Retrieve a single record by ID from a module