home / mcp / perfsonar mcp server
Provides programmatic access to perfSONAR data sources, testpoint discovery, and test scheduling for MCP clients.
Configuration
View docs{
"mcpServers": {
"ajragusa-perfsonar-mcp": {
"command": "python",
"args": [
"-m",
"perfsonar_mcp"
],
"env": {
"PERFSONAR_HOST": "your-perfsonar-host.example.com",
"PSCHEDULER_URL": "https://perfsonar.example.com/pscheduler",
"LOOKUP_SERVICE_URL": "https://lookup.perfsonar.net/lookup"
}
}
}
}You can query perfSONAR measurements, discover testpoints, and schedule network tests using the perfSONAR MCP server. It provides a programmable interface to access historical data, locate services, and run tests through an API-like workflow.
You will interact with the MCP server through an MCP client or an AI agent. Start by starting the local MCP server in stdio mode to enable direct communication from your application. Use the provided endpoints and tool functions to query measurement archives, locate testpoints, find pScheduler services, and schedule tests. You can combine these capabilities to build automated data pipelines, test discovery flows, and scheduled measurement experiments.
Prerequisites: Python and pip must be available on your system.
pip install -e .For development with additional tools, install with development dependencies.
pip install -e '.[dev]'Configure the MCP server by setting environment variables. The minimum required variable is PERFSONAR_HOST, which should point to your perfSONAR host. Optional variables let you customize integration with the Lookup Service and the pScheduler.
export PERFSONAR_HOST=perfsonar.example.com
export LOOKUP_SERVICE_URL=https://lookup.perfsonar.net/lookup
export PSCHEDULER_URL=https://perfsonar.example.com/pschedulerSearch measurements from the Measurement Archive with filters to retrieve historical data.
Return throughput data for specified endpoints and time ranges.
Return latency data for specified endpoints and time ranges.
Return packet loss data for specified endpoints and time ranges.
Retrieve raw time-series data with or without summaries.
List available measurement types and event kinds.
Find perfSONAR testpoints globally by location or criteria.
Locate pScheduler services for test scheduling.
Submit a throughput test (iperf3) to pScheduler.
Submit a latency test (owping) to pScheduler.
Submit an RTT test (ping) to pScheduler.
Check the status of a running or completed test.
Retrieve results for a completed test.