Browse documentation
Get startedIntroductionQuickstart
ConceptsArchitectureCore objectsApproval and continuationsQuery lifecycle
SpecificationOverviewHTTP bindingMCP bindingA2A bindingSecuritySchema reference
CommunityContributingQEP 0001Governance
Specification

MCP binding

Expose AQP as negotiated MCP metadata and a typed response tool.

Capability

An MCP server supporting AQP declares the extension URI https://agentqueryprotocol.com/extensions/2026-07-30/mcp during discovery. Clients opt in per request. Generic MCP support does not imply support for human elicitation or durable decision storage.

Tool results

After a product tool completes, the server places a canonical QueryRequest under structuredContent._agentQuery. It may also include a short text reminder, but clients must rely on structured data for semantics.

Response tool

The server registers submit_agent_query_response. Its input schema preserves the canonical envelope and enforces the active query's exact answer contract. The tool returns a structured QueryReceipt, including nextQuery when applicable. It must be idempotent and should be annotated as non-destructive.

{
  "name": "submit_agent_query_response",
  "description": "Submit one bounded AQP response",
  "annotations": {
    "destructiveHint": false,
    "idempotentHint": true
  }
}

Human approval

For a query addressed to a human, the host must present the exact question and resume the exchange after the answer. It must not infer approval from tool selection, silence, generic MCP support, or an unrelated confirmation dialog. Native elicitation may be used only when the deployed client demonstrably supports it.

Transport

The binding inherits MCP transport, discovery, origin validation, version negotiation, and authorization requirements. AQP does not create MCP sessions or treat client information as verified respondent identity.