The Clixon MCP Server enables AI coding agents to fetch, query, and manage network device configurations via RESTCONF.
Fetch device configuration (
fetch_config): Pull configuration from RESTCONF-capable devices, with support for HTTP basic authentication and optional SSL certificate verification.Retrieve cached configuration (
get_config): Return the full configuration previously fetched and stored in memory.Query a specific config section (
get_config_path): Extract a targeted portion of the cached configuration using a dot-separated path (e.g.,ietf-interfaces:interfaces.interface).Write configuration back (
write_config): Push the cached configuration back to the device via RESTCONF.Manage the RESTCONF URL (
get_config_url/set_config_url): Retrieve or update the target device URL without restarting the server.Clear the config cache (
clear_config_cache): Remove the in-memory cached configuration.Analyze configuration (
analyze_config): Use a built-in prompt to fetch and analyze device configuration details such as interfaces and routing in one step.Discover available tools (
list_tools/help): List all tools and get usage guidance from within the agent interface.AI agent integration: Designed to integrate with AI coding agents like OpenCode, enabling natural language queries about network configurations.
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., "@Clixon MCP Servershow me the current routing and interface configuration"
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.
Clixon MCP Server
A Model Context Protocol server for fetching and querying network device configuration via RESTCONF. Connects to Clixon-based (or any RESTCONF-capable) devices and makes the configuration available to AI coding agents like OpenCode.
This project uses UV (https://github.com/astral-sh/uv) for package control.
Setup
uv syncRun
uv run server.py --restconf-url https://localhost:8443/restconf/CLI Arguments
Argument | Default | Description |
|
| RESTCONF URL to fetch config from |
| (empty) | HTTP basic auth username for RESTCONF (optional) |
| (empty) | HTTP basic auth password for RESTCONF (optional) |
|
| Verify SSL certificates when fetching RESTCONF config |
Tools
Tool | Description |
| Fetch device configuration via RESTCONF (supports basic auth and TLS) |
| Write cached configuration back to the device via RESTCONF |
| Return the currently cached configuration |
| Extract a specific section by dot-separated path (e.g. |
| Return the RESTCONF URL used to fetch the configuration |
| Set the RESTCONF URL for fetching configuration |
| Clear the cached configuration |
| List available tools |
| Return a help message describing the server and available tools |
Resources
config://server-info— Server metadata (name, version, available tools)
Prompts
analyze_config— Fetch and analyze device configuration (interfaces, routing, etc.)
Connect to OpenCode
Add to your opencode.json (~/.opencode/opencode.json):
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"clixon": {
"type": "remote",
"url": "http://localhost:8000/mcp",
"enabled": true
}
}
}Example Usage in OpenCode
Once connected, ask questions like:
Fetch the config and summarize it.What interfaces are configured?Show me the routing configurationAre there any interfaces that are down?
The AI agent will call fetch_config to pull the RESTCONF data, cache it in memory, and then use get_config / get_config_path to answer follow-up questions about the device configuration.
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.