Skip to content
Browse the docs

Developers

MCP server for AI assistants

Connect Claude, Claude Code and other MCP clients to your ASDK workspace to search knowledge, ask questions, read leads and gaps, and add answers.

Last updated

On this page

ASDK runs a remote Model Context Protocol server, so AI assistants can work with your sites: look things up in a site's knowledge base, answer questions the way your widget does, see new leads and the questions your knowledge base can't answer yet, and add answers.

Addresshttps://api.asdk.com/mcp
TransportStreamable HTTP (JSON responses, no session needed)
AuthenticationA workspace API key as a bearer token: Authorization: Bearer asdk_live_…

Create a dedicated key for each assistant under Settings → API. A Read key covers every tool except add_answer; give the key the write scope only when the assistant should add answers.

Tools

ToolWhat it doesScope
list_sitesThe workspace's sites with their ids, names and addresses.read
search_knowledgeThe passages of a site's knowledge base that best match a query, with their page and section. Does not count as an answer.read
askAnswers a question from a site's knowledge base exactly like the widget, with the pages it cites. Counts as one answer of the plan's monthly answers.read
list_leadsA site's leads since a date (default: the last seven days), newest first.read
list_knowledge_gapsQuestions visitors asked that the knowledge base could not answer, most asked first.read
add_answerAdds a question and its answer to a site's knowledge base as a Q&A pair; agents use it within a minute.write

Tools take a site by its id (site_…) or its address (acme.com).

Claude

On claude.ai and in Claude Desktop, add ASDK as a custom connector:

Add the connector

Open Customize → Connectors, choose Add and then Add custom connector. Enter a name such as "ASDK" and the address https://api.asdk.com/mcp.

Send the API key

Under authentication choose No sign in, and under Request headers add the header Authorization with the value Bearer asdk_live_… (your key). Choose Add.

Use it in a chat

Switch the connector on in a chat with the + button → Connectors, then ask, for example: "Which questions did visitors of acme.com ask that we couldn't answer this week?"

On Team and Enterprise plans an owner adds the connector under Organization settings → Connectors; everyone who uses it shares the key in its request headers, so use a read key unless members should add answers. Claude connects from Anthropic's cloud, which ASDK's public address allows.

Claude Code

Shell
claude mcp add --transport http asdk https://api.asdk.com/mcp \
  --header "Authorization: Bearer $ASDK_API_KEY"

Run /mcp in Claude Code to check that the server is connected. To share the setup with your team, add it to the project's .mcp.json and let everyone provide their own key through an environment variable:

JSON
{
  "mcpServers": {
    "asdk": {
      "type": "http",
      "url": "https://api.asdk.com/mcp",
      "headers": { "Authorization": "Bearer ${ASDK_API_KEY}" }
    }
  }
}

ChatGPT and the OpenAI API

ChatGPT adds custom MCP servers on its Plugins page, and those servers must sign people in with OAuth or allow anonymous use: ChatGPT cannot send an API key. ASDK's MCP server takes API keys, so it cannot be added in the ChatGPT app yet; sign-in with OAuth for the MCP server is planned.

In your own code, the OpenAI Responses API connects to ASDK's MCP server with the key in the remote MCP tool's authorization field:

JSON
{
  "model": "gpt-5-mini",
  "input": "List the new leads of acme.com from this week.",
  "tools": [
    {
      "type": "mcp",
      "server_label": "asdk",
      "server_url": "https://api.asdk.com/mcp",
      "authorization": "asdk_live_…",
      "allowed_tools": ["list_sites", "list_leads"],
      "require_approval": "never"
    }
  ]
}

Other MCP clients

Any client that supports the Streamable HTTP transport and request headers works: point it at https://api.asdk.com/mcp and send Authorization: Bearer asdk_live_….

Limits and errors

The MCP server allows 120 requests per minute and 20 ask calls per minute for each key; see rate limits. Requests without a valid key answer 401, a plan without API access 403. When a tool cannot do what it was asked (an unknown site, a read-only key for add_answer, the month's answers used up), it returns an error result that tells the assistant what went wrong, so it can correct itself.