Skip to content

A2A for agents

View Markdown

The hosted A2A interface lets an agent ask a question against a Little Big Brain graph and receive an answer as a text message. It uses A2A 1.0 over JSON-RPC 2.0.

Fetch the Agent Card to find the interface and its requirements. The card comes from the hosted service: publishing this documentation or the website does not itself deploy the service. A non-200 response means the card is unavailable; try again later. A card response does not establish that your account has access or that Ask is healthy. The service must be deployed separately before it can be used.

Obtain an organization-scoped WorkOS OAuth access token for the resource https://mcp.littlebigbrain.com, following the protected-resource metadata and agent authentication instructions. For a registered agent identity, the client must have the trusted mcp:access permission. Your organization must own the environment and have subscription access.

The card’s interface URL is https://mcp.littlebigbrain.com/a2a. Send the existing environment slug in X-LBB-Stack; no environment is selected automatically. Alternatively, use https://mcp.littlebigbrain.com/a2a/<environment-slug>. The server checks ownership for the authenticated organization. Add ?graph=<name> to select a graph, or omit it to use the hosted service’s default graph.

Set LBB_OAUTH_TOKEN and LBB_STACK_SLUG in your environment and choose a unique message ID for each request:

Terminal window
curl -sS 'https://mcp.littlebigbrain.com/a2a' \
-H "Authorization: Bearer $LBB_OAUTH_TOKEN" \
-H "X-LBB-Stack: $LBB_STACK_SLUG" \
-H 'A2A-Version: 1.0' \
-H 'Content-Type: application/json' \
--data '{
"jsonrpc": "2.0",
"id": 1,
"method": "SendMessage",
"params": {
"message": {
"messageId": "example-message-1",
"role": "ROLE_USER",
"parts": [{"text": "Which services exist?"}]
}
}
}'

A successful response has result.message, with role: "ROLE_AGENT" and a text part containing the answer and any citations returned by Ask. If Ask cannot answer, the message says so. The request can contain up to eight text parts, joined with newlines, and the question is limited to 4,000 Unicode characters. Ask uses the environment’s configured models and can consume model tokens.

This interface handles one question per call. A supplied contextId is echoed for correlation; it does not restore a conversation. No tasks are retained: GetTask and CancelTask return TaskNotFound, and ListTasks returns an empty result. Streaming, push notifications and extended Agent Cards are not supported. Use MCP for the broader tool surface.