Is the Premierletters MCP server down?

mcp-registry/com.premierletters/mcp · v1.0.0

healthy
Last checked 2026-10-21 08:36 UTC · handshake 455ms

As of 2026-10-21 08:36 UTC, the Premierletters MCP server is up with a Glimind reliability score of 97/100 (grade A). Over the last 30 days it answered 100% of Glimind's liveness checks.

uptime (30d checks)
100%
checks observed
4,120
outages (90d)
0
tools
12

Send real pen-written letters, cards and postcards: quote, preview, order and track by mail.

Install Premierletters MCP server

Add to Cursor Add to VS Code

Claude Code

claude mcp add --transport http premierletters-mcp-server https://www.premierletters.com/api/mcp

Claude Desktop · Windsurf · Cline (mcpServers JSON)

{
  "mcpServers": {
    "premierletters-mcp-server": {
      "type": "http",
      "url": "https://www.premierletters.com/api/mcp"
    }
  }
}

Third-party server, listed as discovered. Review its source before installing.

Agent-readiness: C (76/100)

C (76/100): 0 error(s), 3 warning(s) across 12 tool(s); ~2,820 tokens of tool definitions.
Scores higher than 13% of 15,474 MCP servers Glimind has audited.
Its tool list costs an agent ~2,820 tokens per session — more than 50% of servers.
75 → 76 since 2026-10-17
no tool-poisoning patterns
Schemas100
Descriptions78
Safety hints7
Token cost100
Client compatibility70
Protocol100
Reliability100
Stability84

What to fix (5)

12 of 12 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 →

Tools: check_connection, connect_account, create_order, create_topup_link, get_balance and 7 more

2 parameter(s) across 2 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 →

Tools: create_order, verify_address

2 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 →

Tools: create_order, create_topup_link

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 →

In the last 30 days: 0 tool(s) removed and 4 schema change(s).

Add new tools or optional parameters instead of renaming or removing; deprecate first (say so in the description) and remove later. Agents cache tool contracts. How to fix →

Auto-fix: 11 corrected tool definitions

Paste-ready definitions with the problems above fixed. Changes marked verify need a human look. 2 tool(s) still need parameter descriptions written by someone who knows the API. All of them as JSON: /v1/readiness/mcp-registry%2Fcom.premierletters%2Fmcp/fixes

check_connection 1 change
{
  "name": "check_connection",
  "description": "Check whether the user approved a connect_account request. Returns status pending, denied, expired or claimed, or, exactly once, status approved with the api_key. Poll every 10-30 seconds.",
  "inputSchema": {
    "type": "object",
    "required": [
      "request_id",
      "poll_secret"
    ],
    "properties": {
      "request_id": {
        "type": "string",
        "description": "request_id from connect_account."
      },
      "poll_secret": {
        "type": "string",
        "description": "poll_secret from connect_account."
      }
    }
  },
  "annotations": {
    "readOnlyHint": true
  }
}
create_order 1 change
{
  "name": "create_order",
  "description": "Create and pay for a Premier Letters order — a real, handwritten letter mailed via USPS. Requires a Premier Letters API key. Use get_pricing or preview_letter first to confirm the price. For payment, \"card_on_file\" charges the caller's saved card immediately, \"balance\" pays from the prepaid account balance (no small-order handling fee; fails with insufficient_balance when short), or \"checkout_session\" returns a checkout_url for the human to complete payment in a browser. Envelope orders use retu",
  "inputSchema": {
    "type": "object",
    "required": [
      "message"
    ],
    "properties": {
      "message": {
        "type": "string",
        "description": "The letter text. Supports {{first_name}}, {{last_name}}, {{greeting}} merge fields per-recipient."
      },
      "options": {
        "type": "object",
        "description": "handwriting_style, paper_type, product_type, mailing_option, authenticity_preset, include_letter, include_envelope, copies, output_mode (\"handwritten\" default, or \"printed_bw\" / \"printed_color\" to print the letter body) and envelope_output_mode (null default = hand-addressed, or \"printed_bw\" / \"printed_color\") — see /openapi.json for the full field list."
      },
      "payment": {
        "type": "object",
        "properties": {
          "method": {
            "enum": [
              "card_on_file",
              "checkout_session",
              "balance"
            ],
            "type": "string",
            "description": "Defaults to \"checkout_session\"."
          },
          "return_url": {
            "type": "string"
          }
        }
      },
      "recipients": {
        "type": "array",
        "items": {
          "type": "object",
          "properties": {
            "zip": {
              "type": "string"
            },
            "city": {
              "type": "string"
            },
            "state": {
              "type": "string"
            },
            "last_name": {
              "type": "string"
            },
            "first_name": {
              "type": "string"
            },
            "address_line1": {
              "type": "string"
            },
            "address_line2": {
              "type": "string"
            },
            "custom_fields": {
              "type": "object"
            }
          }
        },
        "description": "One or more recipients. At least one is required unless options.product_type is a letter/card with no envelope."
      },
      "skip_invalid": {
        "type": "boolean",
        "description": "When true, invalid recipients are skipped instead of failing the whole order."
      },
      "return_address": {
        "type": "object",
        "properties": {
          "zip": {
            "type": "string",
            "description": "5-digit ZIP or ZIP+4."
          },
          "city": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "state": {
            "type": "string",
            "description": "2-letter US state code."
          },
          "company": {
            "type": "string"
          },
          "address_line1": {
            "type": "string"
          },
          "address_line2": {
            "type": "string"
          }
        },
        "description": "Return address written on the envelope. Omit to use the account's default return address. Required unless the account has a default or no_return_address_ack is true. name, address_line1, city, state and zip are required unless return_address_partial_ok is true."
      },
      "idempotency_key": {
        "type": "string",
        "description": "Client-supplied key (1–255 chars). Repeating a call with the same key returns the original order instead of creating a second one. Always set this when you might retry."
      },
      "no_return_address_ack": {
        "type": "boolean",
        "description": "Send with no return address at all. Only honoured when no return_address is given and the account has no default. Undeliverable mail is then destroyed."
      },
      "return_address_partial_ok": {
        "type": "boolean",
        "description": "Send return_address exactly as written although it is incomplete: at least one of name, company, address_line1, city, state, zip. Only the filled lines print (a name alone is fine). Without it an incomplete return_address is refused."
      }
    }
  },
  "annotations": {
    "readOnlyHint": false,
    "destructiveHint": false,
    "idempotentHint": false
  }
}
create_topup_link 1 change
{
  "name": "create_topup_link",
  "description": "Create a Stripe Checkout link that adds prepaid credit (plus any bonus tier) to the authenticated account. Give checkout_url to the human to pay in a browser; the balance updates once they pay (check with get_balance). amount_cents must be a whole number between min_cents and max_cents from get_balance.",
  "inputSchema": {
    "type": "object",
    "required": [
      "amount_cents"
    ],
    "properties": {
      "amount_cents": {
        "type": "integer",
        "description": "Amount to add, in cents (e.g. 5000 for $50.00)."
      }
    }
  },
  "annotations": {
    "readOnlyHint": false,
    "destructiveHint": false,
    "idempotentHint": false
  }
}

