MCP server
CurrentClient runs a Model Context Protocol (MCP) server so an AI assistant such as Claude or ChatGPT can look up your conversations, calls and contacts, and take a few actions, on your behalf.
What it is
The MCP server is a thin layer over the same API documented in the API reference. It speaks MCP over streamable HTTP and exposes 19 tools. Each tool is a thin wrapper over the API.
| Production URL | https://mcp.api.currentclient.com/mcp (live once the production rollout completes) |
|---|---|
| Dev / testing URL | https://mcp.api.currentclient.io/mcp |
| Transport | HTTP (streamable) |
| Sign-in | OAuth with your own CurrentClient login |
Access is your own
You sign in with your own CurrentClient login, and the server passes your token straight through to the API. Every call runs as you, with your access: the assistant can do only what your login can do in the API. It gets no access of its own.
send_message sends a real text message to a real
customer, and it cannot be unsent; schedule_message sends
one later unless you cancel it. Review what the assistant is about
to send before you approve it, and keep tool-approval prompts turned
on in your client.
Connecting
Use the URL above (the dev URL while you are testing). Your client opens a CurrentClient sign-in page in the browser; sign in and approve the connection.
Claude.ai
- Open Settings > Connectors and choose Add custom connector.
- Enter the MCP server URL and save.
- Click Connect and sign in with your CurrentClient login.
Claude Code
Claude Code needs a pre-registered OAuth client id and a fixed callback port. Ask us for the client id for your environment.
claude mcp add --transport http \
--client-id <MCP_CLIENT_ID> --callback-port 8080 \
currentclient https://mcp.api.currentclient.com/mcp
Then run /mcp inside Claude Code, pick
currentclient, and sign in. Use callback port
8080; other loopback ports are not registered.
Alternatively, pass a Cognito access token as a static header:
--header "Authorization: Bearer <access token>". The
token must have been issued for the same MCP client, and it expires,
so OAuth is the better choice for everyday use.
ChatGPT
- Enable Developer mode in ChatGPT settings.
- Add a new connector (app) and enter the MCP server URL.
- Choose OAuth, then sign in with your CurrentClient login.
Tools
Read-only tools never change anything. The six
write tools are marked below. List tools are
paginated with a cursor.
Reading
| Tool | What it does |
|---|---|
get_profile | Your profile: name, workspace and account settings. |
list_inboxes | Your inboxes (phone numbers that send and receive). Inboxes are identified by phone number. |
list_team_members | People on your team, optionally only active or only inactive. |
list_conversations | Conversations, most recent first. Filter by inbox, status, unread, or search text. |
get_conversation | One conversation by id: status, assignee, contact, last activity. |
list_conversation_messages | The messages in one conversation, newest first, optionally narrowed by search text. |
list_calls | Phone calls, newest first. Filter by inbox, voicemail-only, time window, or contact number. |
get_call | One call by id, including transcript and summary when the inbox has those turned on. |
search_contacts | Find contacts by name, phone or email, or with a structured filter. |
get_contact | One contact by id with all its fields (phones, tags, custom fields). |
list_contact_notes | The notes written on one contact. |
list_scheduled_messages | Text messages scheduled for later, with send time (epoch seconds, UTC) and status. Optionally only those still waiting to send. |
list_tags | The tags defined in your workspace that can be put on contacts. |
Writing
| Tool | What it does |
|---|---|
send_message | Sends a real text message to a customer. It cannot be unsent. Needs the sending inbox's phone number and the recipient's number. |
schedule_message | Schedules a real text message to a customer; it is sent automatically unless cancelled first. Needs the sending inbox's phone number, the recipient's number, the text and a future send time (ISO 8601; with no offset it is read in the inbox's timezone). |
cancel_scheduled_message | Cancels (deletes) one scheduled message so it is never sent. It cannot be undone; schedule it again to send it later. Get the id from list_scheduled_messages. |
create_contact | Creates one contact (phone, first and last name required; email optional). |
update_contact | Changes fields on an existing contact; only the fields passed change. |
add_contact_note | Adds a note to a contact. |
The tool list above is the full set the server offers today. Your client shows the same list after it connects.