postals-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| POSTALS_API_KEY | Yes | Your API key from postals.ai/developers. Required. | |
| POSTALS_TEST_MODE | No | true = skip real sends, return mock responses. | false |
| POSTALS_SENDER_ZIP | No | Default sender ZIP. Recommended. | |
| POSTALS_DAILY_LIMIT | No | Max cards per day. Set low while developing. | 50 |
| POSTALS_SENDER_CITY | No | Default sender city. Recommended. | |
| POSTALS_SENDER_NAME | No | Default sender full name. Recommended. | |
| CLOUDFLARE_API_TOKEN | No | Required with CLOUDFLARE_ACCOUNT_ID. | |
| POSTALS_SENDER_STATE | No | Default sender 2-letter state code. Recommended. | |
| CLOUDFLARE_ACCOUNT_ID | No | Enables AI message generation via Llama 3.1. | |
| POSTALS_SENDER_ADDRESS | No | Default sender street address. Recommended. | |
| POSTALS_HANDWRITING_STYLE | No | Default handwriting font. | Joyful Jennifer |
| POSTALS_DEFAULT_CARD_IMAGE | No | HTTPS URL of default card front image (used when caller omits front_image_url). Recommended. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| send_postcardA | Send a physical handwritten postcard to a US mailing address. Postals prints it with real robotic handwriting (pen and ink) and mails it via USPS. Delivery in 3-5 business days. Cost: $4.99 per card. Provide the recipient's address, a message (max 400 chars), and optionally an image URL for the card front. If no image is provided, uses the configured default card. |
| generate_messageA | Generate a personalized handwritten message for a postcard based on context about the recipient. Returns a ready-to-use message you can pass directly to send_postcard. Uses AI if Cloudflare credentials are configured (CLOUDFLARE_ACCOUNT_ID + CLOUDFLARE_API_TOKEN); otherwise returns a structured prompt you can use to compose the message yourself. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| compose_postcard_message |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 2 tools
The two tools are clearly distinct: one sends a postcard, the other generates a message. No overlap in purpose or functionality, making selection unambiguous.
Both tool names follow a consistent verb_noun pattern: 'send_postcard' and 'generate_message'. This is uniform and predictable.
With only two tools, the server feels minimal. This might be acceptable for a focused niche, but it is on the thin side compared to typical MCP servers that provide more operations like status checking or address validation.
The core functionality of sending a postcard and generating a message is covered, but there's no way to track delivery, cancel, or manage addresses. This leaves notable gaps for a complete lifecycle, though the server might intentionally be minimal.