Get alerted

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.premierletters/mcp"],"email":"[email protected]"}'

Agents: watch_tool({"toolId": "mcp-registry/com.premierletters/mcp"}) over MCP.

Passed

Largest tool definitions

Static 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:

Markdown
[![MCP agent-readiness](https://glimind.com/v1/readiness/badge/mcp-registry%2Fcom.premierletters%2Fmcp.svg)](https://glimind.com/server/mcp-registry%2Fcom.premierletters%2Fmcp?ref=badge)
HTML
<a href="https://glimind.com/server/mcp-registry%2Fcom.premierletters%2Fmcp?ref=badge"><img src="https://glimind.com/v1/readiness/badge/mcp-registry%2Fcom.premierletters%2Fmcp.svg" alt="MCP agent-readiness"></a>
reStructuredText
.. image:: https://glimind.com/v1/readiness/badge/mcp-registry%2Fcom.premierletters%2Fmcp.svg
   :target: https://glimind.com/server/mcp-registry%2Fcom.premierletters%2Fmcp?ref=badge
   :alt: MCP agent-readiness

Tool-definition log

Glimind records every version of this server's tool definitions in a signed, append-only transparency log. Current manifest sha256:a42b668b8a3bf943…, first seen 2026-10-20, included at leaf 33869 of 38,562. Version history · verify what your client received.

Tools (12)

Compare: most reliable payments servers · most reliable data servers · most reliable finance servers · most reliable media servers · most reliable productivity servers

Know before your agent calls it

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.

Add Glimind — free, no signup:

Add to Cursor Add to VS Code

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"
    }
  }
}

FAQ

Is the Premierletters MCP server down right now?

As of 2026-10-21 08:36 UTC, the Premierletters MCP server is up with a Glimind reliability score of 97/100 (grade A). Over the last 30 days it answered 100% of Glimind's liveness checks.

How many tools does Premierletters MCP server provide?

Premierletters MCP server advertises 12 tools, including check_connection, connect_account, create_order, create_topup_link, get_balance.

How do I install Premierletters MCP server?

Point your MCP client at this streamable-http endpoint: https://www.premierletters.com/api/mcp

Is the Premierletters MCP server safe to connect to an AI agent?

Glimind scanned all 12 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.

Operator of Premierletters MCP server?

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.

Feedback
Help us improve