peering-manager-mcp-server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@peering-manager-mcp-serverWhich BGP sessions are not established?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Peering Manager MCP Server
A read-only Model Context Protocol server for Peering Manager. Exposes peering infrastructure data as conversational tools for use with Claude Code, claude.ai, or any MCP-compatible client.
Tools
Tool | Description |
| Unified view of BGP sessions across direct peering and IXP sessions |
| Full detail for a single session with type-specific fields |
| Search/filter autonomous systems |
| AS detail with shared IXPs and facilities |
| Routers with status and platform info |
| Internet exchange points |
| IXP detail with available peers |
| IXP connections with IP/VLAN/router mapping |
| Import/export routing policies |
| BGP communities |
| Rendered Jinja2 configuration for a router |
| Query cached PeeringDB data (networks, IXPs, facilities, network-ixlans) |
| Audit log of recent object changes |
All tools are read-only. No write operations are exposed.
Related MCP server: net-mcp
Requirements
Node.js 18+
A running Peering Manager instance with API access
An API token with read permissions
Install
npm install -g git+https://github.com/yourorg/peering-manager-mcp-server.gitThis installs the peering-manager-mcp-server command globally.
Configuration
The server reads two required environment variables:
Variable | Description |
| Base URL of your Peering Manager instance (e.g. |
| API token for authentication |
| Optional. Timeout in seconds for config rendering (default: |
Usage
Claude Code
Add to your global MCP settings (~/.claude/settings.json):
{
"mcpServers": {
"peering-manager": {
"command": "peering-manager-mcp-server",
"env": {
"PM_URL": "https://pm.example.com",
"PM_API_TOKEN": "your-api-token"
}
}
}
}MCP Inspector
PM_URL=https://pm.example.com PM_API_TOKEN=your-token npx @modelcontextprotocol/inspector peering-manager-mcp-serverDevelopment
git clone https://github.com/yourorg/peering-manager-mcp-server.git
cd peering-manager-mcp-server
npm install
npm run build
PM_URL=https://pm.example.com PM_API_TOKEN=your-token npm startExample queries
Once connected, you can ask Claude things like:
"Which BGP sessions are not established?"
"Show me all peers at AMS-IX"
"What IXPs do we share with AS13335?"
"Show me the config for router core-1"
"What routing policies are applied to our transit peers?"
"What changed in the last week?"
Filtering and pagination
All list tools accept limit (default 100, max 1000) and offset for pagination. Responses include total_count so you know when there are more results.
Session-specific filters:
list_bgp_sessions:asn,router,ixp,status,bgp_state,address_family,is_route_serverlist_autonomous_systems:asn,name,affiliated,searchlist_routers:status,platform_id,local_autonomous_system_idlist_internet_exchanges:status,local_autonomous_system_id,local_autonomous_system_asnlist_connections:status,internet_exchange_point_id,router_idlist_routing_policies:type,address_familylist_communities:typesearch_peeringdb:resource_type(required),search,asn,namelist_changes:action,changed_object_type,user,time_after,time_before
BGP session model
Peering Manager stores direct peering sessions and IXP peering sessions as separate models. This server unifies them:
list_bgp_sessionsmerges both types into a single list with common fields and asession_typefield ("direct"or"ixp")get_bgp_session_detailreturns the full type-specific response — direct sessions includerelationship,bgp_group,local_ip_address; IXP sessions includeixp_connection,is_route_server,exists_in_peeringdb
Timeouts
Most API calls use a 30-second timeout. get_router_configuration uses 120 seconds by default (configurable via PM_CONFIG_TIMEOUT) because config rendering may involve Jinja2 template processing and IRR/AS-SET lookups.
License
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/fmcglinn/peering-manager-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server