本项目是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在将 Linode 云平台的 API 能力以结构化的工具形式暴露给大型语言模型 (LLM) 客户端,如 Claude Desktop。通过此服务器,LLM 客户端能够理解和执行对 Linode 账户下各种云资源的操作。
项目简介
Linode MCP 服务器充当 LLM 客户端与 Linode API 之间的桥梁。它实现了 MCP 规范,将 Linode 提供的云资源管理、监控、网络配置等功能转化为可供 LLM 调用的标准化工具。
主要功能点
- Linode 资源管理: 提供创建、获取、更新、删除 Linode 云主机、存储卷 (Volumes)、负载均衡 (NodeBalancers)、VPC 网络、数据库实例 (Managed Databases)、Kubernetes 集群 (LKE) 等操作。
- 网络配置: 支持 IP 地址管理、防火墙配置、VLAN 操作等。
- 镜像与 StackScript: 查看和管理自定义镜像 (Images) 及自动化部署脚本 (StackScripts)。
- 账户与用户: 获取账户信息、管理用户及其权限、查看账单和事件日志等。
- 监控: 查看 Longview 监控数据和 Object Storage 传输统计。
- 区域和服务: 获取可用区域信息和服务可用性。
- DNS 管理: 管理域名及其记录 (Domains)。
- 标签管理: 创建、获取和删除用于资源分组的标签 (Tags)。
- 支持: 查看和创建支持工单。
安装步骤
- 环境准备: 确保您的系统已安装 Node.js (推荐 LTS 版本) 和 npm 或 yarn。
- 获取代码: 克隆 GitHub 仓库:
git clone https://github.com/linode/docs-cloud-projects.git - 进入项目目录: 导航到 Linode MCP 服务器的根目录:
cd docs-cloud-projects/apps/linode-mcp-server-main - 安装依赖: 安装项目所需的依赖:
npm install # 或者使用 yarn: yarn install - 构建项目: 编译 TypeScript 代码:
构建成功后,可执行文件将位于 'dist' 目录下。npm run build
服务器配置
Linode MCP 服务器需要您的 Linode API Token 才能与 Linode API 进行交互。建议将 Token 配置为环境变量 'LINODE_API_TOKEN',或者通过命令行参数 '--token' 传递(不推荐用于敏感信息)。
配置 MCP 客户端(如 Claude Desktop)连接到此服务器时,您需要提供服务器的启动命令和参数。典型的 MCP 客户端配置是一个 JSON 对象,例如(请根据您的实际安装路径调整 'command'):
{ "server_name": "linode-mcp-server", "command": ["node", "path/to/your/docs-cloud-projects/apps/linode-mcp-server-main/dist/index.js"], "args": ["--transport", "stdio"], "env": { "LINODE_API_TOKEN": "YOUR_LINODE_API_TOKEN" }, "note": "请将 'path/to/your/' 替换为实际的项目路径,并将 'YOUR_LINODE_API_TOKEN' 替换为您的Linode API Token。" }
- 'server_name': MCP 服务器的唯一名称,客户端用于识别。
- 'command': 启动 MCP 服务器进程的命令及其路径。
- 'args': 传递给服务器的命令行参数。'--transport stdio' 表示使用标准输入输出进行通信,这是 LLM 客户端常用的方式。您也可以根据需要配置 '--transport http' 或 '--transport sse' 及相应的 '--port' 和 '--endpoint' 参数。
- 'env': 设置环境变量,用于传递敏感信息如 API Token。推荐使用此方式配置 'LINODE_API_TOKEN'。
基本使用方法
- 启动服务器: 在您本地或远程环境中运行服务器启动命令(例如,在 'docs-cloud-projects/apps/linode-mcp-server-main' 目录下执行 'LINODE_API_TOKEN=YOUR_LINODE_API_TOKEN node dist/index.js --transport stdio',注意替换 Token 并根据需要调整 transport)。对于 '--transport stdio',服务器将以后台进程运行,通过标准I/O与客户端通信。对于 HTTP/SSE,服务器将监听指定的端口。
- 连接客户端: 在您的 MCP 客户端(如 Claude Desktop)中,按照客户端的指引添加一个新的 MCP 服务器连接,并使用上面提供的 JSON 配置信息。
- 使用工具: 客户端连接成功后,LLM 将能够发现并列出 Linode MCP 服务器提供的工具。您可以通过自然语言向 LLM 提问或发出指令,LLM 将根据您的请求选择并调用相应的 Linode 工具来获取信息或执行操作(例如,“列出我的所有 Linode 云主机”、“创建一个位于 us-east 区域的 20GB 存储卷”)。
信息
分类
开发者工具