Skip to main content

MCP server

The FirstReply MCP server exposes your workspace as tools for an AI assistant that speaks the Model Context Protocol — Claude Desktop, Claude Code and anything else with MCP support.

With it connected you can ask an assistant to go through the queue with you: "what came in overnight that nobody has answered", "draft a reply to the battery complaint", "how many conversations did we close last week".

Installing

You need Node.js 18 or newer and an API key for the workspace.

Claude Desktop

Add the server to your MCP configuration:

{
"mcpServers": {
"firstreply": {
"command": "npx",
"args": ["-y", "@firstreply/mcp"],
"env": {
"FIRSTREPLY_API_TOKEN": "fr_..."
}
}
}
}

Claude Code

claude mcp add firstreply --env FIRSTREPLY_API_TOKEN=fr_... -- npx -y @firstreply/mcp

Over HTTP

The server also runs as a stateless streamable-HTTP service, for hosting it centrally rather than on each machine:

npm run build && npm run start:http # listens on :8080

Every request must carry Authorization: Bearer fr_.... A /health endpoint is available for probes.

Configuration

VariableDescription
FIRSTREPLY_API_TOKENWorkspace API key, for stdio mode
FIRSTREPLY_API_URLAPI base URL, default https://api.firstreply.ai
PORTHTTP port in HTTP mode, default 8080
MCP_ENDPOINT_PATHHTTP endpoint path, default /

What the assistant can do

Workspace

ToolDoes
organization_listList the workspaces the key can reach
inbox_listList the connected channels
member_listList the team
api_key_listList API keys, metadata only
api_key_createCreate a key; the secret is returned once
api_key_deleteRevoke a key

Conversations

ToolDoes
conversation_listList and filter conversations
conversation_getRead one conversation
conversation_messagesRead its messages
conversation_replySend a reply to the customer
conversation_closeClose a conversation
conversation_updateAssign, reprioritize or reclassify
conversation_statsStatistics for a date range
conversation_totalsCurrent open and unread totals

AI

ToolDoes
ai_draft_replyGenerate a draft without sending it

Permissions and safety

An API key acts with the permissions of the workspace owner. There is no narrower scope, so a key handed to an MCP server can do everything in the workspace — including sending replies to real customers.

Two tools reach the outside world: conversation_reply sends to a customer, and api_key_delete revokes access. Everything else is read-only or internal.

Practical advice:

  • Create a dedicated key for the MCP server rather than reusing one.
  • Keep your MCP client's approval prompts on for conversation_reply. Reading the queue is safe to automate; answering it is not.
  • Prefer ai_draft_reply in the workflow, and send from the inbox after reading the draft.
  • Rotate by creating a new key and deleting the old one.

Source

The server is open source and published as @firstreply/mcp on npm, MIT licensed.