MCP server for ONOS network management
Project description
ONOS MCP Server
Overview
A Model Context Protocol (MCP) server implementation that provides network control and management capabilities through the ONOS SDN controller. This server enables AI assistants to access ONOS network management, OpenFlow device control, and comprehensive analytics through a structured API interface. The server is ideal for educational environments, network operations, SDN research, and AI-assisted network management.
Features
Network Resources
The server provides access to ONOS REST API endpoints, including:
- Network devices, links, and hosts
- Topology information
- Flow rules and intents
- Applications and services
- Statistics and metrics
- System and cluster health
Analytics Tools
- Network Summary: Get a comprehensive overview of devices, links, hosts, and clusters with detailed device information
- Network Analytics: Analyze performance metrics, traffic patterns, and utilization statistics
- System Health: Monitor memory usage, cluster status, and component health
- Application Management: Install, activate, deactivate, and uninstall ONOS applications
- Flow Configuration: Create and manage flow rules and intents
- Path Computation: Find optimal paths between network endpoints
Specialized Prompts
- Network Diagnostics: Troubleshoot connectivity issues and service degradation
- Intent-Based Configuration: Implement connectivity objectives and policies
- Network Health Analysis: Generate comprehensive status reports
- QoS Configuration: Set up traffic prioritization and service levels
- Performance Optimization: Improve resource allocation and scalability
Requirements
- Python 3.7+
- uv for dependency management
- Running ONOS controller
- httpx library
- mcp library
Configuration
Configure the server using environment variables:
ONOS_API_BASE: Base URL for ONOS API (default: http://localhost:8181/onos/v1)ONOS_USERNAME: Username for ONOS API authentication (default: onos)ONOS_PASSWORD: Password for ONOS API authentication (default: rocks)
Usage with Claude Desktop
{
"mcpServers": {
"onos": {
"command": "uv",
"args": [
"--directory",
"parent_of_servers_repo/servers/src/onos-mcp-server",
"run",
"server.py"
],
"env": {
"ONOS_API_BASE": "http://localhost:8181/onos/v1",
"ONOS_USERNAME": "onos",
"ONOS_PASSWORD": "rocks"
}
}
}
}
Contributing
Contributions are welcome! Please feel free to submit pull requests, report bugs, or suggest new features.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file mseep_onos_mcp_server-0.1.1.tar.gz.
File metadata
- Download URL: mseep_onos_mcp_server-0.1.1.tar.gz
- Upload date:
- Size: 14.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7289e454800f75f3842272513d32f406f82311f1c55a64f561977c58f4ce5312
|
|
| MD5 |
40a20ed1be87538e5d88b0841331d249
|
|
| BLAKE2b-256 |
4bcb7c3c0a03b18bb4fa5cd8eb1da1ce8587fbc98790a7b09b89e982ea4ffec7
|
File details
Details for the file mseep_onos_mcp_server-0.1.1-py3-none-any.whl.
File metadata
- Download URL: mseep_onos_mcp_server-0.1.1-py3-none-any.whl
- Upload date:
- Size: 14.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e80161c24ff535f9707b77a6fcc0595282fdf814122de6341a6cfcc3c45c428f
|
|
| MD5 |
6efe403f1c7f825587660db5773ac5bb
|
|
| BLAKE2b-256 |
0c95310dc0c81d09fec2651d9f578fba08db2e0e1583270e44228c3d48f89a86
|