Linode▌

by takashito
Manage compute, volumes, networking & more with Li Node's robust cloud API. Easily control instances, domains, databases
Integrates with Linode's cloud infrastructure API to manage compute instances, volumes, networking, domains, databases, Kubernetes clusters, and support operations across 19 tool categories with over 100 individual operations.
best for
- / DevOps engineers managing Linode infrastructure
- / Developers deploying applications to Linode
- / System administrators automating server management
- / Teams wanting conversational cloud resource control
capabilities
- / List Linode regions and instance types
- / Create new Linode instances
- / View instance details and status
- / Reboot existing instances
- / Delete cloud instances
- / Query available cloud resources
what it does
Connects AI assistants like Claude to Linode's cloud infrastructure API for managing virtual machines and cloud resources through natural language conversations.
about
Linode is a community-built MCP server published by takashito that provides AI assistants with tools and capabilities via the Model Context Protocol. Manage compute, volumes, networking & more with Li Node's robust cloud API. Easily control instances, domains, databases It is categorized under databases, cloud infrastructure.
how to install
You can install Linode in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
license
MIT
Linode is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
readme
Linode MCP Server
An MCP (Model Context Protocol) server that connects your AI Assistant or Agent to your Linode cloud infrastructure allowing you to manage your cloud resources through natural conversation. Built with FastMCP framework and supports stdio, SSE, and HTTP streaming transports!
What Can You Do With This?
Ask Claude Desktop or VSCode Copilot Agent to help you with tasks like:
- "Show me all my instances in the Frankfurt region"
- "Create a new instance in Osaka"
- "Create a load balancer for my web servers"
- "Set up a managed MySQL database" etc
This server provides tools for the following Linode service categories:
- 🖥️ instances - Linode compute instances
- 💾 volumes - Block storage volumes
- 🌐 networking - IP addresses, firewalls, VLANs
- ⚖️ nodebalancers - Load balancers for distributing traffic
- 🌎 regions - Data center locations
- 📊 placement - Instance placement policies
- 🔒 vpcs - Virtual Private Cloud networks
- 📦 objectStorage - S3-compatible object storage
- 🔤 domains - DNS management
- 🗄️ databases - Managed MySQL/PostgreSQL databases
- ☸️ kubernetes - Kubernetes container orchestration (LKE)
- 💿 images - Custom disk images for instances
- 📜 stackScripts - Deployment automation scripts
- 🏷️ tags - Resource organization labels
- 🎫 support - Support tickets and requests
- 📊 longview - System metrics and monitoring
- 👤 profile - User profile and security settings
- 🏢 account - Account management, users, and billing
Getting Started
Quick Start with npx
You'll need a Linode API token to use this server. Create one in your Linode Cloud Manager profile settings.
# Start the server with your API token
npx @takashito/linode-mcp-server --token YOUR_LINODE_API_TOKEN
Setting Your API Token
You can provide your token in several ways:
-
Command line option:
npx @takashito/linode-mcp-server --token YOUR_LINODE_API_TOKEN -
Environment variable:
export LINODE_API_TOKEN=your_token_here npx @takashito/linode-mcp-server -
Environment file: Create a
.envfile in your project directory with:LINODE_API_TOKEN=your_token_hereThen run:
npx @takashito/linode-mcp-server
Connecting to AI Clients
Claude Desktop
Open Claude settings > Developer > Edit Config:
{
"mcpServers": {
"linode": {
"command": "npx",
"args": ["-y", "@takashito/linode-mcp-server", "--token", "YOUR_LINODE_API_TOKEN"]
}
}
}
VSCode/Cursor/Windsurf
Add to your settings.json:
{
"mcpServers": {
"linode": {
"command": "npx",
"args": ["-y", "@takashito/linode-mcp-server", "--token", "YOUR_LINODE_API_TOKEN", "--categories", "instances,volumes,regions"]
}
}
}
⚠️ Note: For GPT-4o based clients, use --categories to limit tools and avoid context window errors.
Automatic Installation via Smithery to Claude Desktop
For the easiest setup, use Smithery:
npx -y @smithery/cli install @takashito/linode-mcp-server --client claude
Tools Category Selection
You can selectively enabled tools with --categories parameter:
# Enable only instances and volumes tools
npx @takashito/linode-mcp-server --token YOUR_TOKEN --categories instances,volumes
Or in Claude Desktop config:
{
"mcpServers": {
"linode": {
"command": "npx",
"args": [
"-y",
"@takashito/linode-mcp-server",
"--token",
"YOUR_LINODE_API_TOKEN",
"--categories",
"instances,volumes,regions"
]
}
}
}
Available categories: instances, volumes, networking, nodebalancers, regions, placement, vpcs, objectStorage, domains, databases, kubernetes, images, stackScripts, tags, support, longview, profile, account
To see all available categories:
npx @takashito/linode-mcp-server --list-categories
Transport Options
-
stdio transport - Default transport compatible with Claude Desktop
# Default stdio transport npx @takashito/linode-mcp-server --token YOUR_TOKEN -
SSE transport - Server-Sent Events transport for web clients
# Start with SSE transport on port 3000 /sse npx @takashito/linode-mcp-server --token YOUR_TOKEN --transport sse --port 3000 --endpoint /sse -
httpStream transport - HTTP streaming transport for web clients
# Start with HTTP streaming transport on port 8080 /mcp npx @takashito/linode-mcp-server --token YOUR_TOKEN --transport http --port 8080 --endpoint /mcp
You can customize port and host for both SSE and HTTP streaming transport:
--port: Server port (default: http: 8080, sse: 3000)--endpoint: Server Path (default: http: /mcp, sse: /sse)--host: Server host (default: 127.0.0.1)
Pass Linode API Key via Authorization Header
For http / sse transport, you can run mcp server without --token parameter.
# Start with HTTP streaming transport on port 8080 /mcp at localhost
npx @takashito/linode-mcp-server --transport http
Configure your mcp client to add Authorization Header. linode-mcp-server forward this API token to access Linode API at backend.
{
"mcpServers": {
"linode-remote-mcp": {
"command": "npx",
"args": [
"mcp-remote",
"http://localhost:8080/mcp",
"--header",
"Authorization: Bearer ${LINODE_API_TOKEN}"
],
"env": {
"LINODE_API_TOKEN": "..."
}
},
}
}
Available Tools
This MCP server provides the following tools for interacting with Linode API services:
🖥️ Instances
Manage Linode compute instances, including creation, deletion, and power operations.
Instance Operations
list_instances- Get a list of all Linode instancesget_instance- Get details for a specific Linode instancecreate_instance- Create a new Linode instanceupdate_instance- Update a Linode instancedelete_instance- Delete a Linode instancereboot_instance- Reboot a Linode instanceboot_instance- Power on a Linode instanceshutdown_instance- Power off a Linode instanceresize_instance- Resize a Linode instanceclone_instance- Clone a Linode instance to a new Linoderebuild_instance- Rebuild a Linode instance with a new imagerescue_instance- Boot a Linode instance into rescue modereset_root_password- Reset the root password for a Linode instanceinitiate_migration- Initiate a DC migration for a Linode instanceupgrade_linode- Upgrade a Linode instance
Instance Configuration
list_instance_configs- Get all configuration profiles for a Linode instanceget_instance_config- Get a specific configuration profile for a Linode instancecreate_instance_config- Create a new configuration profile for a Linode instanceupdate_instance_config- Update a configuration profile for a Linode instancedelete_instance_config- Delete a configuration profile for a Linode instance
Configuration Profile Interfaces
list_config_interfaces- List all interfaces for a configuration profileget_config_interface- Get details for a specific configuration profile interfacecreate_config_interface- Create a new interface for a configuration profileupdate_config_interface- Update an interface for a configuration profiledelete_config_interface- Delete an interface from a configuration profilereorder_config_interfaces- Reorder interfaces for a configuration profile
Instance Disks
list_instance_disks- Get all disks for a Linode instanceget_instance_disk- Get a specific disk for a Linode instancecreate_instance_disk- Create a new disk for a Linode instanceupdate_instance_disk- Update a disk for a Linode instancedelete_instance_disk- Delete a disk for a Linode instanceresize_instance_disk- Resize a disk for a Linode instanceclone_disk- Clone a disk to a new diskreset_disk_root_password- Reset a disk root password
Instance Backups
list_backups- Get a list of all backups for a Linode instanceget_backup- Get details for a specific backupcreate_snapshot- Create a snapshot for a Linode instancecancel_backups- Cancel backups for a Linode instanceenable_backups- Enable backups for a Linode instancerestore_backup- Restore a backup to a Linode instance
IP Management
get_networking_information- Get networking information for a Linode instanceallocate_ipv4_address- Allocate an IPv4 address for a Linode instanceget_ip_address- Get details for a specific IP addressupdate_ip_address_rdns- Update reverse DNS for an IP addressdelete_ipv4_address- Delete an IPv4 address
Firewall Management
list_linode_firewalls- List firewalls for a Linode instanceapply_linode_firewalls- Apply firewalls to a Linode instance
Instance Stats and Transfer
get_instance_stats- Get current statistics for a Linode instanceget_instance_stats_by_date- Get statistics for a Linode instance for a specific monthget_network_transfer- Get network transfer