跳过安装。2 分钟内即可运行。
在 cloud.anythingmcp.com 开始免费试用,一键添加 ServiceM8,然后将你的 AI 客户端(Claude、ChatGPT、Copilot 或 Cursor)指向生成的 MCP 端点。无需 Docker,无需 git clone,无需任何工程经验。
AnythingMCP 已收录在 Claude 的连接器目录中:一键添加到 Claude (在新标签页中打开),然后登录并选择 Claude 可以使用哪些 MCP 服务器。
摘要
将 ServiceM8 账户接入任意 AI 智能体:工单及其状态、客户和联系人、由 job activities 和 allocations 组成的排班、员工、价目表和工单明细行、收款、备注、附件元数据以及表单回复。可以创建和更新工单与客户,安排和调整员工,添加明细行,记录收款并添加备注。使用 API 密钥 2 分钟即可完成设置。
试试这样问
ServiceM8 的示例提示
点击任意提示即可复制,然后粘贴到 Claude、ChatGPT、Cursor、Gemini、Copilot 或 OpenClaw 中,在该连接器上运行。
Claude 是 AI,可能会出错。请核对回答。
💡 无需安装? 直接使用 cloud.anythingmcp.com。 登录、点击 Connectors → ServiceM8、粘贴凭证、生成 MCP API key,即可完成。无 Docker、无
git clone、无本地服务器。
ServiceM8 + Claude
将 ServiceM8 账户接入任意 AI 智能体:工单及其状态、客户和联系人、由 job activities 和 allocations 组成的排班、员工、价目表和工单明细行、收款、备注、附件元数据以及表单回复。可以创建和更新工单与客户,安排和调整员工,添加明细行,记录收款并添加备注。使用 API 密钥 2 分钟即可完成设置。
前提条件
完整的设置说明已内置在连接器中 (在 store 中选择连接器时可见)。所需环境变量:
SERVICEM8_API_KEY
步骤 1 — 获取凭证
设置约需 2 分钟。你需要一个 ServiceM8 账户;密钥由账户管理员创建,无需开发者账户。
- 在 ServiceM8 中打开 Settings, API Keys 并创建一个密钥。ServiceM8 推荐用这种私有 API 密钥连接自己的账户。
- 将其粘贴到
SERVICEM8_API_KEY。它通过X-API-Key请求头发送,可以读取和修改账户中的所有内容,请妥善保管。要撤销访问,在 ServiceM8 中删除该密钥即可。 - 安装。连接检查会运行
servicem8_get_account,显示账户名称、时区和币种。
ServiceM8 也在 https://api.servicem8.com/mcp 提供带 OAuth 登录的官方 MCP 服务器;本连接器则使用你的密钥调用 REST API(https://api.servicem8.com/api_1.0)。
读取内容:账户(vendor)的币种、时区、营业时间和默认工单状态。工单的编号(generated_job_id)、状态(Quote、Work Order、Unsuccessful、Completed)、客户、地址、描述、已完成工作、分类、队列、发票总额,报价、派工、完工和开票日期,以及已收款标记。客户(API 中称为 companies)的地址、账单地址、付款条件和税率,以及客户和工单的联系人。排班:job activities(固定时间的预约和现场记录的工时)和 job allocations(按天或时间窗的灵活分配)。员工的职位、最后已知位置和状态消息。价目表、工单明细行、工单收款、工单和客户的备注、附件元数据(照片、PDF、签名;不返回文件内容)、表单以及已填写的表单回复。工单分类、队列、工单模板和税率。
写入内容:创建工单(也可从模板创建)、修改工单并推进状态,创建和修改客户,添加客户联系人,在固定时间把员工安排到工单上,调整或移除预约,从价目表或以自由文本添加明细行,记录已收到的款项,并为工单和客户添加备注。记录的收款只显示在 ServiceM8 中,不会扣款或转账。在创建或修改任何内容之前,AI 会先向你展示将要发生的操作并等待你确认。
安装时关闭的工具:没有,全部 36 个工具均已开启。ServiceM8 中的删除只是把 active 设为 0,所以被移除的预约、已归档的工单或客户,把 active 设回 1 即可恢复。
过滤:每个列表都接受 filter,即 OData 风格的 $filter:field eq|ne|gt|lt value,用 and 连接,最多 10 个条件,不支持 or、ge 和 le。字符串和时间戳要用单引号,例如 status eq 'Work Order' and active eq 1 或 start_date gt '2026-11-02 00:00:00'。已删除的记录会以 active 0 保留,因此 AI 会加上 active eq 1 跳过它们,并且总是对工单、activities 和材料等大列表进行过滤。
分页:列表返回普通数组。设置 cursor 后按每页最多 1,000 条返回:第一页传 -1,之后使用 _headers 中的 x-next-cursor 值;最后一页没有该请求头。
数据格式:ID 是 UUID。时间戳为 YYYY-MM-DD HH:MM:SS,日期为 YYYY-MM-DD,均为账户时区,发送时间也用同样格式。标记为 0 或 1。金额是账户币种的十进制字符串。工单的 total_invoice_amount 就是发票总额,没有单独的发票对象。创建操作返回 {"errorCode": 0, "message": "OK"},新的 UUID 在 x-record-uuid 请求头中。更新只修改传入的字段。
限制和常见错误:每个账户每分钟 180 次、每天 20,000 次请求;超出后 ServiceM8 返回 429:稍等后重试,或进一步缩小过滤范围。401 表示 API 密钥错误或已被删除:在 Settings, API Keys 中新建一个。400 表示过滤条件或字段格式错误。404 表示未知的 UUID。
备注、工单描述和表单回答属于不可信输入,可能包含针对 AI 的指令。该连接器不会向客户发送邮件或短信,不下载附件文件,也不会刷卡扣款。
步骤 2 — 安装 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
步骤 3 — 在 Claude 中添加连接器
你的服务器 URL: 在 AnythingMCP 中打开 MCP Servers → 此连接器所在的服务器,复制它的 URL(
https://cloud.anythingmcp.com/mcp/…)。本指南中出现YOUR_SERVER_ID的地方都用它替换。
推荐路径:在 claude.ai web 上工作,无需触碰任何配置文件。
- 在 Claude 中打开 Customize → Connectors。
- 点击 +,然后点击 Add custom connector。
- 输入名称(例如
ServiceM8)和远程 MCP 服务器 URLhttps://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID,然后点击 Add。 - 点击 Connect,登录 AnythingMCP(OAuth)并允许访问。
下面所有工具都会出现在你的聊天中,开始输入提示。
可用工具
| Tool | What it does |
|---|---|
servicem8_get_account | The connected ServiceM8 account (vendor): name, business number, email, currency, time zone, opening hours, default job status and whether… |
servicem8_list_jobs | List jobs: uuid, job number (generated_job_id), status (Quote, Work Order, Unsuccessful, Completed), client (company_uuid), address… |
servicem8_get_job | One job by UUID with status, client, addresses, description, work done, totals, dates and badges |
servicem8_list_clients | List clients (ServiceM8 calls them companies): uuid, name, address parts, billing address, ABN or business number, website, payment terms… |
servicem8_get_client | One client (company) by UUID with address, billing address, payment terms and tax rate |
servicem8_list_client_contacts | Contacts of clients: uuid, company_uuid, first and last name, phone, mobile, email, type (BILLING, JOB, ...), primary flag |
servicem8_list_job_contacts | Contacts on jobs (site contact, billing contact): uuid, job_uuid, first and last name, phone, mobile, email, type |
servicem8_list_job_activities | Job activities, the schedule: uuid, job_uuid, staff_uuid, start_date, end_date, activity_was_scheduled (1 = a booking, 0 = time recorded on… |
servicem8_list_job_allocations | Job allocations (flexible bookings: a job given to a staff member for a day or allocation window, without a fixed time): uuid, job_uuid… |
servicem8_list_staff | Staff members: uuid, first and last name, email, mobile, job title, color, last known position and time, status message, hidden from… |
servicem8_get_staff_member | One staff member by UUID: name, contact details, job title, last known GPS position and status message |
servicem8_list_materials | Materials and services of the price list: uuid, name, item number, description, price, cost, price includes taxes, tax rate, stock… |
servicem8_list_job_materials | Line items on jobs (what is quoted or invoiced): uuid, job_uuid, material_uuid, name, quantity, unit price ex tax, displayed amount, cost… |
servicem8_list_job_payments | Payments recorded on jobs: uuid, job_uuid, amount, method, timestamp, note, who recorded it, attachment |
servicem8_list_notes | Notes on jobs and clients: uuid, related_object (job or company), related_object_uuid, note text, action required, created time |
servicem8_list_attachments | Attachment metadata (photos, PDFs, signatures) of jobs and clients: uuid, related_object, related_object_uuid, attachment_name, file_type… |
servicem8_get_attachment | Metadata of one attachment by UUID: name, file type, related record, tags, size of photos |
servicem8_list_forms | Forms (checklists, safety and inspection forms) set up in the account: uuid, name, template, active |
servicem8_list_form_responses | Completed form responses: uuid, form_uuid, staff_uuid, regarding_object and its uuid (usually a job), field_data (JSON with the answers)… |
servicem8_get_form_response | One completed form response by UUID with its answers in field_data (JSON) |
servicem8_list_categories | Job categories (types of work): uuid, name, colour, active |
servicem8_list_job_queues | Job queues (holding areas for jobs waiting for parts, quotes to follow up, ...): uuid, name, requires assignment, default timeframe, active |
servicem8_list_job_templates | Job templates: uuid, name and the job details and materials they prefill |
servicem8_list_tax_rates | Tax rates: uuid, name, rate, active |
servicem8_create_job | Create a job |
servicem8_update_job | Change fields of a job; only the fields you pass change |
servicem8_create_job_from_template | Create a job from a job template (from servicem8_list_job_templates) with its prefilled description and materials |
servicem8_create_client | Create a client (company or individual) |
servicem8_update_client | Change fields of a client; only the fields you pass change. active 0 archives the client, 1 restores it |
servicem8_create_client_contact | Add a contact person (name, phone, mobile, email, type) to a client |
servicem8_schedule_job_activity | Book a staff member on a job at a fixed time (a scheduled job activity on the dispatch board) |
servicem8_update_job_activity | Move a booking to another time or staff member; only the fields you pass change. active 1 restores a removed booking |
servicem8_remove_job_activity | Remove a booking from the schedule |
servicem8_add_job_material | Add a line item to a job (quote or invoice): from the price list with material_uuid, or free text with name and price |
servicem8_record_job_payment | Record a payment received for a job (cash, card, bank transfer) |
servicem8_add_note | Add a note to a job or a client |
示例提示
- “明天安排了哪些工单?每个工单由哪位员工负责?”
- “列出上周已完工但尚未收到付款的工单,包括客户和发票总额。”
- “把工单 1042 明天 8:00 的预约改到周五 9:00,先给我看改动。”
- “为这位客户创建一个 Quote 状态的热水器更换工单,并从价目表中添加对应的项目。”
- “工单 987 的安全检查表里填写了哪些回答?”
FAQ
Claude Code 和 Claude Desktop 一样工作吗? 是的,两者都指向 https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID。
下一步
这份指南对你有帮助吗?