Nacos 3.1.0 Introduces A2A Registry: Managing Agents Like Microservices
Nacos 3.1.0 adds an A2A Registry that treats AI Agents as first‑class services, offering namespace isolation, version control, and automatic discovery so teams can govern, version, and scale agents just like traditional microservices.
Many teams have started building AI Agents, but managing their addresses, versions, and isolation quickly becomes chaotic as the system grows. Nacos 3.1.0 addresses this by introducing the Nacos Agent Registry (A2A Registry) , which brings agents back into a familiar governance framework.
What the A2A Registry provides
The official documentation states that from version 3.1.0 Nacos supports A2A Registry for managing AgentCard objects, which act as a "business card" for an agent, containing its name, description, entry URL, and version.
Key capabilities
Namespace isolation : each agent belongs to a single namespace; Nacos uniquely identifies an agent with namespaceId + name, allowing separate management of test, production, and team environments without cross‑talk.
Version management : an agent can have multiple versions, each with its own version field, and a default version can be designated. This supports iteration, rollback, and gray releases.
Service discovery : when using Spring AI Alibaba, a registered agent can be automatically discovered by callers via the registry, eliminating hard‑coded addresses. External agents can also be imported through the console or HTTP API.
How to use it
If you develop an agent with Spring AI Alibaba, first add the two starters:
<artifactId>spring-ai-alibaba-starter-a2a-server</artifactId>
<artifactId>spring-ai-alibaba-starter-a2a-registry</artifactId>Define the agent bean:
@Bean
@Primary
public BaseAgent rootAgent(ChatModel chatModel) throws GraphStateException {
return ReactAgent.builder()
.name("nacos-assistant")
.model(chatModel)
.build();
}Configure the Nacos address, version, and AgentCard URL:
spring:
ai:
alibaba:
a2a:
nacos:
server-addr: ${NACOS_ADDRESS:localhost:8848}
server:
version: 1.0.1
card:
url: http://localhost:9999/a2aOn the client side, use the A2aRemoteAgent builder and enable discovery:
A2aRemoteAgent.builder()
.agentCardProvider(agentCardProvider)
.name("nacos-assistant")
.build();
spring:
ai:
alibaba:
a2a:
nacos:
discovery:
enabled: trueWhy it matters
The real value of the A2A Registry is not the few extra lines of configuration but the inclusion of an agent’s lifecycle in the overall governance process. Publishers know which agent and version they released; callers know which instance they are connecting to; operations can see how many agents are running, in which namespaces, and in which environments.
In enterprises, agents often start as small pilots and then scale to dozens across multiple business lines, tenants, and vendors. Without a registry, this information is scattered across code, config files, and documentation, making it hard to determine the actual runtime state.
Who benefits
For a simple local demo the feature may feel optional, but once you have multiple cooperating agents, or environments such as test, pre‑release, and production, the registry becomes essential for keeping the system manageable. The current client SDK is Java‑only, with other languages planned on the roadmap.
If you are already working with Spring AI Alibaba, Nacos, MCP, or any agent platform, adopting this capability early saves future integration effort, because retrofitting governance after many agents are deployed is considerably more costly.
Final thoughts
Nacos 3.1.0’s A2A Registry does more than add a new AI buzzword; it finally brings agents back onto the engineering governance track, providing namespace, version, registration, and discovery capabilities that will become increasingly critical as agent ecosystems grow.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
MeowKitty Programming
Focused on sharing Java backend development, practical techniques, architecture design, and AI technology applications. Provides easy-to-understand tutorials, solid code snippets, project experience, and tool recommendations to help programmers learn efficiently, implement quickly, and grow continuously.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
