Welcome to the New BigPanda API Documentation
Use Biggy from Claude, Cursor, ChatGPT, Codex, VS Code, Gemini CLI or any Model Context Protocol client.
Served on the dedicated mcp..biggy.io host (also aliased on the API host) over Streamable HTTP; clients sign in with OAuth 2.1 (Biggy is the authorization server) or a personal AI-client key from the Connect page. The easiest setup is the one-click flow at /connect.
Every tool runs as the connected person (OAuth grant or personal key) with their Biggy permissions. ask_biggy runs the full orchestrator and records the conversation in the web chat history. Direct tools are read-only capability calls filtered by capability authorization. Workflow tools are organization-scoped, enabled, orchestrator-eligible workflows. Organization admins choose which tool families are exposed in the web app under Integrations > AI clients.
❗ Rate limitations
To maintain quality of service, the Biggy API is limited to 100 requests per minute. Additional requests will return a 429 response code and the request will need to be retried.
The single /mcp endpoint handles the full MCP lifecycle over standard HTTP POST. Each request is a JSON-RPC 2.0 message. The method field determines the operation (initialize, tools/list, tools/call).
GET and DELETE calls return 405 Method Not Allowed (stateless mode does not use sessions or server-sent event (SSE) streams).
The following methods are available via the /mcp endpoint.
Initialize the MCP session. Stateless Streamable HTTP over JSON-RPC 2.0 (2026-07-28 revision, with 2025-era clients served through the stateless legacy fallback). /mcp/key is an identical endpoint without OAuth discovery for clients that must use a bearer key (Cursor).
Unauthenticated requests answer 401 with WWW-Authenticate: Bearer resource_metadata="https://mcp.biggy.io/.well-known/oauth-protected-resource/mcp" so clients discover the Biggy authorization server (RFC 9728).
GET and DELETE return 405 Method Not Allowed (stateless mode).
Request
curl -sS -X POST "https://api.biggy.io/mcp" \
-H "Authorization: Bearer your-api-key" \
-H "Accept: application/json, text/event-stream" \
-H "Authorization: Bearer <OAuth access token | bga_...>" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 1,
"method": "initialize",
"params": {
"protocolVersion": "2026-07-28",
"capabilities": {},
"clientInfo": {
"name": "my-agent",
"version": "1.0.0"
}
}
}'
Response
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"protocolVersion": "2026-07-28",
"capabilities": {
"tools": {},
"prompts": {},
"resources": {},
"logging": {}
},
"serverInfo": {
"name": "biggy",
"title": "Biggy",
"version": "3.0.0",
"websiteUrl": "https://biggy.io"
}
}
}
Discover ask_biggy and get_conversation, the read-only direct tools (search_knowledge, fetch_itsm_records, who_is_on_call, find_related_changes, knowledge_graph, change_risk, biggy_pulse, servicenow_query, external_observability, list_paging_targets, biggy_handbook, plus your enabled integration agents) and workflow_ tools. Skills are exposed as prompts (prompts/list).
Request
curl -sS -X POST "https://api.biggy.io/mcp" \
-H "Authorization: Bearer your-api-key" \
-H "Accept: application/json, text/event-stream" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 2,
"method": "tools/list",
"params": {}
}'
Response
{
"jsonrpc": "2.0",
"id": 2,
"result": {
"tools": [
{
"name": "ask_biggy",
"title": "Ask Biggy",
"description": "Ask Biggy anything about your incidents, changes, on-call and knowledge; runs the full Biggy agent as you.",
"inputSchema": {
"type": "object",
"properties": {
"question": {
"type": "string",
"minLength": 1,
"maxLength": 12000
},
"conversationId": {
"type": "string",
"description": "Continue an existing Biggy conversation."
},
"skillId": {
"type": "string",
"description": "Pin a Biggy skill (see prompts/list)."
},
"responseFormat": {
"type": "string",
"enum": [
"markdown",
"plain-text"
]
}
},
"required": [
"question"
]
},
"annotations": {
"readOnlyHint": true,
"destructiveHint": false,
"idempotentHint": true,
"openWorldHint": false
}
}
]
}
}
Execute a tool. ask_biggy streams progress notifications while the Biggy agent works and returns the answer with sources and an "Open in Biggy" link; after a soft timeout it returns status "running" with a conversationId you can poll with get_conversation. Direct tools return the capability result.
Tool-level errors (unavailable tool, permission denied, guardrail rejection) return isError: true inside the result, not as HTTP errors.
Clients that support MCP Apps receive a rendered Biggy answer card alongside the text.
Request
curl -sS -X POST "https://api.biggy.io/mcp" \
-H "Authorization: Bearer your-api-key" \
-H "Accept: application/json, text/event-stream" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": 3,
"method": "tools/call",
"params": {
"name": "ask_biggy",
"arguments": {
"question": "What changed in the last 24 hours for the payments service?"
}
}
}'
Response
{
"jsonrpc": "2.0",
"id": 3,
"result": {
"content": [
{
"type": "text",
"text": "Three changes touched payments in the last 24 hours...\n\nOpen in Biggy: https://app.biggy.io/chat?id=6830f1a2e3b4c5d6e7f80001"
}
],
"structuredContent": {
"status": "completed",
"conversationId": "6830f1a2e3b4c5d6e7f80001",
"conversationUrl": "https://app.biggy.io/chat?id=6830f1a2e3b4c5d6e7f80001",
"answerMarkdown": "Three changes touched payments...",
"sources": []
}
}
}
Any MCP-compatible client can connect to this endpoint. The following is an example configuration for clients that accept a remote MCP server URL:
{
"mcpServers": {
"biggy": {
"url": "https://api.biggy.io/mcp",
"headers": {
"Authorization": "Bearer your-api-key"
}
}
}
}