Skip to main content

Curated MCP servers for the Sendmux API surfaces.

Project description

sendmux-mcp

PyPI version Python versions PyPI downloads Licence

Curated Model Context Protocol servers for the Sendmux Mailbox, Management, and Sending API surfaces.

This package is the Sendmux product MCP. Keep it separate from any documentation-search MCP used by docs tooling.

Documentation

Requirements

  • Python 3.10 or newer.
  • A mailbox-scoped smx_mbx_* key for Mailbox and Sending tools.
  • A root smx_root_* key for Management tools.

Installation

pip install sendmux-mcp

Usage

Run a single local server with the per-surface commands.

SENDMUX_API_KEY=smx_mbx_... sendmux-mcp-mailbox
SENDMUX_API_KEY=smx_root_... sendmux-mcp-management
SENDMUX_API_KEY=smx_mbx_... sendmux-mcp-sending

Run a combined local server with sendmux-mcp.

SENDMUX_MCP_SURFACES=mailbox,sending \
SENDMUX_MAILBOX_API_KEY=smx_mbx_... \
SENDMUX_SENDING_API_KEY=smx_mbx_... \
sendmux-mcp

Run all three local surfaces when you have both key types.

SENDMUX_MCP_SURFACES=mailbox,management,sending \
SENDMUX_MAILBOX_API_KEY=smx_mbx_... \
SENDMUX_MANAGEMENT_API_KEY=smx_root_... \
SENDMUX_SENDING_API_KEY=smx_mbx_... \
sendmux-mcp

The generic sendmux-mcp command also accepts --surface or --surfaces. The wrapper commands select exactly one surface.

Transports

stdio is the default transport for local agent clients.

SENDMUX_API_KEY=smx_mbx_... sendmux-mcp-mailbox --transport stdio

http and streamable-http expose the MCP endpoint over HTTP. HTTP mode defaults to 127.0.0.1:8765/mcp and requires a separate MCP bearer token unless you explicitly opt out.

SENDMUX_API_KEY=smx_mbx_... \
SENDMUX_MCP_HTTP_BEARER_TOKEN=local-mcp-token \
sendmux-mcp-mailbox --transport http --host 127.0.0.1 --port 8765 --path /mcp

/health returns a small JSON health response for the selected surfaces.

Hosted Endpoint

The public hosted MCP endpoint is https://mcp.sendmux.ai/mcp.

The packaged sendmux-mcp-hosted command runs the hosted server runtime. Local and private deployments should use the local commands above unless you are operating a compatible OAuth-backed hosted environment.

Configuration

Setting Environment Default
Tool surfaces SENDMUX_MCP_SURFACES required for sendmux-mcp; wrapper commands select one surface
API key fallback SENDMUX_API_KEY accepted for compatible single-key setups
Mailbox API key SENDMUX_MAILBOX_API_KEY required when mailbox is selected unless a compatible fallback is provided
Management API key SENDMUX_MANAGEMENT_API_KEY required when management is selected unless a compatible fallback is provided
Sending API key SENDMUX_SENDING_API_KEY required when sending is selected unless a compatible mailbox key is provided
App API base URL SENDMUX_APP_BASE_URL https://app.sendmux.ai/api/v1
Sending API base URL SENDMUX_SENDING_BASE_URL https://smtp.sendmux.ai/api/v1
Transport SENDMUX_MCP_TRANSPORT stdio
HTTP host SENDMUX_MCP_HOST 127.0.0.1
HTTP port SENDMUX_MCP_PORT 8765
HTTP path SENDMUX_MCP_PATH /mcp
HTTP bearer token SENDMUX_MCP_HTTP_BEARER_TOKEN required for HTTP unless opt-out is enabled
Allow unauthenticated HTTP SENDMUX_MCP_ALLOW_UNAUTHENTICATED_HTTP false
Allowed browser origins SENDMUX_MCP_ALLOWED_ORIGINS no browser origins
Snapshot directory override SENDMUX_MCP_OPENAPI_INPUT_DIR or OPENAPI_INPUT_DIR packaged snapshots
App snapshot override SENDMUX_MCP_APP_OPENAPI packaged app snapshot
Sending snapshot override SENDMUX_MCP_SENDING_OPENAPI packaged sending snapshot
Request timeout SENDMUX_MCP_TIMEOUT_SECONDS 30
Retry attempts SENDMUX_MCP_RETRY_MAX_ATTEMPTS 3

Packaged OpenAPI snapshots are the default so released tool names, schemas, and descriptions stay stable. Path, directory, and URL overrides are available for development, canary, and debugging runs.

Tool Surfaces

  • Mailbox: 21 tools for granted mailboxes, profile/session discovery, messages, threads, folders, search, counts, and mailbox sends. Requires an smx_mbx_* key.
  • Management: 20 tools for domains, mailboxes, logs, metrics, spend summary, and webhooks. Requires an smx_root_* key.
  • Sending: 2 tools for single and batch sends. Requires an smx_mbx_* key.

The server rejects keys with the wrong prefix before starting.

Console Scripts

  • sendmux-mcp
  • sendmux-mcp-mailbox
  • sendmux-mcp-management
  • sendmux-mcp-sending
  • sendmux-mcp-hosted

Support

Open an issue in Sendmux/sendmux-sdk with the package name, version, command, transport, and request ID from any API error.

Licence

MIT. See the licence file.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sendmux_mcp-1.1.1.tar.gz (59.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sendmux_mcp-1.1.1-py3-none-any.whl (68.6 kB view details)

Uploaded Python 3

File details

Details for the file sendmux_mcp-1.1.1.tar.gz.

File metadata

  • Download URL: sendmux_mcp-1.1.1.tar.gz
  • Upload date:
  • Size: 59.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for sendmux_mcp-1.1.1.tar.gz
Algorithm Hash digest
SHA256 9baff9e0587cac5d3604f50953552ed4e6919951d8702a088a498ce6d19ef53a
MD5 57981ee9a71e6ea6e4afc30a7a4d0225
BLAKE2b-256 c46a71495773dddfa92ebc8af139688621999611408a0de76cd1b50fbae5f19b

See more details on using hashes here.

Provenance

The following attestation bundles were made for sendmux_mcp-1.1.1.tar.gz:

Publisher: release-please.yml on Sendmux/sendmux-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file sendmux_mcp-1.1.1-py3-none-any.whl.

File metadata

  • Download URL: sendmux_mcp-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 68.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for sendmux_mcp-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 655f0026bc6201c1f4a8b8f9dfa48a02ffdf7e8d3a362e90a73d34c11db4bcb8
MD5 c68e2943e0b2b12019713fd8ecfd7036
BLAKE2b-256 f5ff736e0bdc3884486bba02be575f0b9fa8215a4838f1a1e86f2bcca57aa95e

See more details on using hashes here.

Provenance

The following attestation bundles were made for sendmux_mcp-1.1.1-py3-none-any.whl:

Publisher: release-please.yml on Sendmux/sendmux-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page