Analyze Network Topologies with Topolograph MCP
MCP server for Topolograph network topology analysis, providing OSPF/IS-IS event monitoring, path calculation, and graph connectivity tools via Model Context
Why it matters
Leverage the Topolograph MCP Server to gain deep insights into your OSPF/IS-IS network topologies. Monitor events, calculate routes, and manage network graphs for enhanced operational visibility.
Outcomes
What it gets done
Access and manage network graphs (upload, retrieve by time).
Query network details by IP, node ID, or network mask.
Monitor network and adjacency events with time-based filtering.
Calculate shortest paths and identify backup routes.
Install
Add it to your toolbox
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/vb-topolograph-mcp | bash Capabilities
Tools your agent gets
List of available graphs with filtering options
Get a specific graph by time
Request network information
Check graph health and connectivity
Get network enable/disable events
Get node/host and link events
Query diagram nodes
Query diagram edges
Overview
Topolograph MCP Server
An MCP (Model Context Protocol) server that provides programmatic access to Topolograph's network topology analysis capabilities, including OSPF/IS-IS event monitoring, path calculation, and connectivity monitoring. Use this connector when you need to access Topolograph network topology data through the Model Context Protocol interface, particularly for monitoring routing protocol events and analyzing network paths in a Dockerized environment.
What it does
Big Job: Provide a Model Context Protocol interface to Topolograph's network topology data from OSPF and IS-IS routing protocols.
Small Job: Run an MCP server alongside Topolograph in Docker that provides tools for network topology analysis, OSPF/IS-IS event monitoring, path calculation, backup path analysis, and node/edge queries.
The MCP server is included in the Docker setup and is available at http://localhost:8000/mcp after installation:
git clone https://github.com/Vadims06/topolograph-docker.git
cd topolograph-docker
cp env.example .env
docker-compose pull
docker-compose up -d
The MCP server automatically connects to the Flask API and supports authentication via API tokens. Configure ports and credentials in .env (TOPOLOGRAPH_PORT, MCP_PORT, TOPOLOGRAPH_WEB_API_USERNAME_EMAIL, TOPOLOGRAPH_WEB_API_PASSWORD). The Topolograph site will be available at http://localhost:8080/ after a few minutes. Hostname mapping can be updated from NetBox via the Topolograph SDK or direct API calls.
Source README
topolograph-docker
Quickstart
Install Docker Desktop for Windows/Mac
To get Topolograph Docker up and running run the following commands.
git clone https://github.com/Vadims06/topolograph-docker.git
cd topolograph-docker
cp env.example .env
docker-compose pull
docker-compose up -d
or run install.sh script to start Topolograph and Watchers
sudo ./install.sh
or
curl -O https://raw.githubusercontent.com/Vadims06/topolograph-docker/master/install.sh
chmod +x install.sh
sudo ./install.sh
The Topolograph site will be available after a few minutes.
Open the URL http://localhost:8080/ in a web-browser.
MCP Server Integration
This Docker setup includes an MCP (Model Context Protocol) server that enables AI agents and Large Language Models to interact with the Topolograph API for network analysis. The MCP server is available at http://localhost:8000/mcp and provides tools for:
- Network topology analysis
- OSPF/IS-IS event monitoring
- Path calculation and backup path analysis
- Graph status and connectivity monitoring
- Node and edge queries
The MCP server automatically connects to the Flask API and supports authentication via API tokens.
Variables
The application's variables are grouped in .env file
- TOPOLOGRAPH_PORT - the application port
TOPOLOGRAPH_PORT=8080 <-- whatever you want, and then open the URL http://localhost:8080/ after re-runing docker-compose up -d
- DNS - accepts IP address of DNS server in order to resolve OSPF RID and show device names on a graph
- TOPOLOGRAPH_WEB_API_USERNAME_EMAIL, TOPOLOGRAPH_WEB_API_PASSWORD - credentials for API requests
- TOPOLOGRAPH_WEB_API_AUTHORISED_NETWORKS - whitelistening IP sources of API requests
- MCP_PORT - MCP server port (default: 8000)
Default credentials
In order to create the user with password from .env file and add your networks in allow list (authorised networks) from TOPOLOGRAPH_WEB_API_AUTHORISED_NETWORKS variable - run this request
#python3
import requests
res = requests.post('http://localhost:8080/create-default-credentials')
res.json()
{'errors': '', 'status': 'ok'}
To test that it works - Open http://localhost:8080/ in a web-browser, go to Login/Local login, use TOPOLOGRAPH_WEB_API_USERNAME_EMAIL and TOPOLOGRAPH_WEB_API_PASSWORD to login. API/Authorised source IP ranges Tab should list your IP ranges.
Integration with other systems
NetBox
Hostname mapping can be updated from NetBox via the Topolograph SDK or direct API calls. For example, you can query NetBox for device hostnames and push them to Topolograph using the SDK's node-update methods, keeping topology labels in sync with your source of truth.
About
You can find more info about Topolograph here: https://github.com/Vadims06/topolograph
FAQ
Common questions
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.