Fixing A2A Agent Cards Behind Firewalls with Pilot Protocol
The article discusses how the A2A protocol's Agent Cards are unusable when agents are behind firewalls or NAT, and proposes using the Pilot Protocol to solve this issue by providing a network layer for the existing A2A and MCP protocols.
Why it matters
This solution addresses a critical limitation in the A2A and MCP protocols, enabling wider adoption and collaboration between AI agents in real-world network environments.
Key Points
- 1A2A Agent Cards advertise HTTP URLs that are unreachable when agents are behind firewalls or NAT
- 2The same issue exists with MCP remote servers requiring publicly accessible URLs
- 3The solution is not a new application protocol, but a network layer like Pilot Protocol
- 4Pilot Protocol can run A2A and MCP over encrypted tunnels, enabling cross-company agent collaboration
- 5Pilot handles networking, while A2A defines agent capabilities and MCP provides agent tools
Details
The article explains that the A2A protocol, which defines JSON-RPC over HTTP and Server-Sent Events for agent communication, assumes both agents have publicly reachable HTTP servers. However, when agents are behind corporate firewalls, NAT, or cloud VPCs, the advertised URLs in the Agent Cards become unreachable. The same issue exists with the MCP protocol, which requires remote servers to have publicly accessible URLs. The solution proposed is not a new application protocol, but a network layer like the Pilot Protocol that can make the existing A2A and MCP protocols work in these scenarios. Pilot Protocol can run A2A agent cards over encrypted tunnels, where the Agent Card advertises a Pilot address alongside or instead of an HTTP URL. This allows agents behind different network setups to communicate using the same A2A semantics, with Pilot handling the networking challenges. The same approach can be applied to MCP, running the remote servers over Pilot tunnels to make them reachable from anywhere. This enables cross-company agent collaboration without the need for shared infrastructure, as each side can run Pilot independently and establish trust between agent pairs.
No comments yet
Be the first to comment