# Thanks.io — MCP server on mcp.ai > Connect your Thanks.io account and use 29 tools for marketing automation straight from your AI agent. Connect with your own API key. thanks.io is a direct mail automation platform that enables users to send personalized postcards, letters, and notecards with handwritten fonts. By: mcp.ai · official Page: https://mcp.ai/thanks_io ## Connect (MCP protocol) Remote MCP endpoint (HTTP, streamable): https://api.mcp.ai/p_thanks_io?ms=1787291400000 Add it as a custom/remote MCP connector, then authenticate when prompted. ## REST API (no MCP client required) Every tool is also a REST endpoint, authed with a workspace API key. Discover: GET https://api.mcp.ai/api/thanks_io/_endpoints # public; lists every endpoint Call: POST https://api.mcp.ai/api/thanks_io/ Authorization: Bearer sk_live_… # create one at https://mcp.ai/settings/api-keys Content-Type: application/json Body: { …args } → { "ok": true, "tool": "", "result": { … } } ## Developer docs How to use (MCP or REST), markdown: https://mcp.ai/thanks_io/skill.md Postman collection (v2.1): https://mcp.ai/thanks_io/postman.json ## Tools - thanks_io_add_recipient_to_mailing_list(city: string, name: string, email?: string, phone?: string, address: string, country: string, address2?: string, province: string, postal_code: string, mailing_list: string) — Tool to add a new recipient to a mailing list. Use after confirming recipient and list IDs. - thanks_io_create_mailing_list(name: string, description: string) — Tool to create a new mailing list. Use when you need to group contacts under a fresh list before adding recipients. - thanks_io_delete_mailing_list(list_id: string) — Tool to delete a mailing list. Use when you need to remove an entire mailing list by its ID. Confirm the list ID before calling. Example: "Delete the mailing list with ID 123e4567-e89b-12d3-a456-42661 - thanks_io_delete_recipient_from_mailing_list(recipient_id: string) — Tool to remove a recipient from a mailing list. Use after confirming the recipient's ID. - thanks_io_delete_sub_account(id: integer) — Tool to delete a specific sub-account by ID. Use when you need to remove an existing sub-account. Confirm the ID before calling. - thanks_io_execute_stored_send(uuid: string, send_type: string) — Tool to execute a previously created stored send. Use after creating a stored send to trigger delivery. The response body is empty; success is indicated by a 200 or 204 status. - thanks_io_list_handwriting_styles() — Tool to retrieve available handwriting styles. Use when selecting a style for handwritten personalization. - thanks_io_list_image_templates(page?: integer, items_per_page?: integer, sub_account_id?: integer) — Tool to retrieve a list of available image templates. Use when you need to browse or select a template for mailings. - thanks_io_list_mailing_lists() — Tool to list all mailing lists. Use when you need to fetch existing lists before managing recipients. - thanks_io_list_message_templates(items_per_page?: integer, sub_account_id?: integer) — Tool to list available message templates. Use when selecting a template for a mailing. - thanks_io_mailing_lists_buy_radius_search(address: string, append_data?: boolean, postal_code: string, record_count: integer, record_types?: string, include_condos?: boolean, mailing_list_id?: integer, use_property_owner?: boolean) — Tool to buy or append a radius search mailing list based on address and radius. Use when you need targeted mailing lists around a specified address. - thanks_io_order_preview_letter(message?: string, preview: boolean, recipients?: object[], return_city?: string, return_name?: string, return_state?: string, mailing_lists?: integer[], return_address?: string, return_address2?: string, additional_pages?: string, handwriting_style?: integer, return_postal_code?: string, custom_background_image?: string) — Tool to preview a letter send as PDF. Use when you need to confirm letter content before placing the final order. Returns PDF preview URLs. - thanks_io_order_preview_notecard(message: string, preview: boolean, recipients: object[], image_template: integer, handwriting_style: integer) — Tool to preview a notecard send. Use when you need front and back images before placing an actual notecard order. - thanks_io_order_preview_windowless_letter(message?: string, preview: boolean, recipients: object[], front_image_url: string, message_template?: string, handwriting_color?: string, handwriting_style?: string, additional_pages_url?: string) — Tool to preview a windowless letter send. Use when you need a PDF preview of the cover-only letter before placing an order. - thanks_io_orders_list(items_per_page?: integer, sub_account_id?: integer) — Tool to list recent orders. Use after placing orders to fetch the latest history, optionally filtering by sub-account or limiting the result count. - thanks_io_orders_search_by_address(page?: integer, address: string, per_page?: integer) — Tool to search orders by recipient street address. Use when you need to find all orders sent to a specific street address. - thanks_io_recipients_create_multi(list_id: string, recipients: object[]) — Tool to create multiple recipients at once in a mailing list. Use when batching recipient additions for efficiency. - thanks_io_recipients_delete_by_address(address: string, postal_code: string) — Tool to delete a recipient by address and postal code. Use when you need to remove a recipient without their ID. - thanks_io_recipients_get_details(recipient_id: string) — Tool to get details for a specific recipient by ID. Use to verify a recipient’s full address and custom fields. - thanks_io_recipients_search_by_email(email: string, limit?: integer, mailing_list_ids: integer[]) — Tool to search recipients by email across mailing lists. Use when you need to find all recipients matching an email in specific lists. Example: "Find recipients with email test@test.com in lists [1,2, - thanks_io_recipients_update(city?: string, name?: string, email?: string, phone?: string, address?: string, country?: string, custom1?: string, custom2?: string, custom3?: string, custom4?: string, address2?: string, province?: string, postal_code?: string, recipient_id: string) — Tool to update existing recipient details by recipient ID. Use when modifying recipient data after confirming the recipient exists. - thanks_io_send_postcard(size?: string, message?: string, preview?: boolean, qrcode_url?: string, recipients?: object[], return_city?: string, return_name?: string, sub_account?: string, return_state?: string, mailing_lists?: string[], radius_search?: object, image_template?: string, return_address?: string, front_image_url?: string, return_address2?: string, email_additional?: string, message_template?: string, handwriting_color?: string, handwriting_style?: string, return_postal_code?: string, send_standard_mail?: boolean, use_custom_background?: boolean, custom_background_image?: string) — Tool to send a customized postcard. Use when you need to dispatch a physical postcard with a chosen image and handwritten message. - thanks_io_stored_send_notecard(message: string, qrcode_url?: string, recipients: object[], sub_account?: string, front_image_url: string, email_additional?: string, handwriting_color?: string, handwriting_style?: string, send_standard_mail?: boolean, use_custom_background?: boolean, custom_background_image?: string) — Tool to create a stored send for a notecard. Use when you need to schedule mailing of a personalized notecard at a later time after preparing payload. - thanks_io_stored_send_postcard(size?: string, message?: string, preview?: boolean, qrcode_url?: string, recipients?: object[], mailing_lists?: string[], image_template?: string, front_image_url?: string, message_template?: string, handwriting_color?: string, handwriting_style?: string, custom_background_image?: string) — Tool to create a stored send for a postcard. Use when you need to prepare and schedule postcard orders for later execution; returns a URL to finalize and send. - thanks_io_stored_send_windowless_letter(message: string, recipients: object[], front_image_url: string, handwriting_style: integer) — Tool to create a stored send for a windowless letter. Use when you need to prepare a letter order for later execution. - thanks_io_sub_accounts_create(title: string, return_city?: string, return_name?: string, return_state?: string, return_address?: string, return_address2?: string, return_postal_code?: string) — Tool to create a new sub-account. Use when you need to manage separate profiles with distinct return addresses and settings. - thanks_io_sub_accounts_list() — Tool to list all available sub-accounts. Use when you need to select a sub-account for operations requiring a sub-account context. - thanks_io_sub_accounts_show(sub_account_id: string) — Tool to retrieve details for a specific sub-account by ID. Use when you need full configuration of a sub-account before performing sub-account scoped operations. - thanks_io_sub_accounts_update(title?: string, return_city?: string, return_name?: string, return_state?: string, return_address?: string, sub_account_id: string, return_address2?: string, return_postal_code?: string) — Tool to update details for a specific sub-account. Use when modifying title or return address details of a sub-account. Confirm sub-account ID before calling. ## Example prompts - "What can I do in Thanks.io?" - "Show me a summary of my Thanks.io account" ## Links Docs: https://mcp.ai/docs/mcps/thanks_io Website: https://mcp.ai/mcps/thanks_io