Connect an MCP client
Every Prompt TM server URL has this shape:
https://www.prompt-tm.com/mcp/<server id>?user_id=<user>
The transport is streamable HTTP. The server answers POST with JSON and needs no session. Send the key as the x-api-key header. Where a client can't send headers, generate a URL with a scoped key (MCP servers → server → Generate URL, or POST /api/v3/mcp/servers/{id}/generate with "with_key": true). That key opens only that server, for only that user.
Claude Code
claude mcp add --transport http prompt-tm \
"https://www.prompt-tm.com/mcp/mcp_...?user_id=alice" \
--header "x-api-key: ptm_..."
Claude Desktop
In claude_desktop_config.json, or under Settings → Connectors → Add custom connector with the scoped-key URL:
{
"mcpServers": {
"prompt-tm": {
"type": "http",
"url": "https://www.prompt-tm.com/mcp/mcp_...?user_id=alice",
"headers": { "x-api-key": "ptm_..." }
}
}
}
claude.ai
Settings → Connectors → Add custom connector. Paste the URL with &key=ptm_... from Generate URL. Leave the OAuth fields empty.
Cursor
~/.cursor/mcp.json:
{
"mcpServers": {
"prompt-tm": {
"url": "https://www.prompt-tm.com/mcp/mcp_...?user_id=alice",
"headers": { "x-api-key": "ptm_..." }
}
}
}
VS Code
.vscode/mcp.json:
{
"servers": {
"prompt-tm": {
"type": "http",
"url": "https://www.prompt-tm.com/mcp/mcp_...?user_id=alice",
"headers": { "x-api-key": "ptm_..." }
}
}
}
Windsurf
~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"prompt-tm": {
"serverUrl": "https://www.prompt-tm.com/mcp/mcp_...?user_id=alice&key=ptm_..."
}
}
}
OpenAI Agents SDK (Python)
from agents import Agent, Runner
from agents.mcp import MCPServerStreamableHttp
async with MCPServerStreamableHttp(params={
"url": "https://www.prompt-tm.com/mcp/mcp_...?user_id=alice",
"headers": {"x-api-key": "ptm_..."},
}) as server:
agent = Agent(name="ops", mcp_servers=[server])
result = await Runner.run(agent, "Which Vercel deployments failed today?")
Claude Agent SDK (TypeScript)
import { query } from "@anthropic-ai/claude-agent-sdk"
for await (const message of query({
prompt: "Open an issue in acme/web about the Safari checkout bug",
options: {
mcpServers: {
"prompt-tm": {
type: "http",
url: "https://www.prompt-tm.com/mcp/mcp_...?user_id=alice",
headers: { "x-api-key": process.env.PROMPT_TM_KEY! },
},
},
},
})) console.log(message)
Without MCP
GET /api/v3/tools?toolkit_slug=github&format=anthropic returns tool definitions ready for the Anthropic Messages API (format=openai for Chat Completions, format=openai_responses for the Responses API). Run the model's tool calls with POST /api/v3/tools/execute/{slug}. See the API reference.