API keys and Headless Context MCP
Create API keys in the Developer Portal to build and manage MCP servers from your own backend or from an AI agent. The keys work with the same endpoints as the MCP Studio API and with Headless Context MCP.
| Audience | Backend engineers and platform teams |
|---|---|
| Prerequisites | An SDK developer account |
Create a key
Open Portal → API keys, name the key, and copy it. It starts with msk_live_ and is shown once. Keep it on your server. You can hold up to ten active keys and revoke any of them from the same page.
Call the REST API
curl https://appatools.com/mcp-studio/api/mcp/list \
-H "Authorization: Bearer $MCP_STUDIO_API_KEY"
Servers created with a key belong to your integration workspace and count toward your SDK plan.
Act for one end user
Add the X-MCP-Studio-End-User header with the same endUserId your backend uses for session tokens. The request then acts as that end user, and any server it creates appears in their dashboard:
curl -X POST https://appatools.com/mcp-studio/api/mcp/create \
-H "Authorization: Bearer $MCP_STUDIO_API_KEY" \
-H "X-MCP-Studio-End-User: user_1842" \
-H "Content-Type: application/json" \
-d '{"name":"Product docs","sources":[{"url":"https://docs.example.com","type":"website"}],"tools":["search_docs","ask_question","get_quickstart"]}'
An id that is empty, longer than 200 characters, or starts with ~ is refused with 401.
Use Headless Context MCP
Point an MCP client at the headless endpoint with your key:
{
"mcpServers": {
"mcp-studio": {
"url": "https://appatools.com/mcp-studio/api/headless/mcp",
"headers": {
"Authorization": "Bearer msk_live_..."
}
}
}
}
Add "X-MCP-Studio-End-User": "user_1842" to headers to manage one end user's servers. The tools and their guardrails are described in Headless Context MCP.