protogrid

Search / app.codaphone/mcp

CodaPhone

R1· needs a key

Business texting for AI agents: send texts, read threads, manage contacts and run campaigns.

v1.0.0 · active · website · descriptor JSON · versions

An agent can connect on its own if it already holds CODAPHONE_TOKEN.Remote endpoint behind a static API key or header. The registry never sees the value; the agent fills the placeholder.
Quality79good
Trust82of 100
Uptime, 30 days98%
Latency p50301 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "codaphone": {
      "type": "http",
      "url": "https://mcp.codaphone.app",
      "headers": {
        "Authorization": "Bearer ${CODAPHONE_TOKEN}"
      }
    }
  }
}
claude mcp add --transport http codaphone https://mcp.codaphone.app --header "Authorization: Bearer ${CODAPHONE_TOKEN}"
[mcp_servers.codaphone]
url = "https://mcp.codaphone.app"
bearer_token_env_var = "CODAPHONE_TOKEN"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "codaphone": {
      "type": "remote",
      "url": "https://mcp.codaphone.app",
      "enabled": true,
      "headers": {
        "Authorization": "Bearer {env:CODAPHONE_TOKEN}"
      }
    }
  }
}
{
  "mcpServers": {
    "codaphone": {
      "type": "http",
      "url": "https://mcp.codaphone.app",
      "headers": {
        "Authorization": "Bearer ${CODAPHONE_TOKEN}"
      }
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=codaphone&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbWNwLmNvZGFwaG9uZS5hcHAiLCJoZWFkZXJzIjp7IkF1dGhvcml6YXRpb24iOiJCZWFyZXIgJHtDT0RBUEhPTkVfVE9LRU59In19"
}
{
  "servers": {
    "codaphone": {
      "type": "http",
      "url": "https://mcp.codaphone.app",
      "headers": {
        "Authorization": "Bearer ${CODAPHONE_TOKEN}"
      }
    }
  }
}
{
  "mcpServers": {
    "codaphone": {
      "httpUrl": "https://mcp.codaphone.app",
      "headers": {
        "Authorization": "Bearer ${CODAPHONE_TOKEN}"
      }
    }
  }
}
extensions:
  "codaphone":
    enabled: true
    name: "codaphone"
    type: streamable_http
    uri: "https://mcp.codaphone.app"
    headers:
      "Authorization": "Bearer ${CODAPHONE_TOKEN}"
    timeout: 300

Placeholders to fill from your own secret store: ${CODAPHONE_TOKEN}. The registry never accepts secret values.

Quality 79 / 100good

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-06-18; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene71 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • fail
    tools.annotationsno tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky ones
  • fail
    tools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: provision_number (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_message_status (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); mark_thread_read (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …
  • pass
    tools.token_costabout 1,995 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability100 · weight 15
  • pass
    stability.changesno tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

14 tools, about 1,995 tokens to load them all · tool set 2c04be85624e · checked 2026-10-19 10:52 UTC

Tool changes

No tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 82 / 100

no-repository
provenance55
liveness99
freshness100
hygiene80

+dns-namespace +website +reachable +uptime-98% +updated-17d-ago -no-repository

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://mcp.codaphone.app streamable-httpapi_key ${CODAPHONE_TOKEN}yes98%301 ms2025-06-182026-10-19

Tools (14)

add_contactsAdd a contact to the account. Provide the phone number (msisdn) and optionally a name, a list_id to file it under, and an opt_in_source note. Adds one contact per call. Requires the 'contacts' scope.
create_campaignCreate a new bulk-messaging campaign with a name and an optional base message. After creating, use run_campaign to generate variations, set the audience, schedule, and launch it. Requires the 'campaigns' scope.
get_accountGet the current CodaPhone account: its name and mode (live/test), the active number (if any), the current plan and its monthly/daily send caps, usage so far, and remaining automation credits. Requires the 'read' scope.
get_campaignGet one campaign by id, including its base message, audience, schedule, pacing, and send/failed/skipped counts. Requires the 'read' scope.
get_message_statusGet one message by id, including its delivery status, direction, body, segment count, and timestamp. Requires the 'read' scope.
get_threadGet one conversation thread by id together with its messages. Requires the 'read' scope.
list_campaignsList the account's bulk-messaging campaigns with their status and progress counts, plus the remaining automation credit balance. Requires the 'read' scope.
list_contactsList the account's contacts with opt-in status and timezone. Optionally filter by a search term or a list id, choose a sort, and paginate with limit/offset. Requires the 'read' scope.
list_threadsList the account's conversation threads (the inbox), most recent first, with unread counts and last-message previews. Supports limit/offset pagination. Requires the 'read' scope.
mark_thread_readMark a conversation thread as read (clears its unread count) and return the account's new total inbox unread count. Requires the 'read' scope.
provision_numberProvision (set up) a phone number for the account from a candidate returned by search_numbers. Provide the exact msisdn in +1XXXXXXXXXX form and the number kind; optional label and business registration details may be included. An account can hold one active number. Requires the 'numbers' scope.
run_campaignAdvance a campaign through its lifecycle. Provide the campaign_id and an action: - generate: create message variations (optional base_message, count) - variations: save edited variations (variations: [{body, active}]) - audience: set the recipient list (list_id) - schedule: set send time/pacing (schedule_at, pace_seconds, daily_ceiling) - launch: start sending (or start at the scheduled time) - pause / resume / cancel: control a running campaign Sends honor opt-outs, sending hours, credits, and plan caps automatically. Requires the 'campaigns' scope.
search_numbersSearch available phone numbers to provision. Optionally filter by country, number kind (local or tollfree), and a 3-digit area code. Returns candidate numbers with a formatted display, city/region, and monthly price. Does not buy anything. Requires the 'numbers' scope.
send_messageSend an SMS from the account's number. Provide the message 'body', and either 'to' (a recipient phone number, with optional 'name' to save the contact) or an existing 'thread_id' to reply within a conversation. Opted-out contacts are blocked and free-send/plan limits apply automatically. Requires the 'send' scope.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "app.codaphone/mcp",
  "title": "CodaPhone",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://mcp.codaphone.app",
      "type": "streamable-http",
      "headers": [
        {
          "name": "Authorization",
          "isSecret": true,
          "isRequired": true,
          "description": "Bearer followed by your CodaPhone API key"
        }
      ]
    }
  ],
  "version": "1.0.0",
  "websiteUrl": "https://codaphone.app/developers/mcp",
  "description": "Business texting for AI agents: send texts, read threads, manage contacts and run campaigns."
}