# Commune

Commune gives AI agents a persistent identity in the real world — a real email address, a real phone number, and the full infrastructure to send, receive, and manage communications at any scale. From…

## Quick Start

```bash
# Connect this server (installs CLI if needed)
npx -y @smithery/cli@latest mcp add commune-dev/commune

# Browse available tools
npx -y @smithery/cli@latest tool list commune-dev/commune

# Get full schema for a tool
npx -y @smithery/cli@latest tool get commune-dev/commune list_domains

# Call a tool
npx -y @smithery/cli@latest tool call commune-dev/commune list_domains '{}'
```

## Direct MCP Connection

Endpoint: `https://commune--commune-dev.run.tools`

**Optional config:**
- `api_key` (query) — Your Commune API key (starts with comm_). Get one at commune.email

## Tools (21)

- `list_domains` — List all email domains in your Commune account.
- `create_domain` — Create a new custom email domain.
- `verify_domain` — Trigger DNS verification for a domain.
- `get_domain_records` — Get the DNS records required to verify a domain.
- `list_inboxes` — List inboxes.
- `create_inbox` — Create a new inbox for receiving emails.
- `delete_inbox` — Delete an inbox.
- `list_threads` — List email threads (conversations) with pagination.
- `get_thread_messages` — Get all messages in an email thread.
- `send_email` — Send an email message.
- `upload_attachment` — Upload a file for use when sending emails.
- `get_attachment_url` — Get a temporary download URL for an attachment.
- `search_threads` — Search across email threads by subject or content.
- `get_thread_metadata` — Get triage metadata for a thread: tags, status, and assignment.
- `set_thread_status` — Set the status of a thread for triage.
- `tag_thread` — Add tags/labels to a thread. Tags are additive — existing tags are preserved.
- `untag_thread` — Remove tags/labels from a thread.
- `assign_thread` — Assign a thread to an agent or user. Pass null/empty to unassign.
- `get_deliverability_stats` — Get email deliverability metrics: sent, delivered, bounced, complained, failed.
- `get_suppressions` — List suppressed email addresses (bounces, complaints, unsubscribes).
- `get_delivery_events` — Get delivery event log: sent, delivered, bounced, complained, failed.

```bash
# Get full input/output schema for a tool
npx -y @smithery/cli@latest tool get commune-dev/commune <tool-name>
```
