静态网站部署管理工具

一个用于在DigitalOcean App Platform上部署和管理静态网站的模型上下文协议(MCP)服务器。

  • by wadewegner
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 wadewegner/mcp-servers

使用说明

MCP数字海洋

用于在DigitalOcean应用平台上部署和管理静态网站的模型上下文协议(MCP)服务器。

项目结构

src/
├── index.ts              # Main entry point
├── shared/               # Shared utilities
│   └── api.ts            # Shared API utilities
├── digitalocean/         # DigitalOcean MCP server
│   ├── api.ts            # DigitalOcean API functions
│   ├── server.ts         # DigitalOcean MCP server configuration
│   └── types.ts          # DigitalOcean API types
└── template/             # Template for new MCP servers
    ├── api.ts            # Template API functions
    ├── server.ts         # Template MCP server configuration
    └── types.ts          # Template API types
tests/                    # Test scripts and files

可用MCP服务器

DigitalOcean服务器

DigitalOcean MCP服务器提供使用API在DigitalOceanApp平台上部署和管理静态网站的工具。

API代币处理

DigitalOcean MCP服务器将自动在以下位置(按顺序)查找您的API令牌:

  1. 作为工具调用中的参数
  2. 环境变量: DO_API_TOKEN 或 DIGITALOCEAN_API_TOKEN
  3. 文件位于 ~/.dotoken 仅包含令牌
  4. A. .env 项目根目录中的文件 DO_API_TOKEN=your_token
  5. 文件位于 ~/.config/digitalocean/token 仅包含令牌

这意味着您可以设置一次令牌,而不必在每个命令中都提供它。

工具:

  • 部署静态站点:将静态网站部署到DigitalOcean应用平台

    • 所需参数:
      • app_name:应用程序的名称
      • repo:GitHub仓库(用户名/仓库)
    • 可选参数:
      • token:DigitalOcean API令牌(如果存储在环境或配置文件中,则为可选)
      • region:区域代码(例如nyc、sfo)-默认值:“nyc”
      • branch:要部署的分支-默认值:“main”
      • source_dir:存储库中包含源代码的目录-默认值:“/”
      • build_command:构建命令(如果需要)
      • output_dir:生成输出文件的目录
      • deploy_on_push:在git推送上自动部署-默认值:true
      • environment_slug:运行时环境-默认值:“html”
      • custom_domain:自定义域(可选)
  • 获取应用程序信息:获取有关DigitalOcean应用程序平台应用程序的信息

    • 所需参数:
      • app_id:应用程序ID
    • 可选参数:
      • token:DigitalOcean API令牌(如果存储在环境或配置文件中,则为可选)
  • 获取部署状态:获取特定部署的状态

    • 所需参数:
      • app_id:应用程序ID
      • deployment_id:部署ID
    • 可选参数:
      • token:DigitalOcean API令牌(如果存储在环境或配置文件中,则为可选)
  • 列出部署:列出应用程序的所有部署

    • 所需参数:
      • app_id:应用程序ID
    • 可选参数:
      • token:DigitalOcean API令牌(如果存储在环境或配置文件中,则为可选)
  • 创建部署:创建新部署(重新部署应用程序)

    • 所需参数:
      • app_id:应用程序ID
    • 可选参数:
      • token:DigitalOcean API令牌(如果存储在环境或配置文件中,则为可选)
      • force_build:强制重建而不使用缓存-默认值:false
  • 获取部署日志:获取部署日志

    • 所需参数:
      • app_id:应用程序ID
      • deployment_id:部署ID
    • 可选参数:
      • token:DigitalOcean API令牌(如果存储在环境或配置文件中,则为可选)
  • 删除应用程序:从DigitalOcean应用程序平台删除应用程序

    • 所需参数:
      • app_id:应用程序ID
    • 可选参数:
      • token:DigitalOcean API令牌(如果存储在环境或配置文件中,则为可选)

添加新的MCP服务器

要添加新的MCP服务器,请执行以下操作:

  1. 复制 template 目录并将其重命名为您的服务器名称
  2. 更新类型、API函数和服务器配置
  3. 将您的服务器添加到主服务器 index.ts 文件

建立和运行

# Install dependencies
npm install

# Build the project
npm run build

# Run the DigitalOcean MCP server
node build/index.js

测试

该项目在 tests/ 目录:

  • test-simple.mjs:一个向MCP服务器发送JSON-RPC请求的简单测试脚本
  • test-api.mjs:直接测试DigitalOcean API的脚本
  • test-mcp.mjs:对MCP服务器进行更全面的测试
  • test-deploy.mjs:专门用于部署静态站点工具的测试脚本
  • token-test.mjs:用于验证能否正确读取DigitalOcean API令牌的实用程序脚本

要运行测试,请执行以下操作:

# Run a test script
node tests/test-simple.mjs

光标集成

要与Cursor一起使用,请将以下内容添加到您的 .cursor/mcp.json 文件:

{
  "mcpServers": {
    "digitalocean": {
      "command": "node",
      "args": [
        "/path/to/your/project/build/index.js"
      ]
    }
  }
}