Connect an AI assistant

DM Tracker also runs an MCP server. MCP (Model Context Protocol) is the standard that lets AI assistants such as ChatGPT and Claude use outside tools. Once connected, your assistant can read and update your contacts, conversations, tags, follow-ups and pipeline on its own, using the same 16 operations as this API, limited to one organization. It cannot send Instagram messages.

Server URL
https://app.dmtracker.ai/api/mcp
Transport
Streamable HTTP.
Sign-in
Either sign in with your DM Tracker account (OAuth) or send your API key in the x-api-key header. Which one you can use depends on the assistant:
AssistantSign-in
ChatGPTOAuth only. Custom MCP servers need a ChatGPT Business or Enterprise workspace.
Claude (web and desktop apps)OAuth or API key.
Claude CodeOAuth or API key.
CodexOAuth or API key.
Cursor and other MCP clientsAPI key header. OAuth where the client supports it.

ChatGPT

  1. In ChatGPT, open Plugins, select + and then Add custom MCP server.
  2. Name it DM Tracker and paste the server URL under Connection.
  3. Choose OAuth for authentication, leave client ID and secret empty, accept the warning and select Create as a plugin.
  4. You are sent to DM Tracker. Sign in if asked, pick the organization on the consent page and select Continue. You are sent back to ChatGPT.
  5. In a new chat, type @, pick DM Tracker and ask, for example, "List my 5 newest contacts".

Claude

  1. In Claude, open Settings, then Connectors, select + Add and then Add custom connector. If you connected DM Tracker before, remove the old connector first.
  2. Name it DM Tracker, paste the server URL and select Continue.
  3. To sign in with your account, keep the sign-in settings Claude detects (Sign in now, OAuth client registered automatically), select Add, then Connect. Sign in with DM Tracker if asked, pick the organization and select Continue. To use the API key instead, choose No sign-in, add a request header x-api-key with your key, and select Add.
  4. In a chat, turn the connector on and ask, for example, "List my 5 newest DM Tracker contacts". Allow the tool call when Claude asks.

Claude Code

If DM Tracker is already connected in the Claude app with your account, Claude Code has it too. Otherwise add it from the terminal, with your account or with the API key:

Sign in with your account
claude mcp add -t http -s user dmtracker https://app.dmtracker.ai/api/mcp
claude mcp login dmtracker
Use the API key
claude mcp add -t http -s user dmtracker https://app.dmtracker.ai/api/mcp -H "x-api-key: YOUR_API_KEY"

Or type /mcp in Claude Code, select Add server and fill in: name dmtracker, transport HTTP (remote), the server URL, scope User so it works in all your projects.

Codex

If DM Tracker is already connected in ChatGPT with your account, Codex has it too. Otherwise:

Sign in with your account
codex mcp add dmtracker --url https://app.dmtracker.ai/api/mcp
codex mcp login dmtracker

Or, to use the API key, add this to ~/.codex/config.toml:

config.toml
[mcp_servers.dmtracker]
url = "https://app.dmtracker.ai/api/mcp"
http_headers = { "x-api-key" = "YOUR_API_KEY" }

Cursor and other clients

Server settings
Type:    Streamable HTTP
URL:     https://app.dmtracker.ai/api/mcp
Header:  x-api-key: YOUR_API_KEY

Add it as a Streamable HTTP server with this URL and header. If the client supports OAuth, it can sign in with DM Tracker instead of sending the header.

To check the server from the command line, ask it for its tools:

Check the server
curl -X POST "https://app.dmtracker.ai/api/mcp" \
  -H "x-api-key: $DMTRACKER_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'

Tools

Each tool is one endpoint of this API with the same inputs, so the endpoint pages tell you what each tool can do. Every tool also accepts time_zone.

ToolSame as
list_contactsList contacts
create_contactCreate a contact
get_contactGet a contact
delete_contactDelete a contact
list_contact_tagsList a contact's tags
add_contact_noteAdd a note
update_contact_statusUpdate status
update_contact_pipeline_stageMove to a pipeline stage
record_follow_upRecord a follow-up
list_tagsList tags
create_tagCreate a tag
list_pipeline_stagesList pipeline stages
list_conversationsList conversations
get_conversationGet a conversation
get_follow_up_countsCount due follow-ups
list_follow_up_stagesList follow-up stages

Good to know

Rate limits
Tool calls count against the same per-endpoint limits as the API.
One organization per connection
An OAuth connection belongs to one team member and one organization. The assistant only sees that organization. If the member leaves the organization, the connection stops working.
Disconnecting
Connected assistants are listed in the MCP section of your organization settings, where you can disconnect them. Removing DM Tracker inside the assistant works too.
Link copied