A Model Context Protocol (MCP) server that provides access to Topolograph API for OSPF/IS-IS network analysis.
This MCP server enables AI agents to interact with Topolograph API to analyze network topologies, monitor events, and perform path calculations for OSPF and IS-IS protocols. MCP (Model Context Protocol) is essential for connecting Large Language Models (LLMs) to network infrastructure, allowing AI agents to query and analyze network data in real-time.
This MCP server is included in the topolograph-docker repository and is available via the provided docker-compose.yml file.
- Graph Management: Retrieve and upload network graphs
- Network Analysis: Query network information by IP, node ID, or network mask
- Event Monitoring: Track network and adjacency events with time filtering
- Path Calculation: Calculate shortest paths between nodes with backup path support
- Status Monitoring: Check graph connectivity and health status
- Node/Edge Queries: Retrieve detailed node and edge information from diagrams
pip install -r requirements.txtSet the required environment variable:
export TOPOLOGRAPH_API_BASE="https://your-topolograph-api-url"Optional authentication:
export TOPOLOGRAPH_API_TOKEN="your-api-token"Start the MCP server:
python mcp-server.pyThe server runs on http://0.0.0.0:8000/mcp by default.
This MCP server is included in the topolograph-docker repository. To use it as part of the complete Topolograph stack:
git clone https://github.com/Vadims06/topolograph-docker.git
cd topolograph-docker
docker-compose pull
docker-compose up -dThe MCP server will be available at http://localhost:8000/mcp and automatically connects to the Flask API.
get_all_graphs: List available graphs with filtering optionsget_graph_by_time: Fetch specific graph by timeget_network_by_graph_time: Query network informationget_graph_status: Check graph health and connectivityget_network_events: Retrieve network up/down eventsget_adjacency_events: Get node/host and link eventsget_nodes: Query diagram nodesget_edges: Query diagram edgesget_shortest_path: Calculate shortest paths between nodesupload_graph: Upload new graphs to the API
See LICENSE file for details.