ShipNote
Server Details
Save thank-you postcards as a draft from a registry or guest list. ShipNote prints and mails them.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 3 tools
Each tool maps to a distinct verb on a distinct resource: creating a draft, listing available designs/occasions, and pricing a batch. The descriptions explicitly contrast the side effects (create_draft writes, the other two are read-only), leaving little room for misselection.
All three names follow a strict verb_noun snake_case pattern (create_draft, list_card_designs, quote_price) with no casing or style deviations.
Three tools is lean but coherent for a server whose real work (address entry, review, payment, mailing) is deliberately handed off to shipnote.co. It sits at the thin edge of the comfortable range, but no tool is redundant.
The core flow of discover designs -> price -> create draft is covered, and no send tool is needed since the link handles payment. However, there is no way to retrieve, list, or check the status of an existing draft, so an agent cannot follow up after creating one — a notable gap for a task that is explicitly non-transactional.
Available Tools
3 toolscreate_draftSave cards as a draftAInspect
Save a DRAFT of postcards, from a single card to one person (e.g. "send a thank-you postcard to my aunt") to a whole registry or guest list, and return a link where the sender adds their return address, reviews every card, and pays on shipnote.co. This tool never mails a card and never charges anyone. Each recipient is one card (one per household for a list): the name as it appears on the card, the full US mailing address as "Street, City, ST ZIP" (empty if unknown), and the gift as a short noun phrase without the store name (e.g. "stand mixer", not "KitchenAid stand mixer from Target"). senderName is the name the sender signs cards with; without it, the default message stays unsigned until the sender fills it in on shipnote.co. Up to 500 recipients per draft. Each call makes a new draft with a new link. This tool can't take a picture. A photo card (the sender's own picture as the whole front) is saved with design image-only, and the sender adds the photo on shipnote.co after opening the link; a photo inside a design uses a design marked (1 photo). list_card_designs also shows designs that need no photo.
| Name | Required | Description | Default |
|---|---|---|---|
| design | No | A design id from list_card_designs for that occasion. | |
| message | No | The card message, with [RECIPIENT] and [GIFT_NAME] as placeholders ShipNote fills in for each card. Defaults to the occasion's standard message. | |
| occasion | Yes | Supported occasion id from list_card_designs. | |
| recipients | Yes | ||
| senderName | No | How the sender signs, e.g. "Sam & Alex". Replaces [YOUR NAME] and becomes the return-address name. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the annotations: every call creates a new draft with a new link (non-idempotent behavior made concrete), up to 500 recipients per draft, one card per household, no photo capture, and how photo cards are handled. It also discloses the senderName default (unsigned message) that affects the saved artifact.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The core purpose and the no-mail/no-charge guardrail are front-loaded, and nearly every sentence carries a distinct rule. It is a dense single paragraph though, and the photo-handling tail could be tighter or bulleted without losing information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a non-idempotent creation tool with no output schema, the description covers what matters: the returned link, the 500-recipient cap, per-household semantics, placeholder behavior, and photo limitations. An agent can call it correctly without further context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 80% schema coverage the baseline is 3, but the description adds real meaning the schema lacks: the recipient address format ("Street, City, ST ZIP", empty if unknown), giftName as a short noun phrase without the store name, name as it appears on the card, and the no-senderName default. It does not add much on the design or occasion params beyond pointing at list_card_designs.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource (save a DRAFT of postcards) plus the full scope from a single card to a whole guest list, and explicitly says what it does not do (never mails, never charges). It also points to list_card_designs for design ids, which separates it from that sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives clear context: use it to produce a draft link the sender later opens to add a return address, review, and pay, and it explicitly rules out mailing and charging. It names list_card_designs as the source for designs and occasions, but never mentions quote_price, leaving the pricing alternative implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_card_designsBrowse card designsARead-onlyInspect
List the occasions ShipNote makes postcards for, and the card designs available for one occasion, each with the id that create_draft accepts as design. Read-only: it saves nothing.
| Name | Required | Description | Default |
|---|---|---|---|
| occasion | No | Occasion id from this tool's occasion list, e.g. wedding, baby-shower, thank-you. Without it, the tool returns the list of occasions. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnly, non-destructive, and closed-world, so the 'Read-only: it saves nothing' sentence is largely redundant. However, the description adds genuinely new behavioral content beyond the annotations: the return values are design ids specifically formatted for create_draft, which is the key integration detail an agent needs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the primary action and both modes, with no padding. The trailing 'Read-only: it saves nothing' is the one clause that duplicates annotations, a minor cost.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With one optional parameter, no output schema, and full schema description coverage, the description supplies what's missing: the shape of returned data (design ids) and its downstream use. Only the exact return structure (fields besides id) is left implicit, which is acceptable for a browse tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the occasion parameter and its dual-mode behavior are already fully documented in the schema. The description restates the same dual-mode semantics at the tool level, reinforcing rather than extending what the schema provides. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (list) and two clearly delineated resources (occasions, card designs for one occasion), and distinguishes this from the sibling create_draft by naming it as the consumer of the returned design id. An agent can tell exactly what this returns without opening the schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is clear from context: call without occasion to discover valid occasion ids, then call again with one to get design ids for create_draft. There is no explicit statement of when not to use it or which sibling to prefer for a different need, so it stops short of full routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
quote_priceGet a price quoteARead-onlyInspect
Price for printing, stamping and mailing a number of ShipNote postcards within the US. Read-only: it saves nothing and charges nothing.
| Name | Required | Description | Default |
|---|---|---|---|
| cardCount | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is covered; the description still adds value by stating it 'saves nothing and charges nothing' and by disclosing the US-only scope, which is a real constraint an agent would otherwise miss. It stops short of describing the returned quote's format or whether prices can vary over time.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with no filler: the service scope comes first and the read-only guarantee second, which is the right order for an agent deciding whether it is safe to call.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter, non-mutating quote tool this is close to sufficient, and annotations cover the safety dimension. The remaining gap is the absence of any output schema combined with no hint about what the returned price looks like (total only, breakdown, currency), which the description could have covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description carries the burden, and it does clarify that the count refers to the number of ShipNote postcards being printed, stamped and mailed. It does not restate or explain the 1–500 bounds or what a quote for a given count includes, leaving the single parameter only partially enriched.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Concretely names the priced service (printing, stamping and mailing ShipNote postcards) and the geographic scope (within the US), so the agent knows exactly what question this tool answers. It does not explicitly contrast itself with create_draft or list_card_designs, but the purpose is unambiguous on its own.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the name and the 'price quote' framing: call it to estimate cost before ordering. There is no explicit when-to-use guidance, no mention of a prerequisite such as an existing card design, and no named alternative for a different kind of quote.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
3 tool updates
- First observed
create_draft - First observed
list_card_designs - First observed
quote_price
Related MCP Connectors
Print and mail 5x7 holiday and thank-you photo cards to a US address list. $2.49/card incl. postage.
Design letters and cards, and prepare, review, pay for, and send letters and postcards.
Send real handwritten postcards, letters, notecards and gift cards from your AI assistant, preview every piece and its price first, and track QR scan results.
Send real pen-written letters, cards and postcards: quote, preview, order and track by mail.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to start unpaid postcard drafts from photos, notes, and recipient details, then hand off a link for review, payment, and mailing.MIT
- AlicenseAqualityDmaintenanceSend real physical postcards worldwide via AI agents. Supports single and bulk send (up to 500 recipients), balance checking, delivery tracking, and volume pricing from $0.72/card.56 npm5MIT
- FlicenseNot gradedqualityDmaintenanceEnables users to manage wedding preparation tasks including timeline generation, budget review, vendor quote comparison, role assignment briefs, and drafting messages for family, vendors, and friends.-
- AlicenseAqualityBmaintenanceEnables AI assistants to draft wedding invitation websites by creating unpaid drafts, listing templates, and retrieving pricing information.3MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.