Skip to main content
POST
/
mcp
curl --request POST \
  --url https://api.stackone.com/mcp \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "jsonrpc": "2.0",
  "method": "initialize",
  "params": {
    "clientInfo": {
      "name": "my-client",
      "version": "1.0.0"
    },
    "protocolVersion": "2025-03-26",
    "capabilities": {}
  },
  "id": "init-1"
}
'
{
  "jsonrpc": "2.0",
  "id": "<string>",
  "result": "<unknown>",
  "error": {
    "code": -32600,
    "message": "Invalid request",
    "data": "<unknown>"
  }
}

Authorizations

Authorization
string
header
required

Basic authentication header of the form Basic <encoded-value>, where <encoded-value> is the base64-encoded string username:password.

Headers

x-account-id
string

Account secure id for the target provider account (optional if x-account-id query parameter is provided)

mcp-session-id
string

Session id; omit for initialize, include for subsequent calls

Accept
string
default:application/json, text/event-stream

Response format. Include text/event-stream to receive SSE, application/json for standard JSON, or both.

Example:

"application/json, text/event-stream"

Query Parameters

param-style
enum<string>

Parameter schema style: "nested" (default) groups by location, "flat_prefixed" flattens with location prefix, "flat_smart" flattens and only prefixes on name collision

Available options:
nested,
flat_prefixed,
flat_smart
tool-mode
enum<string>

Tool registration mode: "individual" (default) registers each action as a separate tool; "search_execute" registers two tools per linked account for a search-then-execute flow

Available options:
individual,
search_execute

Body

application/json

JSON-RPC 2.0 message

jsonrpc
string
required

JSON-RPC protocol version

Example:

"2.0"

method
string
required

JSON-RPC method name. Supported values: initialize, tools/list, tools/call.

Example:

"initialize"

params
object

Method parameters. Shape varies by method — see the request body examples.

id

Request id (string or number). Echoed back in the response.

Response

Processed successfully

jsonrpc
string
Example:

"2.0"

id

Echoes the id from the request. null for protocol-level errors where the id could not be determined.

result
any | null

Present on success. Shape varies by method — see response examples.

error
object

Present on protocol-level failure. Tool-level failures use result with isError: true instead.