Cisco SSH MCP Server
Connect to, configure, and monitor Cisco network devices like routers and switches via SSH.
Cisco SSH MCP Server
A Model Context Protocol (MCP) server for managing SSH connections to Cisco network devices. This server provides tools for connecting to, configuring, and monitoring Cisco routers and switches through SSH.
Features
- Multiple SSH Connections: Manage connections to multiple Cisco devices simultaneously
- Command Execution: Execute any CLI command on connected devices
- Configuration Management: Enter config mode and apply configuration changes
- Show Commands: Execute show commands with optional output parsing
- Raw Terminal Access: Send raw text for interactive sessions
- Connection Management: List, connect, and disconnect from devices
- Secure Authentication: Support for password and key-based authentication
Installation
npm install
npm run build
Usage
As an MCP Server
Configure your MCP client (like Cline) to use this server:
{
"mcpServers": {
"cisco-ssh": {
"command": "node",
"args": ["path/to/cisco-ssh-mcp/dist/index.js"]
}
}
}
Command Line Usage
# Start the MCP server
npm start
# Start with default connection parameters
cisco-ssh-mcp --host 192.168.1.1 --username admin
Available Tools
cisco_connect
Connect to a Cisco device via SSH.
Parameters:
host(required): IP address or hostnameusername(required): SSH usernamepassword: SSH passwordprivateKey: Private key for authenticationport: SSH port (default: 22)connectionId: Unique identifier for the connection
cisco_exec
Execute a command on a connected device.
Parameters:
command(required): Command to executeconnectionId: Which connection to usetimeout: Command timeout in milliseconds
cisco_config
Enter configuration mode and execute configuration commands.
Parameters:
commands(required): Array of configuration commandsconnectionId: Which connection to usesave: Whether to save config after changes
cisco_show
Execute show commands with optional output parsing.
Parameters:
command(required): Show command to executeconnectionId: Which connection to useparseOutput: Parse output into structured format
cisco_send_raw
Send raw text to the SSH connection.
Parameters:
text(required): Raw text to sendconnectionId: Which connection to usewaitForPrompt: Wait for command prompt
cisco_list_connections
List all active SSH connections.
cisco_disconnect
Disconnect from a device.
Parameters:
connectionId: Connection to disconnect
Examples
Connecting to a Device
// Connect using password
{
"tool": "cisco_connect",
"arguments": {
"host": "192.168.1.1",
"username": "admin",
"password": "cisco123",
"connectionId": "router1"
}
}
// Connect using SSH key
{
"tool": "cisco_connect",
"arguments": {
"host": "192.168.1.1",
"username": "admin",
"privateKey": "-----BEGIN RSA PRIVATE KEY-----\\n...",
"connectionId": "router1"
}
}
Executing Commands
// Show interface status
{
"tool": "cisco_show",
"arguments": {
"command": "show ip interface brief",
"parseOutput": true
}
}
// Configure an interface
{
"tool": "cisco_config",
"arguments": {
"commands": [
"interface GigabitEthernet0/1",
"ip address 192.168.10.1 255.255.255.0",
"no shutdown"
],
"save": true
}
}
Security Considerations
- Use SSH keys instead of passwords when possible
- Implement proper network segmentation for management traffic
- Enable logging for all commands executed
- Use dedicated management VLANs
- Implement proper access controls and authentication
Troubleshooting
- Connection Timeout: Check network connectivity and SSH service on device
- Authentication Failed: Verify credentials and SSH configuration
- Command Timeout: Increase timeout values for slow devices
- Permission Denied: Ensure user has appropriate privileges
License
MIT License - see LICENSE file for details.
Related Servers
Scout Monitoring MCP
sponsorPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
sponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Auto API - YApi
A tool to retrieve API interface information from YApi, with authentication configurable via environment variables.
MCP Sandbox
Execute Python code and install packages safely within isolated Docker containers.
Language Server
MCP Language Server gives MCP enabled clients access to semantic tools like get definition, references, rename, and diagnostics.
Composer Package README MCP Server
Fetches Composer package README and usage information from Packagist.
Coding Prompt Engineer MCP Server
Rewrites coding prompts for optimal results with AI IDEs like Cursor AI, powered by Claude by Anthropic.
Deepseek Thinking & Claude 3.5 Sonnet
Combines DeepSeek's reasoning capabilities with Claude 3.5 Sonnet's response generation through OpenRouter.
Whistle MCP Server
Manage local Whistle proxy servers through AI assistants, simplifying network debugging, API testing, and rule management.
CCXT MCP Server
Integrate with cryptocurrency exchanges using the CCXT library.
Unleash
MCP server for managing Unleash feature flags and automate best practices.
Toolkit MCP Server
Provides system utilities and tools like IP geolocation, network diagnostics, system monitoring, crypto operations, and QR code generation.