Skip to content

A2A (Agent-to-Agent)

Exepad implements the A2A protocol so agent frameworks that speak A2A can drive app edits without MCP.

Host https://a2a.exepad.com
Discovery (public) GET /.well-known/agent-card.json — no auth required
Agent card (authed) GET /agent-card (discovery:read)
Messages POST /message/send — JSON-RPC 2.0 (edits:write)
Protocol version 0.2.0
Terminal window
curl https://a2a.exepad.com/.well-known/agent-card.json
{
"name": "Exepad Platform",
"url": "https://a2a.exepad.com/v1/a2a/message/send",
"version": "1.0.0",
"protocolVersion": "0.2.0",
"capabilities": { "streaming": false, "pushNotifications": false },
"defaultInputModes": ["text/plain"],
"defaultOutputModes": ["application/json"],
"skills": [
{ "id": "create_app", "name": "Create app" },
{ "id": "edit_app", "name": "Edit app" },
{ "id": "publish", "name": "Publish app" }
]
}

message/send maps a text instruction onto an AI edit of an existing app. The target app travels in message.metadata.app_id:

Terminal window
curl -X POST https://a2a.exepad.com/message/send \
-H "Authorization: Bearer $EXEPAD_KEY" \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"id": "req-1",
"method": "message/send",
"params": {
"message": {
"role": "user",
"parts": [{ "kind": "text", "text": "Add a dark-mode toggle to the header." }],
"metadata": { "app_id": "uqon8zje" }
}
}
}'
{
"jsonrpc": "2.0",
"id": "req-1",
"result": {
"id": "5cbc2770-ef02-4615-8507-7b2b1149eebe",
"contextId": "uqon8zje",
"kind": "task",
"status": { "state": "submitted" }
}
}

The returned task id is a dev-platform edit id — track it with GET /v1/apps/{app_id}/edits/{id} (or the edit.completed / edit.failed webhooks).

JSON-RPC reserved codes are used: -32600 invalid request, -32601 method not found, -32602 invalid params (e.g. missing metadata.app_id or text part), plus -32001 for application errors. Scope and app-pin checks apply exactly as on REST — a key pinned to other apps gets an authorization error for this app_id.

A2A currently covers the edit skill end-to-end; for create and publish, use REST or MCP alongside it. The agent card, capabilities, and this page will track the surface as it grows.