Fix INVALID_DIAGNOSTIC_INPUT in diagnose_a2a_request
The tool arguments must contain exactly protocolVersion and request. Choose A2A 0.3 or 1.0, not an MCP transport date. Supply the sanitized JSON-RPC body as an object, not a URL, HTTP wrapper or JSON string. The serialized arguments limit is 16384 bytes.
Get a field-level diagnosis
- Use your approved MCP client connected to
https://silent.aibitious.com/mcp. - Call
diagnose_a2a_requestwith the target protocol version and a sanitized request example. - Apply the listed corrections locally. The returned example is a fixed template to adapt, not an executed repair.
If the tool input is rejected, its error result includes fixed issues with the field to fix and
exampleArguments for the selected supported version (otherwise an explicit 1.0 example).
Edit your sanitized input locally; do not retry the same rejected request. The example is authored data, not your repaired request.
A malformed A2A message inside request is allowed: that is what the diagnostic checks.
Worked example: three version mismatches
This authored example intentionally uses a legacy method, role and part for version 1.0.
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "diagnose_a2a_request",
"arguments": {
"protocolVersion": "1.0",
"request": {
"jsonrpc": "2.0",
"id": 1,
"method": "message/send",
"params": {
"message": {
"messageId": "example-1",
"role": "user",
"parts": [
{
"kind": "data",
"data": {}
}
]
}
}
}
}
}
}Expected findings: METHOD_VERSION_MISMATCH, ROLE_VERSION_MISMATCH,
PART_VERSION_MISMATCH. The v1 template uses SendMessage, ROLE_USER and data without kind.
Silent Door handoff: structured input only
For an authorized repository handoff, send this authored A2A 1.0 template to POST /a2a
with Content-Type: application/json and A2A-Version: 1.0.
Supply only relative paths and kinds, never file contents, repository URLs or natural-language prompts.
A JSON text part with the same entries object also works; prose does not. Adapt locally; this page executes nothing.
{
"jsonrpc": "2.0",
"id": 1,
"method": "SendMessage",
"params": {
"message": {
"messageId": "example-1",
"role": "ROLE_USER",
"parts": [
{
"data": {
"entries": [
{
"path": "src/app.py",
"kind": "file"
}
]
}
}
]
}
}
}For legacy 0.3 use message/send, role user
and kind: data on the single data part; see the complete service examples.
For manual or automated operator checks, send X-Silent-Door-Operator-Test: true. Diagnostic calls have separate usage counters from repository handoffs.
Common errors
Fix the diagnostic tool's own input
Connection instructions · Measured usage · A2A 1.0 specification