AI应用部署服务器

Coolify MCP服务器是一个模型上下文协议服务器,提供安全的AI应用部署和管理工具,支持一键部署应用模板并管理应用生命周期。

  • by Thedurancode
  • TypeScript
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 Thedurancode/Coolify-MCP

使用说明

冷却MCP服务器

模型上下文协议(MCP)服务器,将Coolify API功能公开为人工智能代理的安全结构化工具。这使得人工智能驱动的应用市场成为可能,用户只需点击一下即可在Coolify上部署应用程序。

🚀 特性

  • 项目管理:列出、创建和管理Coolify项目
  • 应用程序生命周期:创建、更新、删除和管理应用程序
  • 部署控制:部署应用程序并监控其状态
  • 模板市场:流行应用程序的预配置模板
  • 安全护栏:配额检查、名称冲突检测和资源限制
  • 综合录井:所有人工智能操作的完整审计跟踪

📋 先决条件

  • Node.js 18+
  • 正在运行的Coolify实例
  • 使用适当权限冷却API令牌
  • Docker(用于运行MCP服务器)

🛠️ 安装

选项1:克隆和构建

git clone https://github.com/your-org/coolify-mcp-server.git
cd coolify-mcp-server
npm install
npm run build

选项2:Docker(推荐)

docker pull ghcr.io/your-org/coolify-mcp-server:latest

⚙️ 配置

创建 .env 文件基于 .env.example:

# Required
COOLIFY_API_URL=https://your-coolify-instance.com
COOLIFY_API_TOKEN=your-api-token-here

# Optional
COOLIFY_DEFAULT_TEAM_ID=
COOLIFY_MAX_APPS_PER_PROJECT=10
LOG_LEVEL=info

获取您的Coolify API代币

  1. 登录您的Coolify实例
  2. 前往设置→ API令牌
  3. 创建具有以下权限的新令牌:
    • 项目:读/写
    • 应用程序:读/写/删除
    • 部署:读/写

🏃 运行服务器

发展

npm run dev

生产

npm run build
npm start

码头工人

docker run \
  -e COOLIFY_API_URL=https://coolify.example.com \
  -e COOLIFY_API_TOKEN=your-token \
  -e COOLIFY_MAX_APPS_PER_PROJECT=20 \
  ghcr.io/your-org/coolify-mcp-server:latest

🔧 MCP客户端配置

添加到MCP客户端配置中:

{
  "mcpServers": {
    "coolify": {
      "command": "node",
      "args": ["/path/to/coolify-mcp-server/dist/index.js"],
      "env": {
        "COOLIFY_API_URL": "https://your-coolify-instance.com",
        "COOLIFY_API_TOKEN": "your-api-token",
        "COOLIFY_MAX_APPS_PER_PROJECT": "10"
      }
    }
  }
}

📚 可用工具

项目

  • coolify.list_projects -列出所有项目
  • coolify.create_project -创建新项目

应用程序

  • coolify.list_apps -列出项目中的应用程序
  • coolify.get_app -获取应用程序详细信息
  • coolify.create_app -创建新应用程序
  • coolify.update_app -更新应用程序
  • coolify.delete_app -删除应用程序

部署

  • coolify.deploy_app -部署应用程序
  • coolify.get_deployment_status -检查部署状态
  • coolify.get_deployment_logs -获取部署日志

模板

  • coolify.deploy_template -从预配置的模板部署
  • coolify.list_templates -列出可用模板

安全

  • coolify.check_quota -检查项目配额
  • coolify.check_name_conflicts -检查应用程序名称是否可用

🎯 快速入门示例

部署合理分析

// First, check if the name is available
await checkNameConflicts({
  projectId: "proj-123",
  name: "plausible-analytics"
});

// Deploy the template
const result = await deployTemplate({
  templateName: "plausible",
  projectId: "proj-123",
  appName: "plausible-analytics",
  environment: {
    BASE_URL: "https://analytics.example.com",
    SECRET_KEY_BASE: "your-secret-key",
    POSTGRES_URL: "postgresql://..."
  }
});

部署自定义应用程序

// Create a new application
const app = await createApp({
  projectId: "proj-123",
  name: "my-react-app",
  type: "dockerfile",
  gitRepository: {
    url: "https://github.com/user/react-app.git",
    branch: "main"
  },
  environment: {
    NODE_ENV: "production"
  },
  ports: [3000]
});

// Deploy it
const deployment = await deployApp({ id: app.id });

📦 可用模板

模板 描述 类型 服务
合理 隐私友好分析 Docker镜像 PostgreSQL
strapi 无头CMS Git PostgreSQL、MySQL
saleor 电商平台 Docker镜像 PostgreSQL、Redis
n8n 工作流自动化 Docker镜像 PostgreSQL、Redis
uptime kuma 监控工具 Docker镜像 -
gitlab Git仓库管理器 Docker镜像 PostgreSQL、Redis
rocketchat 通信平台 Docker镜像 MongoDB
书库 文档平台 Docker镜像 MySQL、PostgreSQL

看 示例/tool-calls.md 以获取详细示例。

🔒 安全

  • API令牌存储在服务器端,从不暴露给AI代理
  • 所有输入都使用严格的模式进行验证
  • 项目级隔离防止跨项目访问
  • 内置配额和费率限制
  • 全面的审计日志记录

看 docs/SECURITY.md 出于详细的安全考虑。

📝 API 参考

MCP服务器通过模型上下文协议公开以下端点:

响应格式

所有回复均遵循以下结构:

{
  "success": true,
  "data": { ... }
}

或者对于错误:

{
  "success": false,
  "error": {
    "code": "ERROR_CODE",
    "message": "Human-readable error description"
  }
}

错误代码

  • UNAUTHORIZED -API令牌无效
  • FORBIDDEN -权限不足
  • NOT_FOUND -资源不存在
  • CONFLICT -资源冲突(例如,重复名称)
  • VALIDATION_ERROR -输入数据无效
  • RATE_LIMIT -请求太多
  • QUOTA_EXCEEDED -超出项目配额
  • NETWORK_ERROR -未能连接到Coolify
  • UNKNOWN_ERROR -意外错误

🤝 贡献

  1. 分叉存储库
  2. 创建要素分支: git checkout -b feature/amazing-feature
  3. 提交您的更改: git commit -m 'Add amazing feature'
  4. 推到分支: git push origin feature/amazing-feature
  5. 打开拉取请求

开发设置

# Install dependencies
npm install

# Run in development mode
npm run dev

# Run tests
npm test

# Lint code
npm run lint

# Format code
npm run format

📄 许可证

此项目根据MIT许可证获得许可-请参阅 许可证 文件以获取详细信息。

🆘 支持

🙏 致谢


内置于❤️ 由社区