OpenPhn docs

OpenClaw

Use OpenPhn as a phone capability inside an OpenClaw agent.

The fastest way to give an OpenClaw agent a phone is via the OpenPhn MCP server. Configure the MCP server in your OpenClaw client config and the tools appear alongside OpenClaw's native capabilities.

Configure the MCP server

Add OpenPhn to OpenClaw's MCP config (same JSON shape as Claude Desktop / Cursor):

{
  "mcpServers": {
    "openphn": {
      "type": "sse",
      "url": "https://mcp.openphn.com",
      "headers": {
        "Authorization": "Bearer sk_live_..."
      }
    }
  }
}

Restart the agent runtime. Tools (make_call, get_call, list_calls, list_numbers) register automatically.

Prompt pattern

You have phone capabilities via the openphn MCP server. When the user asks you to call someone, use make_call with an appropriate objective, outcome_schema, and consent_type before dialing. Do not invent numbers — prompt the user if one isn't provided.

Before dialing, confirm the basis with the user:

Agent: Before I dial +14155551234 about order #A-14421, can you confirm
       consent_type? Options:
       - prior_express  (you have written opt-in)
       - existing_business_relationship  (active customer)
       - emergency  (imminent safety only)

User:  existing_business_relationship

Agent: [calls make_call with that consent_type]

Access control

Restrict the OpenPhn key to what OpenClaw actually needs — usually calls:create + calls:read. If multiple OpenClaw instances share a team account, scope keys to specific number_ids per team so one agent can't dial on another team's caller-ID. See API keys.

On this page