Overview
The anonymous MCP endpoint provides API key-based authentication for MCP tool calls, allowing execution without OAuth setup. This is ideal for:- Self-hosted deployments
- CI/CD integrations
- Automated workflows
- Service-to-service communication
Endpoint
POST /v1/mcp/anonymousGET /mcp/anonymous(for MCP protocol negotiation)DELETE /mcp/anonymous(for session cleanup)
Authentication
API keys can be provided in two ways:Requirements
Generate API Key
Create an API key from the Executor web UI:
- Navigate to Settings → API Keys
- Click “Generate New Key”
- Copy the key (shown only once)
- Store securely in your environment
Get Workspace ID
Find your workspace ID in the web UI:
- Settings → Workspace → Workspace ID
- Or extract from URL:
https://app.executor.sh/workspace/<WORKSPACE_ID>
Security
Key Verification
The endpoint verifies:- API key signature - Uses MCP API key signing configured on server
- Workspace match - API key must be issued for the requested workspace
- Account access - Account associated with key must have workspace access
- Anonymous provider - Currently restricted to anonymous accounts only
Error Responses
400 Bad Request
Missing
workspaceId query parameter401 Unauthorized
Missing or invalid API key
403 Forbidden
- API key does not match requested workspace
- Account lacks workspace access
- API key auth not enabled for account type
MCP API key signing not configured on server
MCP Protocol
The anonymous endpoint implements the full MCP (Model Context Protocol) specification:Supported Methods
tools/list
tools/list
List all available tools in the workspace
tools/call
tools/call
Execute a tool (typically
execute for code execution)initialize
initialize
Initialize MCP session and negotiate capabilities
Session Management
Sessions are automatically managed:- Automatic creation - New anonymous workspace/account context created per request if needed
- Session IDs - Include
sessionIdinexecutearguments to group related tasks - Ephemeral state - Each request uses fresh or session-scoped context
- No cleanup required - Sessions expire automatically
Session ID Example
Complete Example
Configuration
Server-side configuration (environment variables):.env
Comparison with OAuth Endpoint
| Feature | /mcp/anonymous | /mcp |
|---|---|---|
| Authentication | API Key | WorkOS OAuth |
| Setup Complexity | Low | Medium |
| User Context | Anonymous | Authenticated user |
| Use Case | Service integration | User-facing applications |
| Workspace ID | Required in query | Required in query |
| Rate Limits | Per workspace | Per user/workspace |
Rate Limits
Same rate limits as the authenticated endpoint:- Default: 100 requests per minute per workspace
- Configurable in workspace settings
- Returns HTTP 429 when exceeded