Agent Mesh
Discover and call remote MCP tools as your own authenticated Agent Mesh member.
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
@agentmesh-p2p/sdkclaude mcp add agent-mesh -e 'AGENTMESH_CONTROL_PLANE_URL=<AGENTMESH_CONTROL_PLANE_URL>' -e 'AGENTMESH_BOOTSTRAP_TOKEN_PATH=<your agentmesh_bootstrap_token_path>' -e 'AGENTMESH_JWT_PATH=<your agentmesh_jwt_path>' -e 'AGENTMESH_STATE_DIR=<AGENTMESH_STATE_DIR>' -e 'AGENTMESH_INSECURE_CONTROL_PLANE=false' -- npx -y @agentmesh-p2p/sdk@0.2.0
{
"mcpServers": {
"agent-mesh": {
"command": "npx",
"args": [
"-y",
"@agentmesh-p2p/sdk@0.2.0"
],
"env": {
"AGENTMESH_CONTROL_PLANE_URL": "<AGENTMESH_CONTROL_PLANE_URL>",
"AGENTMESH_BOOTSTRAP_TOKEN_PATH": "<your agentmesh_bootstrap_token_path>",
"AGENTMESH_JWT_PATH": "<your agentmesh_jwt_path>",
"AGENTMESH_STATE_DIR": "<AGENTMESH_STATE_DIR>",
"AGENTMESH_INSECURE_CONTROL_PLANE": "false"
}
}
}
}
Environment variables
AGENTMESH_CONTROL_PLANE_URLrequired Control plane URL supplied by your mesh operator. HTTPS is required beyond loopback unless explicitly permitted below.AGENTMESH_BOOTSTRAP_TOKEN_PATHsecret Absolute path to a bootstrap token file for first enrollment. Set this OR AGENTMESH_JWT_PATH; leave both empty only when resuming saved credentials.AGENTMESH_JWT_PATHsecret Absolute path to an OIDC/workload token file. Alternative to the bootstrap token; reread during credential refresh.AGENTMESH_STATE_DIRAbsolute directory for this client identity. Use a distinct directory per client and mesh. If omitted, uses ~/.config/agentmesh/mcp.AGENTMESH_INSECURE_CONTROL_PLANEAllow plaintext HTTP beyond loopback. Development only: exposes enrollment traffic to the network.
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
Agent Mesh
Agent Mesh is a private network for AI agents. A node runs next to an agent and gives it three things: a way to publish tools and models to the network, a way to find and call what other nodes publish, and an identity every other node can verify. Nodes connect directly when they can and through relays when they cannot, so the network works across laptops, containers, clusters and phones behind NAT.
Note: We have updated the name to Agent Mesh to better align with the goals of the project in the ecosystem.
Two properties hold everywhere:
- Nothing is reachable by default. A node exposes no services until its configuration says so, and no node may call a service the mesh policy has not granted. Grants are evaluated on service names, never on addresses.
- Identity comes from your identity provider. A node enrolls with an OpenID Connect token or a bootstrap token, and the control plane turns that into a short-lived, offline-verifiable credential bound to the node's own key.
Try it
curl -sL https://google.github.io/agentmesh/install.sh | bash # agentmesh-node, mcp-client and friends
agentmesh-node join https://bananas.sam-mesh.dev # one-time login
agentmesh-node run --daemonize # local MCP server on 127.0.0.1:8080
agentmesh-node skill install # teach your agent to use it
Your agent now has tools that discover and call services across the mesh,
and an OpenAI-compatible endpoint that routes model requests to whoever
serves the model. bananas.sam-mesh.dev is a shared developer testnet with
no uptime promise; the quick start
walks through it, and your own mesh
runs a control plane on your laptop in one command.
To run a control plane of your own without installing anything, open a
GitHub codespace with the released binaries and run make testnet. It
starts on a public https URL that your laptop and phone can enroll into,
on your GitHub account's free quota:
The Codespaces guide has the steps, what persists and what stops.
What is in a mesh
| Program | Role |
|---|---|
agentmesh-control-plane | Verifies who is joining, issues each node a signed credential, and holds the policy that says who may call what. |
agentmesh-router | A well-known peer that nodes connect to first. Relays traffic between nodes that cannot reach each other and hosts the discovery table. |
agentmesh-node | Runs next to your agent or service. Enrolls, connects, serves your local backends to the mesh, and exposes the mesh to your agent as a local MCP server and OpenAI-compatible API. |
agentmesh-one | The control plane, a router and a web console in one binary, for laptops and small deployments. |
Documentation
google.github.io/agentmesh/docs is built from site/.
- Getting started: one node on the testnet, then a mesh of your own.
- Concepts: architecture, identity and enrollment, authorization, networking.
- Guides: exposing services, connecting agent clients, headless enrollment, Kubernetes, Cloud Run.
- Reference: every flag, configuration key, HTTP route and policy field.
- Preview: sandboxed agents and the mobile app, which work but are still settling.
- Contributing: building, testing and the local kind environment.
The repository has a dev container with the Go, Node and Python toolchains and Docker, so you can build and test in a codespace or in VS Code without installing anything:
Status
Agent Mesh is pre-1.0. The node, routers, control plane, identity and policy model are stable in shape and exercised by the test suite and two public testnets; see ROADMAP.md for the release plan. Sandboxed agent blueprints and the mobile app are in preview.
License and disclaimer
Apache-2.0; see LICENSE. This is not an officially supported Google product, and it is not eligible for the Google Open Source Software Vulnerability Rewards Program.
Frequently asked questions
What is Agent Mesh?
Discover and call remote MCP tools as your own authenticated Agent Mesh member.
How do I install Agent Mesh?
It runs on your machine. In Claude Code: claude mcp add agent-mesh -e 'AGENTMESH_CONTROL_PLANE_URL=<AGENTMESH_CONTROL_PLANE_URL>' -e 'AGENTMESH_BOOTSTRAP_TOKEN_PATH=<your agentmesh_bootstrap_token_path>' -e 'AGENTMESH_JWT_PATH=<your agentmesh_jwt_path>' -e 'AGENTMESH_STATE_DIR=<AGENTMESH_STATE_DIR>' -e 'AGENTMESH_INSECURE_CONTROL_PLANE=false' -- npx -y @agentmesh-p2p/sdk@0.2.0. For other clients, paste the JSON configuration from this page into their MCP settings.
Does Agent Mesh need an API key?
Yes. It expects AGENTMESH_CONTROL_PLANE_URL, AGENTMESH_BOOTSTRAP_TOKEN_PATH, AGENTMESH_JWT_PATH, which you set in its configuration.
Is Agent Mesh open source?
Yes. Its code is on GitHub under the Apache-2.0 license.
Who maintains Agent Mesh?
It is published by google. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.