MCP.so
ログイン

Agentphone

@AgentPhone-AI

Agentphone について

Give your AI Agents a phone number with voice and messaging capabilities.

基本情報

カテゴリ

その他

トランスポート

stdio

公開者

AgentPhone-AI

投稿者

Meet Modi

設定

以下の設定を使って、このサーバーを MCP 対応クライアントに追加してください。

{
  "mcpServers": {
    "agentphone": {
      "command": "npx",
      "args": [
        "-y",
        "agentphone-mcp"
      ],
      "env": {
        "AGENTPHONE_API_KEY": "<YOUR_API_KEY>"
      }
    }
  }
}

ツール

26

Get a complete snapshot of your AgentPhone account: agents, phone numbers, webhook status, and usage limits. Call this first to orient yourself before using other tools.

List all phone numbers in your account. Each number has an ID needed by other tools (get_messages, attach_number, list_calls).

Purchase a new phone number. Use area_code to request a specific region (e.g. '415' for San Francisco). Tip: pass agent_id to attach it immediately, or use attach_number later.

Send an SMS or iMessage from one of your agent's phone numbers. USE THIS TOOL WHEN the user wants to text someone. The agent must have at least one phone number attached. If the agent has multiple numbers, use number_id to specify which one to send from.

Get SMS messages for a specific phone number. Use list_numbers to find the number ID. For threaded conversations, use list_conversations + get_conversation instead.

List recent calls. Scope by agent_id or number_id, or use status/direction/search to filter globally. When agent_id or number_id is passed, status/direction/search filters are not applied. Returns call IDs — use get_call with an ID to fetch the full transcript.

Get details and transcript for a specific call. Use list_calls to find call IDs. Pass wait=true to block until an in-progress call finishes before returning.

Initiate an outbound phone call. USE THIS TOOL WHEN the user wants to place a webhook-driven call where your backend handles the conversation logic. DO NOT USE when the user wants an autonomous AI conversation — use make_conversation_call instead. The agent must have a phone number attached and a webhook configured (set_webhook).

Place a phone call where the AI has an autonomous conversation about a given topic. USE THIS TOOL WHEN the user wants an AI agent to call someone and have a conversation — scheduling, surveys, follow-ups, etc. No webhook setup needed. DO NOT USE when the user wants a webhook-driven call (use make_call instead). The agent must have a phone number attached. Use list_agents to check. By default this blocks until the call finishes and returns the full transcript. Set wait=false for fire-and-forget.

List all agents with their phone numbers and voice configuration. An agent is required before you can make calls — it owns phone numbers and handles voice/SMS.

Create a new agent. An agent owns phone numbers and handles calls/SMS. After creating, use buy_number or attach_number to give it a phone number. Set voice_mode to 'hosted' with a system_prompt for autonomous AI voice calls, or 'webhook' (default) to forward call transcripts to your webhook URL. Use list_voices to see available voice options.

Update an agent's configuration — name, description, voice settings, system prompt, greeting, call transfer, or voicemail. Only provided fields are updated. Use list_voices to see available voice IDs. Switching voice_mode to 'hosted' requires a system_prompt.

Delete an agent permanently. Phone numbers attached to it will be kept but unassigned. DO NOT USE without confirming with the user — this cannot be undone.

Get details for a specific agent including its phone numbers, voice configuration, and system prompt.

Attach a phone number to an agent so the agent handles calls/SMS on that number. Use list_numbers to find unassigned number IDs and list_agents for agent IDs.

Detach a phone number from an agent. The number is kept in your account but becomes unassigned. Use list_agents or get_agent to see which numbers are attached.

List available voices for agents. Use the voice_id value when calling create_agent or update_agent.

List SMS conversations. Optionally filter by agent_id to see conversations for a specific agent. Each conversation is a thread between your number and an external contact. Use get_conversation with the ID to read messages.

Get a specific SMS conversation with message history. Use list_conversations to find IDs.

Set metadata on a conversation. Use this to store custom state, tags, or context that persists between messages. Pass null to clear metadata.

Get account usage statistics. By default returns a summary with plan limits, quotas, and message/call volume. Use breakdown='daily' or 'monthly' for time-series data.

Get the webhook configuration. Pass agent_id to get an agent-specific webhook, or omit for the project-level default.

Set a webhook URL to receive inbound messages and call events. Pass agent_id to set a webhook for a specific agent (overrides project default). Omit agent_id to set the project-level webhook for all agents. The webhook secret is returned — use it to verify signatures.

Remove a webhook. Pass agent_id to remove an agent's webhook (falls back to project default). Omit agent_id to remove the project-level webhook. DO NOT USE without confirming with the user.

Send a test event to verify a webhook is working. Returns the HTTP status code and response time. Pass agent_id to test that agent's webhook. Omit to test the project-level webhook.

View recent webhook delivery history. Shows which events were delivered, HTTP status codes, and timing. Pass agent_id to see deliveries for that agent's webhook. Omit for project-level.

概要

What is Agentphone?

Agentphone is an MCP server that gives AI agents real phone numbers, SMS, and voice calls. It integrates your AI assistant with the AgentPhone API so that agents can buy numbers, send/receive texts, place calls, and manage inbound communication—all through natural language in Cursor, Claude Desktop, or any MCP-compatible client.

How to use Agentphone?

Configure your MCP client with an API key from agentphone.to. Use the remote Streamable HTTP endpoint (https://mcp.agentphone.to/mcp) with an Authorization: Bearer <key> header, or run the local stdio server via npx -y agentphone-mcp with the AGENTPHONE_API_KEY environment variable. A self-hosted HTTP server is also available with npx agentphone-mcp --http --port 3000. After setup, simply ask your AI agent to perform phone tasks.

Key features of Agentphone

  • Buy and manage phone numbers in any US/CA area code
  • Send and receive SMS with full conversation history
  • Place outbound voice calls with built-in AI conversation
  • Handle inbound calls and texts via customizable webhooks
  • Create agents with custom voices, system prompts, and voicemail
  • Monitor usage, plan limits, and billing breakdowns

Use cases of Agentphone

  • Create a support agent that greets callers and handles billing inquiries
  • Schedule appointments by placing AI‑driven outbound calls
  • Send automated SMS confirmations (e.g., “Your appointment is confirmed for 3pm tomorrow”)
  • Set up real‑time webhook notifications for inbound calls and messages
  • Track monthly usage and call/SMS volume across different agents

FAQ from Agentphone

What transports does Agentphone support?

Streamable HTTP (remote or self‑hosted) and stdio (local). Stdio works with Cursor, Claude Desktop, Windsurf, and Claude Code. Streamable HTTP is recommended for remote agent platforms.

How do I authenticate with Agentphone?

Provide your API key via the AGENTPHONE_API_KEY environment variable (stdio or self‑hosted HTTP) or via the Authorization: Bearer <key> header (HTTP modes).

What tools does Agentphone provide?

26 tools covering account overview, usage stats, phone number management, SMS (send, get, list conversations), voice calls (place, get details, transcripts), agent management, and webhook configuration.

Can I run Agentphone locally without hosting a server?

Yes. Use the remote hosted endpoint (https://mcp.agentphone.to/mcp) with no installation needed—just configure your MCP client with the URL and API key.

What are the runtime requirements for Agentphone?

For local stdio/HTTP modes, you need Node.js (to run npx). The remote hosted option has no local dependencies.

コメント

「その他」の他のコンテンツ