agent-network-protocol/anp

Our vision is to provide communication capabilities for intelligent agents, allowing them to connect with each other to form a collaborative network of intelligent agents.

What it solves

AgentConnect provides a multi-language SDK for the Agent Network Protocol (ANP), enabling AI agents to interact in an open, interoperable network. It solves the problem of agent discovery, secure authentication, and standardized communication, allowing agents to identify each other, publish discoverable interfaces, and communicate privately using end-to-end encryption (E2EE).

How it works

The project implements a protocol stack that handles several core functions:

  • Identity and Discovery: Uses DID WBA (Web-based decentralized identifiers) and Agent Description documents (ad.json) to let agents identify themselves and be found.
  • Interface Definition: Employs OpenRPC and JSON-RPC endpoints to define and expose what an agent can do, with a Python-specific tool called OpenANP that automatically generates these interfaces from type hints.
  • Trust and Verification: Implements W3C Data Integrity proofs and DID-WBA binding proofs to ensure requests and objects are trustworthy.
  • Addressing: Uses WBA Name Space (WNS) for human-readable handles and wba:// URIs.
  • Security: Provides building blocks for direct and group end-to-end encryption (E2EE), including support for MLS (Messaging Layer Security).

Who it’s for

Developers building AI agents who need their agents to be interoperable with other agents across different programming languages (Python, Go, Rust, Dart, TypeScript, and Java).

Highlights

  • Multi-language Support: SDKs available for Python, Go, Rust, Dart, TypeScript, and Java.
  • Rapid Prototyping: The OpenANP Python library allows developers to turn ordinary Python methods into discoverable ANP interfaces quickly.
  • Standardized Communication: Based on JSON-RPC 2.0 and OpenRPC for method calls.
  • Comprehensive Security: Integrated support for decentralized identifiers (DIDs), verifiable proofs, and E2EE.
  • LMM-Assisted Negotiation: Includes examples for LLM-assisted protocol negotiation.

Related

  • Project
  • Project
  • Project
  • Project
  • Project