mcp-registry/com.themassprint/massprint · v1.0.0
As of 2026-10-18 07:56 UTC, the Themassprint Massprint MCP server is up with a Glimind reliability score of 96/100 (grade A). Over the last 30 days it answered 100% of Glimind's liveness checks.
Print-on-demand for agents: upload a PDF, get a printed book delivered in India.
Claude Code
claude mcp add --transport http themassprint-massprint-mcp-server https://themassprint.com/mcp
Claude Desktop · Windsurf · Cline (mcpServers JSON)
{
"mcpServers": {
"themassprint-massprint-mcp-server": {
"type": "http",
"url": "https://themassprint.com/mcp"
}
}
}
Third-party server, listed as discovered. Review its source before installing.
7 of 7 tool(s) carry no readOnlyHint/destructiveHint annotations.
Annotate read-only tools with {"readOnlyHint": true}. Agents and gateways can then run them without a confirmation prompt, and route around destructive ones. How to fix →
3 parameter(s) across 3 tool(s) have no description.
Add a "description" to each parameter with its format and an example ("ISO 8601 date, e.g. 2026-10-17"). This is the commonest cause of wrong arguments on the first call. How to fix →
3 tool(s) look like they change state (create/send/delete/pay…) but declare no destructiveHint.
Set annotations {"readOnlyHint": false, "destructiveHint": true|false, "idempotentHint": …}. Clients use these to ask the user before a side effect and to auto-approve safe reads. How to fix →
Handshake + tools/list takes ~1,517 ms.
Serve tools/list from memory, keep the process warm, and host close to your users. Every new agent session pays this before its first call.
No tool declares an outputSchema.
Declare outputSchema and return structuredContent (MCP 2025-06-18+). Agents can then parse results without guessing, and chain tools reliably. How to fix →
Paste-ready definitions with the problems above fixed. Changes marked verify need a human look. 3 tool(s) still need parameter descriptions written by someone who knows the API. All of them as JSON: /v1/readiness/mcp-registry%2Fcom.themassprint%2Fmassprint/fixes
{
"name": "cancel_order",
"description": "Cancel an order, stopping it before it is printed. With the order_token from create_order this works while the order is awaiting_payment. A platform that sends its own API key (Authorization: Bearer mp_live_...) can additionally cancel an order THAT KEY created while it is confirmed or printing — that is how you stop a press when your customer cancels on your side. shipped and delivered can never be canceled; that is a refund, contact support (see get_catalog). Canceling stops production but mov",
"inputSchema": {
"type": "object",
"required": [
"order_id"
],
"properties": {
"order_id": {
"type": "string"
},
"order_token": {
"type": "string",
"description": "The token returned once by create_order. Optional if you send the API key that created the order instead."
}
},
"additionalProperties": false
},
"annotations": {
"readOnlyHint": false,
"destructiveHint": true,
"idempotentHint": true
}
}{
"name": "create_order",
"description": "Create a print order for a validated upload. Validates everything BEFORE any payment link is minted. Returns { order, order_token } — the order object has order_id, status, amount, and payment_url (the Razorpay link, present while awaiting_payment). Give payment_url to the human to pay (UPI/cards/netbanking). SAVE order_token — it is shown only once and is required for get_order and cancel_order. The order confirms automatically after payment; unpaid orders expire after 72 hours.",
"inputSchema": {
"type": "object",
"required": [
"upload_id",
"format",
"email",
"address"
],
"properties": {
"email": {
"type": "string",
"description": "Buyer email; receives the Razorpay payment notification."
},
"copies": {
"type": "integer",
"default": 1,
"maximum": 20,
"minimum": 1
},
"format": {
"enum": [
"paperback",
"hardcover",
"sticker-a3",
"greeting-card-a5"
],
"type": "string",
"description": "paperback/hardcover: bound storybook (20-60 page PDF). sticker-a3: single-sheet A3 portrait sticker / wall chart (exactly 1 page, 842×1191 pt). greeting-card-a5: folded A5 greeting card, one A4-landscape sheet printed duplex (exactly 2 pages, 859×612 pt incl. 3 mm bleed)."
},
"address": {
"type": "object",
"required": [
"name",
"line1",
"city",
"state",
"pincode",
"phone"
],
"properties": {
"city": {
"type": "string"
},
"name": {
"type": "string"
},
"line1": {
"type": "string"
},
"line2": {
"type": "string"
},
"phone": {
"type": "string",
"description": "India mobile, 10 digits, optional +91 prefix"
},
"state": {
"type": "string"
},
"pincode": {
"type": "string",
"description": "6-digit India PIN code"
}
},
"description": "India shipping address (V1 ships within India only).",
"additionalProperties": false
},
"upload_id": {
"type": "string",
"description": "upload_id of a PDF that passed validation."
}
},
"additionalProperties": false
},
"annotations": {
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false
}
}{
"name": "create_upload",
"description": "Start a PDF upload. Returns {upload_id, put_url, expires_at, max_bytes}. HTTP PUT the raw PDF bytes to put_url (Content-Type: application/pdf, no auth needed — the URL is signed). The PUT response includes the validation report. Then pass upload_id to create_order. Keyless use is bounded per calling origin: 20 create_upload calls per hour, at most 5 unused uploads open at a time, and put_url expires in 2 hours — so PUT the bytes promptly and reuse an upload_id you already hold instead of creatin",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"annotations": {
"readOnlyHint": false,
"destructiveHint": false,
"idempotentHint": false
}
}Get an email or webhook when this server's readiness drops by 10+ points, tool-poisoning text appears, or a tool breaks:
curl -X POST https://glimind.com/v1/subscriptions -H 'content-type: application/json' -d '{"tools":["mcp-registry/com.themassprint/massprint"],"email":"[email protected]"}'Agents: watch_tool({"toolId": "mcp-registry/com.themassprint/massprint"}) over MCP.
create_order ~492 tokensapply_enterprise ~326 tokenscancel_order ~229 tokensget_order ~180 tokenscreate_upload ~172 tokensStatic checks of the advertised tools/list (schema, descriptions, annotations, tool-poisoning patterns, names, size) plus observed protocol, uptime, latency and contract changes. Read-only: no tool is ever called. Weights: schema 15, docs 20, safety 15, efficiency 15, compatibility 15, protocol 5, reliability 10, stability 5. Token counts are estimates (~3.6 characters per token).
Operator? Fix these, then re-check live. Embed the readiness badge:
[](https://glimind.com/server/mcp-registry%2Fcom.themassprint%2Fmassprint?ref=badge)
<a href="https://glimind.com/server/mcp-registry%2Fcom.themassprint%2Fmassprint?ref=badge"><img src="https://glimind.com/v1/readiness/badge/mcp-registry%2Fcom.themassprint%2Fmassprint.svg" alt="MCP agent-readiness"></a>
.. image:: https://glimind.com/v1/readiness/badge/mcp-registry%2Fcom.themassprint%2Fmassprint.svg :target: https://glimind.com/server/mcp-registry%2Fcom.themassprint%2Fmassprint?ref=badge :alt: MCP agent-readiness
Glimind records every version of this server's tool definitions in a signed, append-only transparency log. Current manifest sha256:77c02356c407b24a…, first seen 2026-10-17, included at leaf 14459 of 20,943. Version history · verify what your client received.
Compare: most reliable ecommerce servers · most reliable other servers · most reliable commerce servers · most reliable files servers · most reliable knowledge servers
Glimind tells agents whether a server is up right now and how to call it, then fails over to a live alternative when it isn't.
Claude Code
claude mcp add --transport http glimind https://glimind.com/mcp
Claude Desktop · Windsurf · Cline (mcpServers JSON)
{
"mcpServers": {
"glimind": {
"type": "http",
"url": "https://glimind.com/mcp"
}
}
}
As of 2026-10-18 07:56 UTC, the Themassprint Massprint MCP server is up with a Glimind reliability score of 96/100 (grade A). Over the last 30 days it answered 100% of Glimind's liveness checks.
Themassprint Massprint MCP server advertises 7 tools, including apply_enterprise, cancel_order, create_order, create_upload, get_catalog.
Point your MCP client at this streamable-http endpoint: https://themassprint.com/mcp
Glimind scanned all 7 tool definitions for tool-poisoning patterns — hidden or invisible characters, instructions that override the model, concealment from the user, requests to read credential or MCP config files, conversation exfiltration and cross-tool shadowing — and found none. This checks what the server tells the model, not what its code does; review the source before granting access to sensitive data.
Status page: 90-day uptime, every outage and how long it lasted.
Claim this listing to get the Verified operator marker, a remediation checklist and owner analytics, or embed the live badge from any of the tool pages above. Maintainers: alerts, deploy attestation and monthly reports.
Status is an automated estimate from Glimind's liveness checks (handshake and tool listing only; no tool is ever called) and may lag or differ from your network. Glimind is not affiliated with this server or its operator. Operator? Request a correction or opt out at https://glimind.com/opt-out.