The open protocol for other agents to query your knowledge base
Every BeforeQuery knowledge base publishes a public A2A AgentCard and accepts message/send calls. When another AI system — a customer's assistant, a partner's agent, an internal automation — needs your knowledge, it discovers your card and asks. No custom integration, no vendor lock-in, no plugin registry to petition.
How A2A works
A public AgentCard for discovery, a message/send endpoint for interop — grounded in the same knowledge base as the widget, bots, and MCP
Discoverable AgentCard
- GET /a2a/knowledge-bases/:kbId/agent-card returns the standard A2A card
- Describes what your knowledge base answers, in what languages, with what limits
- Public by design — the card is the discovery surface
- Cards can be listed in A2A directories (agent registries)
- Version-tagged so consumers know when the interface changes
message/send Endpoint
- POST /a2a/knowledge-bases/:kbId accepts the standard A2A message/send envelope
- Client-key authentication with revocable, scoped access
- Returns cited answers with the same grounding as chat, MCP, or the widget
- Streams available for long-form responses
- Every call is a trace — same observability as the rest of the platform
Where A2A fits
- Agent frameworks that don't ship an MCP client can call A2A directly
- Partner integrations that shouldn't share your client-key can discover the card and negotiate access
- Multi-agent workflows where your KB is one specialist among several
- The @beforequery/agents SDK includes an A2A client for programmatic use
- MCP and A2A live side-by-side — MCP for IDE / assistant integration, A2A for agent-to-agent flow
Your knowledge base as a citizen of the agent ecosystem
The AI ecosystem is moving from 'call my API' to 'discover my capability'. MCP standardises the assistant-inside-tool integration; A2A standardises the agent-to-agent flow. Publishing an A2A card means any compliant agent can find and query your knowledge base without a custom integration — the same way HTTP made every server findable without a proprietary protocol per website. It's the interop layer BeforeQuery bets on.
- AgentCard is the discovery contract — public, machine-readable, versioned
- message/send is the interaction contract — same schema across A2A-compatible agents
- MCP endpoint (Cursor / Claude / ChatGPT) and A2A endpoint (agent-to-agent) coexist
- @beforequery/agents SDK includes both clients
- Traces record every A2A call — observable by design
Deployed in production, cited by the buyers who chose it
“Deployed on our docs site in an afternoon. Every answer has citations, and the abstention gate means we've never had a customer complain about a made-up answer.”
“The knowledge base connected to our Slack, Confluence, and helpdesk in one setup. On-call teams get the same cited answer whether they ask in chat, in the widget, or from Cursor.”
“The gap analytics turned into a real docs backlog. Deflection went up because we finally knew which pages were missing — the AI told us.”
Frequently Asked Questions
Common questions about A2A (Agent-to-Agent)
Publish your knowledge base as an agent
Create a knowledge base, issue a client key, and share the AgentCard URL — any A2A-compatible agent can now discover and query your docs.
Get Started Free