io.usefulapi/shopmonkey
REMOTE · SHOPMONKEY.USEFULAPI.IO · SCANNED OCT 4
Look up shop customers, vehicles, work orders and parts, and create orders or book appointments.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security46
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- Authorisation not yet verified: we couldn't confirm whether this endpoint requires it. View diagnostics → Unverified
- HTTPS enforcement could not be verified: the plaintext port answered with HTTP 429, which proves neither a plaintext path nor enforcement. View diagnostics → Unverified
- HSTS check failed: the Strict-Transport-Security header is absent. See how to fix → View diagnostics → Fail
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability0
- Transport check failed: declared streamable-http, but the endpoint returned HTTP 429. See how to fix → View diagnostics → Fail
Schema Quality & AI Usability0
- Schema not yet verified: we couldn't read the endpoint's schema, or could read only part of its tool list.Unverified
Stability & Change Management0
- Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage0
- Tool coverage not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.Unverified
Tool Safety0
- Tool safety not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.Unverified
Capabilities0
- Capabilities not yet verified: we couldn't read the endpoint's capabilities.Unverified
Unverified: 5 categories
Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.
How do I install the io.usefulapi/shopmonkey MCP server?
io.usefulapi/shopmonkey is a hosted endpoint at https://shopmonkey.usefulapi.io/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · shopmonkey.usefulapi.io
claude mcp add --transport http io-usefulapi-shopmonkey 'https://shopmonkey.usefulapi.io/mcp'
{
"mcpServers": {
"io-usefulapi-shopmonkey": {
"url": "https://shopmonkey.usefulapi.io/mcp"
}
}
} {
"servers": {
"io-usefulapi-shopmonkey": {
"type": "http",
"url": "https://shopmonkey.usefulapi.io/mcp"
}
}
} [mcp_servers.io-usefulapi-shopmonkey] url = "https://shopmonkey.usefulapi.io/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"io-usefulapi-shopmonkey": {
"type": "remote",
"url": "https://shopmonkey.usefulapi.io/mcp",
"enabled": true
}
}
} openclaw mcp add io-usefulapi-shopmonkey --url 'https://shopmonkey.usefulapi.io/mcp' --transport streamable-http
mcp_servers:
io-usefulapi-shopmonkey:
url: "https://shopmonkey.usefulapi.io/mcp" {
"McpServers": {
"io-usefulapi-shopmonkey": {
"Transport": "http",
"Url": "https://shopmonkey.usefulapi.io/mcp"
}
}
} assistant mcp add io-usefulapi-shopmonkey -t streamable-http -u 'https://shopmonkey.usefulapi.io/mcp'
{
"mcpServers": {
"io-usefulapi-shopmonkey": {
"type": "http",
"url": "https://shopmonkey.usefulapi.io/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 3 Oct 26 −58
- Endpoint reachability: reachable → not serving MCP ▼ security
- Stability: 0.07 → unverified ▼ security
- Tool safety: pass → unverified ▼ security
- HTTPS: pass → unverified ▼ security
- Authorization: pass → unverified ▼ security
- Transport: pass → fail ▼ security
- Capabilities: fail → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- 2 Oct 26 0
- Server version: 1.3.0 → 1.5.1 functional
- 1 Oct 26 +5
- HTTPS: unverified → pass ▲ security
- Stability: unverified → 0.03 ▲ functional
- Server version: 1.0.0 → 1.3.0 functional
- 30 Sept 26 +53
- Authorization: unverified → pass ▲ security
- Injection markers: unverified → pass ▲ security
- Transport: fail → pass ▲ security
- First check of Judged manipulation: pass security
- First check of Authorization: partial security
- MCP protocol: unverified → fail ▼ functional
- Tool coverage: unverified → 100 ▲ functional
- First check of Schema quality: fail functional
- First check of Schema quality: excellent functional
- First check of Destructive annotations: pass functional
- First check of Schema quality: fail functional
- First check of Tool coverage: 100 functional
- 29 Sept 26 18
First indexed and scored.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 4 Oct 2026 · Probed https://shopmonkey.usefulapi.io/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=usefulapi.io | CN=WE1,O=Google Trust Services,C=US | 13 Sept 2026 | 12 Dec 2026 | ECDSA 256 | ECDSA-SHA256 | d9be3287b0fde9630e825ba1f79bff3f |
| SANs: usefulapi.io, *.usefulapi.io | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of shopmonkey.usefulapi.io. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| io. | present | 57355 | 8 | Verified |
| usefulapi.io. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication Inconclusive
We could not reach the endpoint well enough to judge its authorisation posture.
| Result | Inconclusive |
|---|---|
| HTTP status | 429 |
| Header | Value |
|---|---|
| x-frame-options | SAMEORIGIN |
| referrer-policy | same-origin |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://shopmonkey.usefulapi.io/mcp | HTTP error | 429 | |
| http (plaintext) | http://shopmonkey.usefulapi.io/mcp | Inconclusive | 429 |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
shopmonkey_add_customer_email Add an email to a customer ~115
Add an email address to an existing customer, optionally as their primary address. Shopmonkey: POST /v3/customer/:id/email.
| Name | Type | Req | Description |
|---|---|---|---|
| customerId | string | yes | The customer id. |
| string | yes | The email address. | |
| locationId | string | – | The shop location id (see shopmonkey_get_current_user for the key's own location). |
| primary | boolean | – | Make this the customer's primary email. |
| subscribed | boolean | – | Whether the customer receives messages at this address. |
No output schema declared.
No examples provided.
shopmonkey_create_appointment Book an appointment ~248
Book an appointment on the shop calendar, optionally for a customer, vehicle and order and assigned to technicians. Confirmation/reminder messages are only sent if you ask. Shopmonkey: POST /v3/appointment.
| Name | Type | Req | Description |
|---|---|---|---|
| allDay | boolean | – | All-day appointment. |
| color | string | – | Calendar color. Default blue. |
| customerId | string | – | The customer's id. |
| endDate | string | yes | End, ISO 8601 date-time. |
| name | string | yes | What the appointment is for, e.g. 'Oil change'. |
| note | string | – | Notes for the appointment. |
| orderId | string | – | A work order to link. |
| sendConfirmation | boolean | – | Send the customer a confirmation now. |
| sendReminder | boolean | – | Send the customer a reminder before the appointment. |
| startDate | string | yes | Start, ISO 8601 date-time. |
| technicianIds | array | – | User ids of the assigned technicians. |
| useEmail | boolean | – | Use email for confirmation/reminder. |
| useSMS | boolean | – | Use SMS for confirmation/reminder. |
| vehicleId | string | – | The vehicle's id. |
No output schema declared.
No examples provided.
shopmonkey_create_customer Create a customer ~300
Create a customer (a person) or a fleet account. Add an email afterwards with shopmonkey_add_customer_email. Shopmonkey: POST /v3/customer.
| Name | Type | Req | Description |
|---|---|---|---|
| address1 | string | – | Street address, line 1. |
| address2 | string | – | Street address, line 2. |
| city | string | – | City. |
| companyName | string | – | Company name (for fleet / business customers). |
| country | string | – | ISO 3166-1 alpha-2 country code, e.g. US or CA. |
| customerType | string | yes | Customer (individual) or Fleet (business account). |
| discountPercent | number | – | Default discount percent. |
| externalId | string | – | Your own id for this customer in another system. |
| firstName | string | – | First name. |
| lastName | string | – | Last name. |
| locationId | string | – | The shop location id (see shopmonkey_get_current_user for the key's own location). |
| note | string | – | Internal note on the customer. |
| postalCode | string | – | Postal / ZIP code. |
| preferredContactMethod | string | – | SMS, Email or All. |
| preferredLanguage | string | – | en, en_US, fr_CA or es_MX. |
| state | string | – | State / province. |
| taxExempt | boolean | – | US tax exemption. |
| website | string | – | Website. |
No output schema declared.
No examples provided.
shopmonkey_create_order Create an order ~210
Open a new work order (it starts as an estimate) for a customer and vehicle. Add services in the Shopmonkey UI. Shopmonkey: POST /v3/order.
| Name | Type | Req | Description |
|---|---|---|---|
| complaint | string | – | The customer's complaint (reason for visit). |
| customerId | string | – | The customer the order is for. |
| dueDate | string | – | When the vehicle is promised, ISO 8601 date-time. |
| locationId | string | – | The shop location id (see shopmonkey_get_current_user for the key's own location). |
| name | string | – | Order name / title. |
| purchaseOrderNumber | string | – | Customer PO number. |
| recommendation | string | – | The shop's recommendation. |
| serviceWriterId | string | – | User id of the service writer. |
| vehicleId | string | – | The vehicle being worked on. |
| workflowStatusId | string | – | Workflow status (board column) id — see shopmonkey_list_workflow_statuses. |
No output schema declared.
No examples provided.
shopmonkey_create_vehicle Create a vehicle ~228
Create a vehicle, optionally attached to a customer. Shopmonkey: POST /v3/vehicle.
| Name | Type | Req | Description |
|---|---|---|---|
| color | string | – | Vehicle color. |
| customerId | string | – | The owning customer's id. |
| engine | string | – | Engine description. |
| licensePlate | string | – | License plate. |
| licensePlateState | string | – | License plate state / province. |
| locationId | string | – | The shop location id (see shopmonkey_get_current_user for the key's own location). |
| make | string | – | Make, e.g. Toyota. |
| mileage | number | – | Current odometer reading. |
| model | string | – | Model, e.g. Camry. |
| note | string | – | Internal note on the vehicle. |
| size | string | yes | LightDuty (cars, light trucks), HeavyDuty, or Other. |
| submodel | string | – | Submodel / trim, e.g. LE. |
| unit | string | – | Fleet unit number. |
| vin | string | – | Vehicle identification number. |
| year | integer | – | Model year. |
No output schema declared.
No examples provided.
shopmonkey_find_customers_by_email Find customers by email ~68
Find the customers that own any of the given email addresses. Shopmonkey: POST /v3/customer/email/search.
| Name | Type | Req | Description |
|---|---|---|---|
| emails | array | yes | Email addresses to look up. |
| excludeCustomerId | string | – | A customer id to leave out of the results. |
No output schema declared.
No examples provided.
shopmonkey_find_customers_by_phone Find customers by phone number ~79
Find the customers that own any of the given phone numbers — the usual way to identify a caller. Shopmonkey: POST /v3/customer/phone_number/search.
| Name | Type | Req | Description |
|---|---|---|---|
| excludeCustomerId | string | – | A customer id to leave out of the results. |
| phoneNumbers | array | yes | Phone numbers to look up. |
No output schema declared.
No examples provided.
shopmonkey_get_current_user Get the current user ~58
Fetch the user this API key acts as — id, name, company, default location and permissions. A cheap way to confirm the key works and to find your locationId. Shopmonkey: GET /v3/user/me.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
shopmonkey_get_customer Get one customer ~56
Fetch a single customer by id — contact details, emails, phone numbers, counts of vehicles/orders/appointments. Shopmonkey: GET /v3/customer/:id.
| Name | Type | Req | Description |
|---|---|---|---|
| customerId | string | yes | The customer id. |
No output schema declared.
No examples provided.
shopmonkey_get_order Get one order ~63
Fetch a single work order by id — customer, vehicle, complaint, totals (parts/labor/tax in cents), payment state and profitability. Shopmonkey: GET /v3/order/:id.
| Name | Type | Req | Description |
|---|---|---|---|
| orderId | string | yes | The order id. |
No output schema declared.
No examples provided.
shopmonkey_get_vehicle Get one vehicle ~50
Fetch a single vehicle by id, including its mileage and tire-pressure logs. Shopmonkey: GET /v3/vehicle/:id.
| Name | Type | Req | Description |
|---|---|---|---|
| vehicleId | string | yes | The vehicle id. |
No output schema declared.
No examples provided.
shopmonkey_list_canned_services List canned services ~85
List the shop's canned services (reusable job templates like 'Oil change') with their labor, parts and fees and total in cents. Shopmonkey: GET /v3/canned_service.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum number of records to return. |
| skip | integer | – | Number of records to skip, for paging (use with limit). |
No output schema declared.
No examples provided.
shopmonkey_list_customer_orders List a customer's orders ~87
List a customer's work orders (estimates, repair orders, invoices) — their service history. Shopmonkey: GET /v3/customer/:id/order.
| Name | Type | Req | Description |
|---|---|---|---|
| customerId | string | yes | The customer id. |
| limit | integer | – | Maximum number of records to return. |
| skip | integer | – | Number of records to skip, for paging (use with limit). |
No output schema declared.
No examples provided.
shopmonkey_list_customer_vehicles List a customer's vehicles ~89
List the vehicles owned by a customer (year/make/model, VIN, plate, mileage). Shopmonkey: GET /v3/customer/:id/vehicle.
| Name | Type | Req | Description |
|---|---|---|---|
| customerId | string | yes | The customer id. |
| limit | integer | – | Maximum number of records to return. |
| skip | integer | – | Number of records to skip, for paging (use with limit). |
No output schema declared.
No examples provided.
shopmonkey_list_order_services List an order's services ~68
List the services (jobs) on a work order with their line items — labor, parts, tires, fees, subcontracts — authorization status and totals. Shopmonkey: GET /v3/order/:orderId/service.
| Name | Type | Req | Description |
|---|---|---|---|
| orderId | string | yes | The order id. |
No output schema declared.
No examples provided.
shopmonkey_list_orders List orders ~101
List work orders for the shop, paged. Each order carries its number, status flags (authorized, invoiced, paid), totals in cents, workflow status and assigned technicians. For one customer's orders use shopmonkey_list_customer_orders. Shopmonkey: GET /v3/order.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum number of records to return. |
| skip | integer | – | Number of records to skip, for paging (use with limit). |
No output schema declared.
No examples provided.
shopmonkey_list_users List users ~77
List the shop's users (service writers, technicians, admins) — the ids to use for technicians and service writers. Shopmonkey: GET /v3/user.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum number of records to return. |
| skip | integer | – | Number of records to skip, for paging (use with limit). |
No output schema declared.
No examples provided.
shopmonkey_list_workflow_statuses List workflow statuses ~91
List the workflow statuses (the columns of the shop's work-order board) with their position. Use the id to move an order with shopmonkey_update_order. Shopmonkey: GET /v3/workflow_status.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum number of records to return. |
| skip | integer | – | Number of records to skip, for paging (use with limit). |
No output schema declared.
No examples provided.
shopmonkey_search_appointments Search appointments ~234
Search the appointment calendar by date range, customer, order or technician. Returns appointments with their customer. Shopmonkey: POST /v3/appointment/search.
| Name | Type | Req | Description |
|---|---|---|---|
| customerId | string | – | Only this customer's appointments. |
| endFrom | string | – | Appointments ending at or after this ISO 8601 date-time. |
| endTo | string | – | Appointments ending at or before this ISO 8601 date-time. |
| includeUnassigned | boolean | – | With technicians, also include unassigned appointments. |
| limit | integer | – | Maximum number of records to return. |
| orderId | string | – | Only appointments linked to this order. |
| skip | integer | – | Number of records to skip, for paging (use with limit). |
| sort | string | – | Sort by start date. Default asc. |
| startFrom | string | – | Appointments starting at or after this ISO 8601 date-time. |
| startTo | string | – | Appointments starting at or before this ISO 8601 date-time. |
| technicians | array | – | Only appointments assigned to these technician (user) ids. |
No output schema declared.
No examples provided.
shopmonkey_search_customers Search customers ~145
Search customers with a server-side filter, sort and paging. Returns customers with their emails and phone numbers. Shopmonkey: POST /v3/customer/search.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum number of records to return. |
| orderBy | object | – | Sort instructions keyed by field name, e.g. {"createdDate": "desc"}. |
| skip | integer | – | Number of records to skip, for paging (use with limit). |
| where | object | – | Filter object applied server-side, keyed by field name, e.g. {"lastName": "Smith"} or {"createdDate": {"gte": "2026-01-01"}}. |
No output schema declared.
No examples provided.
shopmonkey_search_inventory_parts Search inventory parts ~173
Search the parts inventory — name, part number, SKU, quantity on hand/available/reserved, retail and wholesale cost in cents, bin location, brand and vendor. Filter e.g. {"sku": "ABC-123"}. Shopmonkey: POST /v3/inventory_part/search.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Maximum number of records to return. |
| orderBy | object | – | Sort instructions keyed by field name, e.g. {"createdDate": "desc"}. |
| skip | integer | – | Number of records to skip, for paging (use with limit). |
| where | object | – | Filter object applied server-side, keyed by field name, e.g. {"lastName": "Smith"} or {"createdDate": {"gte": "2026-01-01"}}. |
No output schema declared.
No examples provided.
shopmonkey_update_customer Update a customer ~265
Update a customer's name, address, note or preferences. Only the fields you pass are sent. Shopmonkey: PUT /v3/customer/:id.
| Name | Type | Req | Description |
|---|---|---|---|
| address1 | string | – | Street address, line 1. |
| address2 | string | – | Street address, line 2. |
| city | string | – | City. |
| companyName | string | – | Company name (for fleet / business customers). |
| country | string | – | ISO 3166-1 alpha-2 country code, e.g. US or CA. |
| customerId | string | yes | The customer id. |
| discountPercent | number | – | Default discount percent. |
| externalId | string | – | Your own id for this customer in another system. |
| firstName | string | – | First name. |
| lastName | string | – | Last name. |
| note | string | – | Internal note on the customer. |
| postalCode | string | – | Postal / ZIP code. |
| preferredContactMethod | string | – | SMS, Email or All. |
| preferredLanguage | string | – | en, en_US, fr_CA or es_MX. |
| state | string | – | State / province. |
| taxExempt | boolean | – | US tax exemption. |
| website | string | – | Website. |
No output schema declared.
No examples provided.
shopmonkey_update_order Update an order ~249
Update a work order — move it to another workflow status, change its status (Estimate, RepairOrder, Invoice), edit complaint/recommendation, due date, service writer, or archive it. Only the fields you pass are sent. Shopmonkey: PUT /v3/order/:id.
| Name | Type | Req | Description |
|---|---|---|---|
| archived | boolean | – | Archive (true) or unarchive (false) the order. |
| complaint | string | – | The customer's complaint (reason for visit). |
| customerId | string | – | The customer the order is for. |
| dueDate | string | – | When the vehicle is promised, ISO 8601 date-time. |
| name | string | – | Order name / title. |
| orderId | string | yes | The order id. |
| purchaseOrderNumber | string | – | Customer PO number. |
| recommendation | string | – | The shop's recommendation. |
| serviceWriterId | string | – | User id of the service writer. |
| status | string | – | Estimate, RepairOrder or Invoice. |
| vehicleId | string | – | The vehicle being worked on. |
| workflowStatusId | string | – | Workflow status (board column) id — see shopmonkey_list_workflow_statuses. |
No output schema declared.
No examples provided.
What is the io.usefulapi/shopmonkey MCP server?
io.usefulapi/shopmonkey is an MCP server listed in the public MCP registry as io.usefulapi/shopmonkey. Look up shop customers, vehicles, work orders and parts, and create orders or book appointments. This page covers its hosted endpoint (https://shopmonkey.usefulapi.io/mcp).
Is the io.usefulapi/shopmonkey MCP server safe to use?
io.usefulapi/shopmonkey scores 18 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the io.usefulapi/shopmonkey MCP server expose?
io.usefulapi/shopmonkey exposes 23 tools: shopmonkey_get_current_user, shopmonkey_search_customers, shopmonkey_find_customers_by_phone, shopmonkey_find_customers_by_email, shopmonkey_get_customer, and 18 more. Their descriptions and schemas cost roughly 3,139 tokens of context every time the server is loaded.
Does the io.usefulapi/shopmonkey MCP server require authentication?
Its publisher declares no required credentials for io.usefulapi/shopmonkey. We have not been able to confirm that against the live endpoint, and a server can require authorisation without declaring it here.
Is the io.usefulapi/shopmonkey MCP server still maintained?
io.usefulapi/shopmonkey is still listed as active in the MCP registry. We last reached this channel on 4 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.