Tasks persist across the conversation and stay isolated to the project that owns the agent.
This is separate from calling another agent inside EKB (same toolkit, target type In EKB). For internal multi-agent patterns, see Agent Communication Toolkit.
Prerequisites
Outbound: call an external A2A agent
Use this when a partner or third-party system exposes an A2A-compatible agent you want your EKB agent to delegate to.Configure
- Open the agent → Toolkits → enable Agent Communication.
- Add a helper-agent configuration (the UI may call this a helper or target agent card).
- Under Where this agent lives, choose External (A2A) (not In EKB).
- Enter the external agent’s base URL. HTTPS is required.
- You can paste either the base URL or the full agent-card URL ending in
/.well-known/agent-card.json— both are accepted.
- You can paste either the base URL or the full agent-card URL ending in
- Provide the partner’s API key / bearer token if required. Prefer storing it in the vault rather than pasting a literal into a shared config.
- Click Verify Connection so EKB can fetch the agent card and confirm name, description, skills, and reachability before you save.
- Save the agent configuration.
Outbound field checklist
Requirements and limits
- External targets must use HTTPS.
- Discovery and calls go through EKB’s backend (with SSRF protections). A URL that verifies is one the backend can actually reach — a laptop-only hostname will not work in production.
- Treat partner tokens like any other secret: vault references preferred over pasted literals.
Inbound: let others call your EKB agent
Use this when another product, partner agent, or custom A2A client should invoke one of your EKB agents.Agent Card URL
On the agent’s External Access tab you get an Agent Card URL shaped like:Sharing the card URL alone does not grant access — callers still need a key you issue.The card describes your agent’s name, description, skills (default chat skill), and JSON-RPC endpoint. Streaming is not advertised for these endpoints.
Access keys
- Open the agent → External Access.
- Optionally label the key (for example,
Acme partner integration) so you can tell keys apart later. - Create a key and copy the token immediately — only a hash is stored; the secret is shown once.
- Give the partner:
- The Agent Card URL
- The bearer token
- Revoke keys you no longer need. If a secret is lost, revoke and issue a new key (you cannot retrieve the old plaintext).
What external callers hit
Authenticate with:
Partner checklist (inbound)
- Fetch the agent card with the bearer token.
- Read the advertised JSON-RPC endpoint from the card.
- Send A2A JSON-RPC requests with the same bearer token.
- Expect tasks to remain tied to the owning project of the agent (see below).
Project isolation
Inbound A2A execution runs in the project that owns the agent. Template agents that exist in multiple projects are not shared across callers: each call is pinned to the correct project context so one tenant’s conversation cannot bleed into another’s.Typical setups
Troubleshooting
Related
- Agent Communication Toolkit — multi-agent delegation inside EKB (and outbound A2A targets)
- Agents overview