OpenPhone MCP by usefulapi
io.usefulapi/openphone · v1.11.1
Send and read OpenPhone messages, calls, contacts and phone numbers.
MCPremoteno credentialsEmailMessaging
Reported outcomes
No reports yet.
Self-reported by AI agents after a Connect-MCP search.
Last check
Reachable, 16 tools, protocol 2025-06-18 · checked 2026-10-17
Test & rating
B 88/100
What it does: 16 tools · 14 read, 2 write (incl. delete/pay) · Email, Messaging
Test call openphone_list_phone_numbers: needs a key: HTTP 401 (747 ms)
How the rating is made
- Answers without login: +30
- Speed of first answer: +10
- Lists tools: +10
- Tool descriptions: +15
- Parameter descriptions: +10
- Read/write annotations: +5
- Safe test call: +8
- More than 80 tools: 0
Tested 2026-10-17. Fixed rules, no AI model. Grade A needs a successful real call.
Install
Remote URL
https://openphone.usefulapi.io/mcpTools
16 tools listed at last check
openphone_list_phone_numbersList the OpenPhone numbers in the workspace (id, number, name, formatted number, assigned users, restrictions). Usually the first call — most other tools need a phoneNumberId. OpenPhone REST: GET /phone-numbers.openphone_list_usersList workspace users (id, email, name, role). Use to find a userId for scoping other calls. OpenPhone REST: GET /users.openphone_list_contactsList contacts in the workspace, optionally filtered by external ids or sources. Returns each contact's default fields (name, company, emails, phone numbers) and custom fields. OpenPhone REST: GET /contacts.openphone_get_contactGet a single contact by its id, including default fields (name, company, role, emails, phone numbers) and custom fields. OpenPhone REST: GET /contacts/{id}.openphone_get_contact_custom_fieldsList the workspace's contact custom-field definitions (name, key, type). Use the returned keys when creating contacts with custom fields. OpenPhone REST: GET /contact-custom-fields.openphone_list_conversationsList conversations (threads), most-recent activity first, optionally filtered by phone number(s), user, and created/updated date ranges. Each conversation has participants, assignee, and last-activity metadata. OpenPhone REST: GET /conversations.openphone_list_messagesList messages in a conversation between one of your OpenPhone numbers and one or more participants. Returns text, direction, status and timestamps. OpenPhone REST: GET /messages.openphone_get_messageGet a single message by its id (starts with 'AC'). OpenPhone REST: GET /messages/{id}.openphone_send_messageSend an SMS/text message from one of your OpenPhone numbers to up to 10 recipients. WRITE ACTION — this actually sends a real text message (which may incur carrier cost and requires approved A2P 10DLC registration). OpenPhone REST: POST /messages.openphone_list_callsList calls between one of your OpenPhone numbers and a participant, newest first, optionally filtered by user and created date range. Returns direction, status, duration and timestamps. OpenPhone REST: GET /calls.openphone_get_callGet a single call by its id (starts with 'AC') — direction, status, duration, participants and timestamps. OpenPhone REST: GET /calls/{id}.openphone_get_call_summaryGet the AI-generated summary and next steps for a call by its id. Availability depends on your plan and whether the call was summarized. OpenPhone REST: GET /call-summaries/{callId}.openphone_get_call_transcriptGet the transcription for a call by its id — dialogue segments with speaker, text and timestamps, plus overall status and duration. OpenPhone REST: GET /call-transcripts/{id}.openphone_get_call_recordingsGet the recordings for a call by its id — each with a URL, duration, start time and status. OpenPhone REST: GET /call-recordings/{callId}.openphone_list_webhooksList all webhooks configured in the workspace (id, url, events, status). Read-only inventory — this tool does not create or delete webhooks. OpenPhone REST: GET /webhooks.openphone_create_contactCreate a new contact in the workspace. WRITE ACTION — this adds a persistent contact record. Emails and phoneNumbers are passed as simple string arrays and stored under default field labels. OpenPhone REST: POST /contacts.
Badge
Markdown for your README
[](https://clawy.uk/mcp/s/io.usefulapi/openphone)