Linode MCP Server
Linode MCP 服务器
一个 MCP (Model Context Protocol) 服务器,将您的 AI 助手或智能体连接到您的 Linode 云基础设施,允许您通过自然对话管理云资源。基于 FastMCP 框架构建,支持 stdio、SSE 和 HTTP 流传输!
您可以用它做什么?
让 Claude Desktop 或 VSCode Copilot Agent 协助您完成以下任务:
“显示我在法兰克福区域的所有实例”
“在大阪创建一个新实例”
“为我的 Web 服务器创建一个负载均衡器”
“设置一个托管的 MySQL 数据库” 等等
此服务器为以下 Linode 服务类别提供工具:
🖥️ instances - Linode 计算实例
💾 volumes - 块存储卷
🌐 networking - IP 地址、防火墙、VLAN
⚖️ nodebalancers - 用于流量分配的负载均衡器
🌎 regions - 数据中心位置
📊 placement - 实例放置策略
🔒 vpcs - 虚拟私有云网络
📦 objectStorage - S3 兼容的对象存储
🔤 domains - DNS 管理
🗄️ databases - 托管的 MySQL/PostgreSQL 数据库
☸️ kubernetes - Kubernetes 容器编排 (LKE)
💿 images - 实例的自定义磁盘镜像
📜 stackScripts - 部署自动化脚本
🏷️ tags - 资源组织标签
🎫 support - 支持工单和请求
📊 longview - 系统指标和监控
👤 profile - 用户资料和安全设置
🏢 account - 账户管理、用户和账单
入门指南
使用 npx 快速开始
您需要一个 Linode API 令牌才能使用此服务器。请在您的 Linode Cloud Manager 个人资料设置中创建一个。
# Start the server with your API token
npx @takashito/linode-mcp-server --token YOUR_LINODE_API_TOKEN设置您的 API 令牌
您可以通过多种方式提供令牌:
命令行选项:
npx @takashito/linode-mcp-server --token YOUR_LINODE_API_TOKEN环境变量:
export LINODE_API_TOKEN=your_token_here npx @takashito/linode-mcp-server环境文件: 在您的项目目录中创建一个
.env文件,内容如下:LINODE_API_TOKEN=your_token_here然后运行:
npx @takashito/linode-mcp-server
连接到 AI 客户端
Claude Desktop
打开 Claude 设置 > Developer > Edit Config:
{
"mcpServers": {
"linode": {
"command": "npx",
"args": ["-y", "@takashito/linode-mcp-server", "--token", "YOUR_LINODE_API_TOKEN"]
}
}
}VSCode/Cursor/Windsurf
添加到您的 settings.json:
{
"mcpServers": {
"linode": {
"command": "npx",
"args": ["-y", "@takashito/linode-mcp-server", "--token", "YOUR_LINODE_API_TOKEN", "--categories", "instances,volumes,regions"]
}
}
}⚠️ 注意:对于基于 GPT-4o 的客户端,请使用 --categories 来限制工具,以避免上下文窗口错误。
工具类别选择
您可以使用 --categories 参数有选择地启用工具:
# Enable only instances and volumes tools
npx @takashito/linode-mcp-server --token YOUR_TOKEN --categories instances,volumes或者在 Claude Desktop 配置中:
{
"mcpServers": {
"linode": {
"command": "npx",
"args": [
"-y",
"@takashito/linode-mcp-server",
"--token",
"YOUR_LINODE_API_TOKEN",
"--categories",
"instances,volumes,regions"
]
}
}
}可用类别:instances, volumes, networking, nodebalancers, regions, placement, vpcs, objectStorage, domains, databases, kubernetes, images, stackScripts, tags, support, longview, profile, account
查看所有可用类别:
npx @takashito/linode-mcp-server --list-categories传输选项
stdio 传输 - 与 Claude Desktop 兼容的默认传输方式
# Default stdio transport npx @takashito/linode-mcp-server --token YOUR_TOKENSSE 传输 - 用于 Web 客户端的服务器发送事件传输
# Start with SSE transport on port 3000 /sse npx @takashito/linode-mcp-server --token YOUR_TOKEN --transport sse --port 3000 --endpoint /ssehttpStream 传输 - 用于 Web 客户端的 HTTP 流传输
# Start with HTTP streaming transport on port 8080 /mcp npx @takashito/linode-mcp-server --token YOUR_TOKEN --transport http --port 8080 --endpoint /mcp
您可以为 SSE 和 HTTP 流传输自定义端口和主机:
--port: 服务器端口 (默认: http: 8080, sse: 3000)--endpoint: 服务器路径 (默认: http: /mcp, sse: /sse)--host: 服务器主机 (默认: 127.0.0.1)
通过 Authorization Header 传递 Linode API 密钥
对于 http / sse 传输,您可以在不使用 --token 参数的情况下运行 mcp 服务器。
# Start with HTTP streaming transport on port 8080 /mcp at localhost
npx @takashito/linode-mcp-server --transport http配置您的 mcp 客户端以添加 Authorization Header。linode-mcp-server 会将此 API 令牌转发到后端以访问 Linode API。
{
"mcpServers": {
"linode-remote-mcp": {
"command": "npx",
"args": [
"mcp-remote",
"http://localhost:8080/mcp",
"--header",
"Authorization: Bearer ${LINODE_API_TOKEN}"
],
"env": {
"LINODE_API_TOKEN": "..."
}
},
}
}Docker
以容器形式运行带有 httpStream 传输的 MCP 服务器。
构建
docker build -t takashito/linode-mcp-server .运行
# Basic usage (port 8080, all tool categories)
docker run -e LINODE_API_TOKEN=your_token -p 8080:8080 takashito/linode-mcp-server
# Custom port
docker run -e LINODE_API_TOKEN=your_token -e PORT=3000 -p 3000:3000 takashito/linode-mcp-server
# Limit tool categories
docker run -e LINODE_API_TOKEN=your_token -e CATEGORIES=instances,volumes,regions -p 8080:8080 takashito/linode-mcp-server
# Custom endpoint
docker run -e LINODE_API_TOKEN=your_token -e ENDPOINT=/api -p 8080:8080 takashito/linode-mcp-server环境变量
变量 | 默认值 | 描述 |
| (必需) | Linode API 令牌。也可以通过 Authorization header 传递。 |
|
| 服务器端口 |
|
| 服务器端点路径 |
| (全部) | 要启用的工具类别的逗号分隔列表 |
使用 MCP 客户端连接
{
"mcpServers": {
"linode": {
"command": "npx",
"args": [
"mcp-remote",
"http://localhost:8080/mcp",
"--header",
"Authorization: Bearer ${LINODE_API_TOKEN}"
],
"env": {
"LINODE_API_TOKEN": "your_token"
}
}
}
}可用工具
此 MCP 服务器提供以下工具用于与 Linode API 服务交互:
🖥️ 实例
管理 Linode 计算实例,包括创建、删除和电源操作。
实例操作
list_instances- 获取所有 Linode 实例列表get_instance- 获取特定 Linode 实例的详细信息create_instance- 创建一个新的 Linode 实例update_instance- 更新 Linode 实例delete_instance- 删除 Linode 实例reboot_instance- 重启 Linode 实例boot_instance- 开启 Linode 实例shutdown_instance- 关闭 Linode 实例resize_instance- 调整 Linode 实例大小clone_instance- 将 Linode 实例克隆到新实例rebuild_instance- 使用新镜像重建 Linode 实例rescue_instance- 将 Linode 实例引导至救援模式reset_root_password- 重置 Linode 实例的 root 密码initiate_migration- 发起 Linode 实例的数据中心迁移upgrade_linode- 升级 Linode 实例
实例配置
list_instance_configs- 获取 Linode 实例的所有配置概要文件get_instance_config- 获取 Linode 实例的特定配置概要文件create_instance_config- 为 Linode 实例创建新的配置概要文件update_instance_config- 更新 Linode 实例的配置概要文件delete_instance_config- 删除 Linode 实例的配置概要文件
配置概要文件接口
list_config_interfaces- 列出配置概要文件的所有接口get_config_interface- 获取特定配置概要文件接口的详细信息create_config_interface- 为配置概要文件创建新接口update_config_interface- 更新配置概要文件的接口delete_config_interface- 从配置概要文件中删除接口reorder_config_interfaces- 重新排序配置概要文件的接口
实例磁盘
list_instance_disks- 获取 Linode 实例的所有磁盘get_instance_disk- 获取 Linode 实例的特定磁盘create_instance_disk- 为 Linode 实例创建新磁盘update_instance_disk- 更新磁盘delete_instance_disk- 删除磁盘resize_instance_disk- 调整磁盘大小clone_disk- 将磁盘克隆到新磁盘reset_disk_root_password- 重置磁盘 root 密码
实例备份
list_backups- 获取 Linode 实例的所有备份列表get_backup- 获取特定备份的详细信息create_snapshot- 为 Linode 实例创建快照cancel_backups- 取消 Linode 实例的备份enable_backups- 启用 Linode 实例的备份restore_backup- 将备份恢复到 Linode 实例
IP 管理
get_networking_information- 获取 Linode 实例的网络信息allocate_ipv4_address- 为 Linode 实例分配 IPv4 地址get_ip_address- 获取特定 IP 地址的详细信息update_ip_address_rdns- 更新 IP 地址的反向 DNSdelete_ipv4_address- 删除 IPv4 地址
防火墙管理
list_linode_firewalls- 列出 Linode 实例的防火墙apply_linode_firewalls- 将防火墙应用于 Linode 实例
实例统计和传输
get_instance_stats- 获取 Linode 实例的当前统计信息get_instance_stats_by_date- 获取特定月份 Linode 实例的统计信息get_network_transfer- 获取 Linode 实例的网络传输信息get_monthly_network_transfer- 获取 Linode 实例的每月网络传输统计信息
相关资源
list_instance_nodebalancers- 列出附加到 Linode 实例的 NodeBalancerlist_instance_volumes- 列出附加到 Linode 实例的卷
内核和实例类型
list_kernels- 获取所有可用内核列表get_kernel- 获取特定内核的详细信息list_instance_types- 获取所有可用 Linode 类型列表get_instance_type- 获取特定 Linode 类型的详细信息
💾 卷
管理可附加到 Linode 实例的块存储卷。
list_volumes- 获取所有卷列表get_volume- 获取特定卷的详细信息create_volume- 创建新卷delete_volume- 删除卷attach_volume- 将卷附加到 Linode 实例detach_volume- 从 Linode 实例分离卷resize_volume- 调整卷大小
🌐 网络
管理 IP 地址、防火墙和网络基础设施。
IP 地址管理
get_ip_addresses- 获取所有 IP 地址get_ip_address- 获取特定 IP 地址的详细信息update_ip_address- 更新 IP 地址的反向 DNSallocate_ip- 分配新 IP 地址share_ips- 在 Linode 之间共享 IP 地址
IPv6 管理
get_ipv6_ranges- 获取所有 IPv6 范围get_ipv6_range- 获取特定 IPv6 范围get_ipv6_pools- 获取所有 IPv6 池
防火墙管理
get_firewalls- 获取所有防火墙get_firewall- 获取特定防火墙的详细信息create_firewall- 创建新防火墙update_firewall- 更新防火墙delete_firewall- 删除防火墙
防火墙规则
get_firewall_rules- 获取特定防火墙的所有规则update_firewall_rules- 更新特定防火墙的规则
防火墙设备
get_firewall_devices- 获取特定防火墙的所有设备create_firewall_device- 为特定防火墙创建新设备delete_firewall_device- 从特定防火墙删除设备
VLAN 管理
get_vlans- 获取所有 VLANget_vlan- 获取特定 VLAN
🔤 域名
管理由 Linode DNS 服务托管的 DNS 域名和记录。
list_domains- 获取所有域名列表get_domain- 获取特定域名的详细信息create_domain- 创建新域名update_domain- 更新现有域名delete_domain- 删除域名list_domain_records- 获取域名的所有域名记录列表get_domain_record- 获取特定域名记录的详细信息create_domain_record- 创建新域名记录update_domain_record- 更新域名记录delete_domain_record- 删除域名记录import_domain_zone- 从远程名称服务器导入域名区域clone_domain- 将现有域名克隆到新域名get_zone_file- 获取域名的 DNS 区域文件
🗄️ 数据库
管理 MySQL 和 PostgreSQL 的 Linode 托管数据库服务。
常规数据库操作
list_database_engines- 获取所有可用数据库引擎列表(MySQL、PostgreSQL 版本)get_database_engine- 获取特定数据库引擎版本的详细信息list_database_types- 获取所有可用数据库实例类型(大小)列表get_database_type- 获取特定数据库实例类型的详细信息list_database_instances- 获取所有数据库实例列表(MySQL 和 PostgreSQL)
MySQL 数据库操作
list_mysql_instances- 获取所有 MySQL 数据库实例列表get_mysql_instance- 获取特定 MySQL 数据库实例的详细信息create_mysql_instance- 创建新 MySQL 数据库实例update_mysql_instance- 更新现有 MySQL 数据库实例设置delete_mysql_instance- 删除 MySQL 数据库实例get_mysql_credentials- 获取 MySQL 数据库实例的管理凭据reset_mysql_credentials- 重置 MySQL 数据库实例的管理凭据get_mysql_ssl_certificate- 获取 MySQL 数据库实例的 SSL 证书patch_mysql_instance- 将最新软件更新应用于 MySQL 数据库实例suspend_mysql_instance- 挂起 MySQL 数据库实例(继续计费)resume_mysql_instance- 恢复挂起的 MySQL 数据库实例
PostgreSQL 数据库操作
list_postgresql_instances- 获取所有 PostgreSQL 数据库实例列表get_postgresql_instance- 获取特定 PostgreSQL 数据库实例的详细信息create_postgresql_instance- 创建新 PostgreSQL 数据库实例update_postgresql_instance- 更新现有 PostgreSQL 数据库实例设置delete_postgresql_instance- 删除 PostgreSQL 数据库实例get_postgresql_credentials- 获取 PostgreSQL 数据库实例的管理凭据reset_postgresql_credentials- 重置 PostgreSQL 数据库实例的管理凭据get_postgresql_ssl_certificate- 获取
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/takashito/linode-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server