{
  "serverInfo": {
    "name": "CommSync",
    "version": "0.2.0",
    "description": "Unified SMS + email inbox. Read threads, send messages, manage contacts and labels, configure AI features, and register webhooks — every operation scoped to the API key owner and their org role.",
    "homepage": "https://commsync.ai"
  },
  "transport": {
    "type": "http",
    "endpoint": "https://server.commsync.ai/api/mcp",
    "protocol": "jsonrpc-2.0",
    "stateless": true
  },
  "auth": {
    "type": "bearer",
    "description": "Send the API key as a Bearer token: `Authorization: Bearer csk_<48-hex-chars>`. Keys are minted once (shown only at creation) in CommSync under Settings → API Keys and may be scoped to specific email accounts / phone numbers. There is no OAuth flow — see /auth.md.",
    "header": "Authorization",
    "scheme": "Bearer",
    "tokenFormat": "csk_<48 hex characters>",
    "mintUrl": "https://commsync.ai/docs/api-keys"
  },
  "capabilities": {
    "tools": {
      "total": 75,
      "categories": [
        {
          "name": "threads",
          "count": 17,
          "description": "List/read/mutate conversation threads (per-user view state)."
        },
        {
          "name": "outbound-messaging",
          "count": 6,
          "description": "Send/reply/forward/resend SMS and email."
        },
        {
          "name": "channel-management",
          "count": 7,
          "description": "List/add/delete email accounts and phone numbers."
        },
        {
          "name": "billing",
          "count": 4,
          "description": "Read billing state; change tier/seats (owner-only writes)."
        },
        {
          "name": "contacts",
          "count": 10,
          "description": "Person + Identity CRUD, merge, split, promote (per-user contact graph)."
        },
        {
          "name": "identities",
          "count": 4,
          "description": "Read/update a single channel handle and list orphaned identities."
        },
        {
          "name": "labels",
          "count": 6,
          "description": "Label CRUD and assignment to contacts/identities."
        },
        {
          "name": "search",
          "count": 2,
          "description": "Cross-entity search and thread-centric search with match snippets."
        },
        {
          "name": "ai",
          "count": 9,
          "description": "Read/update AI settings, daily digests, AI run audit log, inbox backfill."
        },
        {
          "name": "account",
          "count": 2,
          "description": "Read/update the caller profile."
        },
        {
          "name": "webhooks",
          "count": 8,
          "description": "Self-service outbound webhook endpoint CRUD and delivery replay."
        }
      ]
    },
    "resources": {
      "total": 3,
      "list": [
        {
          "name": "thread-messages",
          "uriTemplate": "commsync://threads/{threadId}/messages"
        },
        {
          "name": "contact-detail",
          "uriTemplate": "commsync://contacts/{personId}"
        },
        {
          "name": "digest",
          "uriTemplate": "commsync://digests/{localDate}"
        }
      ]
    },
    "prompts": {
      "total": 0
    }
  },
  "documentation": {
    "human": "https://commsync.ai/docs/mcp",
    "machine": "https://commsync.ai/docs/mcp.txt"
  }
}