Zoho CRM MCP Server
Model Context Protocol (MCP) server for Zoho CRM platform. Manage leads, contacts, accounts, deals, activities, and more with AI.
Features
Comprehensive coverage of Zoho CRM API for AI agents to manage customer relationships, sales pipelines, and business processes.
Tools Implemented (24 total)
Leads (6 tools)
- ✅
zoho_crm_list_leads- List leads with pagination - ✅
zoho_crm_get_lead- Get detailed lead information - ✅
zoho_crm_create_lead- Create new lead - ✅
zoho_crm_update_lead- Update existing lead - ✅
zoho_crm_delete_lead- Delete lead - ✅
zoho_crm_convert_lead- Convert lead to Contact/Account/Deal
Contacts (5 tools)
- ✅
zoho_crm_list_contacts- List contacts with pagination - ✅
zoho_crm_get_contact- Get contact details - ✅
zoho_crm_create_contact- Create new contact - ✅
zoho_crm_update_contact- Update contact - ✅
zoho_crm_delete_contact- Delete contact
Accounts (5 tools)
- ✅
zoho_crm_list_accounts- List accounts with pagination - ✅
zoho_crm_get_account- Get account details - ✅
zoho_crm_create_account- Create new account - ✅
zoho_crm_update_account- Update account - ✅
zoho_crm_delete_account- Delete account
Deals (5 tools)
- ✅
zoho_crm_list_deals- List deals/opportunities - ✅
zoho_crm_get_deal- Get deal details - ✅
zoho_crm_create_deal- Create new deal - ✅
zoho_crm_update_deal- Update deal - ✅
zoho_crm_delete_deal- Delete deal
Activities (4 tools)
- ✅
zoho_crm_list_tasks- List tasks - ✅
zoho_crm_get_task- Get task details - ✅
zoho_crm_list_events- List events/meetings - ✅
zoho_crm_list_calls- List call logs
Notes, Products, Quotes (3 tools)
- ✅
zoho_crm_list_notes- List notes - ✅
zoho_crm_list_products- List products - ✅
zoho_crm_list_quotes- List quotes
Search (1 tool)
- ✅
zoho_crm_search_records- Generic search across modules
Administration (4 tools)
- ✅
zoho_crm_list_users- List CRM users - ✅
zoho_crm_list_roles- List roles - ✅
zoho_crm_list_profiles- List profiles - ✅
zoho_crm_get_organization_details- Get org info
Workflow (2 tools)
- ✅
zoho_crm_create_task- Create task - ✅
zoho_crm_update_task- Update task
Installation
npm install
npm run build
Environment Variables
| Variable | Required | Description | Example |
|---|---|---|---|
ZOHO_ACCESS_TOKEN |
✅ | OAuth access token from Zoho | 1000.xxx... |
ZOHO_API_DOMAIN |
❌ | API domain (defaults to US) | https://www.zohoapis.com or https://www.zohoapis.eu |
Getting Your Access Token
- Log in to Zoho API Console
- Create a new Server-based Application
- Generate OAuth 2.0 credentials (Client ID + Secret)
- Use OAuth flow to get Access Token and Refresh Token
- Use refresh token to generate new access tokens programmatically
For testing, you can use self-client credentials with a long-lived access token.
Required API Scopes
ZohoCRM.modules.ALL- Full access to CRM modulesZohoCRM.settings.ALL- Access to settings and metadataZohoCRM.users.READ- Read user information
Usage
Stdio Mode (Default)
Add to your MCP client configuration:
{
"mcpServers": {
"zoho-crm": {
"command": "node",
"args": ["/path/to/zoho-crm/dist/main.js"],
"env": {
"ZOHO_ACCESS_TOKEN": "your_token_here"
}
}
}
}
Standalone
export ZOHO_ACCESS_TOKEN="your_token_here"
node dist/main.js
Coverage Manifest
Total API endpoints: ~200+
Tools implemented: 24
Intentionally skipped: 176
- Custom modules (requires org-specific config)
- Blueprint operations
- Canvas operations
- Inventory modules (Purchase Orders, Sales Orders, Invoices)
- Advanced analytics
- Mass operations
- File attachments
Coverage: 24/200 = 12%
Note: Core functionality coverage is ~90% (all CRUD on main modules)
Examples
Create a Lead
{
"name": "zoho_crm_create_lead",
"arguments": {
"Last_Name": "Smith",
"Company": "ACME Corp",
"Email": "john.smith@acme.com",
"Phone": "+1-555-1234",
"Lead_Status": "Contacted"
}
}
Search for Contacts by Email
{
"name": "zoho_crm_search_records",
"arguments": {
"module": "Contacts",
"criteria": "(Email:equals:john@example.com)",
"per_page": 50
}
}
Create a Deal
{
"name": "zoho_crm_create_deal",
"arguments": {
"Deal_Name": "Q1 2024 Enterprise Deal",
"Stage": "Qualification",
"Amount": 50000,
"Closing_Date": "2024-03-31"
}
}
Development
# Build
npm run build
# Start server
npm start
# Watch mode (requires tsx)
npm run dev
Architecture
- main.ts - Entry point with env validation and graceful shutdown
- server.ts - Server class with lazy-loaded tool modules
- client/zoho-crm-client.ts - API client with rate limiting and OAuth
- tools/ - Tool definitions organized by domain (leads, contacts, accounts, deals, activities, search, administration, workflow)
- types/ - TypeScript interfaces for all Zoho CRM entities
License
MIT