everything-a2a · Agent console

Interactive documentation & test bench for the A2A server (A2A 1.0.0-preview2). Run any agent operation below.

checking… All URLs

Each panel shows a friendly Result view first; switch to JSON for the raw response. A2A 1.0 uses proto-style JSON: PascalCase methods (SendMessage, SendStreamingMessage), role ROLE_USER, parts as { "text": … }. Every call below is a real JSON-RPC request.

Echo Agent

POST /echo · Message response
SendMessageSendStreamingMessage

Replies Echo: <your text> as a single Message (the synchronous union-type response).

Text Stats Agent

POST /textstats · tracked Task + artifact
SendMessageSendStreamingMessageGetTaskListTasks

Returns a Task (Submitted → Working → artifact → Completed). Computes character/word/line counts.

Long-Running Agent

POST /longrunning · streaming · cancellation · failure · push
SendMessageSendStreamingMessageGetTaskCancelTask

Duration comes from the text: 30s, 10m, 2h, 1d (default 4s). Split into 5–20 steps, each emitting a Working status update + a progress-log artifact chunk. Include the word fail to force a failure. Cancellation is honored mid-step.

Rich Content Agent

POST /richcontent · multi-part message
SendMessage

One message bundling four part types: text, structured data (JSON), an inline raw PNG, and a url reference.

Input-Required Agent

POST /inputrequired · two-turn task
SendMessage (turn 1)SendMessage + taskId (turn 2)

Turn 1 pauses in INPUT_REQUIRED asking for your name. Turn 2 sends the answer with the same taskId/contextId to resume and complete.

Conversation Agent

POST /conversation · multi-turn task with memory
SendMessage (turn 1)SendMessage + taskId (turns 2..n)

A stateful conversation on one long-lived task. Each turn keeps the same task INPUT_REQUIRED and grows its history; the agent recalls what you've said. Say bye to finish with a transcript artifact.

Inspector Agent

POST /inspect · inspects input parts
SendMessage

Send a message with one or more part types and the agent reports each part's kind, media type, filename and size. Try a single part type, or all three at once.

Storyteller Agent

POST /story · token-style text streaming
SendMessageSendStreamingMessageCancelTask

Picks one of five fantasy short stories at random and streams it paragraph by paragraph (slowly) into one story artifact — the way an LLM streams tokens. The Result view assembles the prose, paragraphs and all, as it arrives.

Markdown Agent

POST /markdown · text/markdown output
SendMessage

Returns a text part tagged text/markdown. The Result view renders it as formatted Markdown; the JSON tab shows the raw part including its mediaType.

Faulty Agent

POST /faulty · error handling
SendMessage

Shows how errors surface. Handled reports a terminal Failed task with a clear message (the recommended pattern). Unhandled rethrows — preview2 collapses that into a generic -32006 with no detail, which is why handled is preferred.

JSON-RPC method reference

Every agent endpoint accepts these methods (support varies by agent — see each card's tags).

MethodPurposeKey params
SendMessageSend a message; returns a Message or a Taskmessage, configuration?
SendStreamingMessageSame, but streams events over SSEmessage
GetTaskFetch a task by idid, historyLength?
ListTasksList tasks (pagination)pageSize?, pageToken?
CancelTaskCancel a running taskid
SubscribeToTaskRe-attach to an in-flight task's event streamid

Discovery: each agent's card is at /{agent}/.well-known/agent-card.json (echo also at /.well-known/agent-card.json). Health: /health.

preview2 notes: push-notification config CRUD (CreateTaskPushNotificationConfig & co.) returns -32003 — push is delivered via the inline configuration.pushNotificationConfig instead. The extended agent card isn't configurable, so no agent advertises it. configuration.returnImmediately: true runs a task in the background.

Configurable simulated latency via A2A_WORK_DELAY_MS. See the project agent cards and the README for details.