Zoho FSM MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ZOHO_REGION | No | Zoho region: com, eu, in, au, or jp | com |
| ZOHO_CLIENT_ID | Yes | Client ID from Zoho API Console | |
| ZOHO_CLIENT_SECRET | Yes | Client Secret from Zoho API Console | |
| ZOHO_REFRESH_TOKEN | Yes | Refresh token obtained via OAuth exchange |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| create_requestA | Create a new service Request in Zoho FSM. A Request is the initial intake record capturing what a customer needs before a Work Order is scheduled. Requires at least a summary and the associated company or contact. |
| get_requestA | Fetch a single FSM Request by its record ID. |
| search_requestsA | Search Requests using a Zoho criteria expression, e.g. |
| update_requestC | Update fields on an existing FSM Request. Only provided fields are changed. |
| create_work_orderC | Create a Work Order in Zoho FSM. A Work Order defines the job to be performed for a customer, including the company, contact, service type, and priority. |
| update_work_orderC | Update fields on an existing Work Order. Only provided fields are changed. |
| search_work_ordersA | Search Work Orders with a Zoho criteria expression, e.g. |
| create_appointmentB | Create a Service Appointment for a Work Order, optionally assigning a technician and a scheduled start/end time. |
| update_appointmentC | Update fields on an existing Service Appointment. |
| schedule_appointmentA | Run the "schedule" blueprint transition on a Service Appointment, assigning a technician and a confirmed time window. Use this instead of update_appointment when you want to formally move the appointment into the Scheduled state. |
| create_contactC | Create a Contact in Zoho FSM. A first name is required; email and phone are strongly recommended so the contact can be matched and notified later. |
| search_contactsA | Search Contacts by free-text word, email, phone, or a Zoho criteria expression. Provide exactly one of |
| create_companyB | Create a customer Company (account) in Zoho FSM. |
| search_companiesA | Search Companies by free-text word or a Zoho criteria expression. Provide one of |
| create_invoiceA | Create an Invoice in Zoho FSM for a completed job. Line items are provided as an array of { name, quantity, rate } objects. |
| mark_invoice_paidA | Mark an existing Invoice as Paid by updating its status. |
| create_estimateB | Create an Estimate (quote) in Zoho FSM for a customer, optionally tied to a Request or Work Order, with priced line items. |
| create_assetB | Create an Asset (a piece of serviceable customer equipment) in Zoho FSM, associated with a company and optionally a contact. |
| update_assetC | Update fields on an existing Asset. |
| list_usersA | List the FSM users (agents, dispatchers, field technicians) in the organization. Useful for finding technician IDs to assign to appointments. |
| get_userA | Fetch a single FSM user by their user ID. |
| create_service_requestA | End-to-end intake: find or create the customer, then file a Request and return a summary. If a company name is given, an existing company is matched; if none is found and |
| assign_best_technicianA | Pick the most suitable technician for a Work Order and assign them. Technicians are filtered by territory and (optionally) required skills, then the least-loaded match is selected. Returns the chosen technician and the updated work order. |
| complete_jobA | Close out a job: mark the Service Appointment complete, set the Work Order to Completed, and optionally generate an Invoice from the provided line items. Returns a consolidated summary of everything that was updated. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| dispatch-summary | Summarize the day’s appointments and technician assignments for a territory. |
| job-summary | Summarize a single work order end to end. |
| invoice-summary | Summarize an invoice and its payment status. |
| technician-brief | Prepare a field brief for a technician’s upcoming appointment. |
| customer-history | Compile a service history overview for a customer. |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| fsm-modules | Catalog of Zoho FSM modules and their REST API names. |
| fsm-statuses | Default status values per FSM module (custom statuses may also exist). |
| fsm-territories | Service territories used to route and staff work orders. |
| fsm-users | Agents, dispatchers, and field technicians in the organization. |
| fsm-services | Catalog of services that can be performed on jobs. |
| fsm-parts | Catalog of parts/products used in service jobs. |
| fsm-metadata | Aggregate bootstrap metadata: available resource URIs plus a live territory/user count. |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/LogeshR15/zoho-fsm-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server