Skip to main content
Glama

Linode MCP 服务器

main version npm version npm downloads

一个 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 令牌

您可以通过多种方式提供令牌:

  1. 命令行选项:

    npx @takashito/linode-mcp-server --token YOUR_LINODE_API_TOKEN
  2. 环境变量:

    export LINODE_API_TOKEN=your_token_here
    npx @takashito/linode-mcp-server
  3. 环境文件: 在您的项目目录中创建一个 .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

传输选项

  1. stdio 传输 - 与 Claude Desktop 兼容的默认传输方式

    # Default stdio transport
    npx @takashito/linode-mcp-server --token YOUR_TOKEN
  2. SSE 传输 - 用于 Web 客户端的服务器发送事件传输

    # Start with SSE transport on port 3000 /sse
    npx @takashito/linode-mcp-server --token YOUR_TOKEN --transport sse --port 3000 --endpoint /sse
  3. httpStream 传输 - 用于 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_TOKEN

(必需)

Linode API 令牌。也可以通过 Authorization header 传递。

PORT

8080

服务器端口

ENDPOINT

/mcp

服务器端点路径

CATEGORIES

(全部)

要启用的工具类别的逗号分隔列表

使用 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 地址的反向 DNS

  • delete_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 实例的 NodeBalancer

  • list_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 地址的反向 DNS

  • allocate_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 - 获取所有 VLAN

  • get_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 - 获取

-
security - not tested
A
license - permissive license
-
quality - not tested

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