Mike Miller
March 19, 2026

We built an MCP server that lets your AI agent handle customer messaging end to end. Sending, tracking, debugging, user management, preferences, automations. If you can do it in Courier, your agent can too.
It works with Cursor, Claude Code, Claude Desktop, Windsurf, VS Code, and the OpenAI Responses API. One config block to set up.
Here's how you can use the MCP to improve your workflows:
Plus tenants, bulk sends, brands, translations, auth tokens, audit events, and more.
Everything is backed by the official @trycourier/courier Node SDK with structured error handling, so your agent gets status codes and messages it can act on.
You need a Courier API key and one config step for your tool of choice. Grab a key from your Courier Settings, then pick your setup below.
Cursor has a one-click install on the docs page, or you can add it manually. Go to Cursor Settings > Tools & Integrations > MCP Tools > New MCP Server and add:
Copied!
{"mcpServers": {"courier": {"url": "https://mcp.courier.com","headers": {"api_key": "YOUR_COURIER_API_KEY"}}}}
Claude Code is a single command:
Copied!
claude mcp add --transport http courier https://mcp.courier.com --header api_key:YOUR_COURIER_API_KEY
The MCP docs have setup instructions for Claude Desktop, Windsurf, VS Code, and the OpenAI Responses API. The config is similar across all of them: point your MCP client at https://mcp.courier.com with your API key, and every tool is available immediately.
MCP gives agents structured tool access, but it's not the only way to connect your agent to Courier. We also have a CLI that covers the full API with a consistent courier [resource] <command> [flags] pattern.
The CLI is a better fit when you're working in a terminal-first environment, piping output between commands, writing shell scripts, or running Courier operations in CI/CD pipelines. It also works well with agents that have direct shell access (like Cursor's agent mode or Claude Code), since they can run --help on any command and figure out the rest.
MCP is the better choice when your agent connects through a tool interface instead of a shell, like Claude Desktop, the OpenAI Responses API, or enterprise environments where terminal access is locked down. It's also the right path if you're building a chatbot or support agent that needs Courier access programmatically.
You don't have to pick one. They cover the same API surface, so use whichever fits your workflow.
Get started: Set up the MCP server | Grab the CLI | Get an API key

iOS 27 UISceneDelegate push notification deadline: What breaks and how to prepare
Apple is making UISceneDelegate mandatory with the iOS 27 SDK, expected September 2026. Apps that don't adopt the scene lifecycle will crash on launch, killing APNs token registration and all push notification delivery. This guide covers the full timeline, cross-platform impact for Flutter and React Native, and a practical action plan.
By Mike Miller
March 19, 2026

Your AI agent already knows how to use a terminal. Why CLIs beat MCP servers
LLMs already know how to use a terminal. We maintain both an MCP server and a CLI at Courier, and the difference tells you something about where AI tooling is heading.
By Mike Miller
March 13, 2026

EU Data Residency for Notifications: What Engineering Teams Need to Know
Courier supports EU data residency through a dedicated datacenter in AWS EU-West-1 (Ireland), with full API feature parity, same-workspace dual-region access, built-in GDPR deletion endpoints, and localization support for multilingual notifications. Engineering teams can switch to EU hosting by changing a single base URL with no workspace migration or downtime required.
By Kyle Seyler
March 09, 2026
© 2026 Courier. All rights reserved.