项目管理服务器

PipeOps MCP Server是一个用于与PipeOps平台交互的模型上下文协议服务器,提供项目管理、服务器部署、环境配置等功能。

  • by PipeOpsHQ
  • Go
  • 本地部署
  • 更新于
在 GitHub 查看 PipeOpsHQ/pipeops-mcp

使用说明

PipeOps MCP服务器

用于与PipeOps平台交互的模型上下文协议(MCP)服务器。

特性

  • 项目:列出、获取、创建、更新和删除项目
  • 服务器:管理服务器和部署
  • 环境:处理环境配置
  • 团队:团队和工作空间管理
  • 计费:查看账单信息和使用情况
  • 附加组件:管理附加组件和集成
  • 用户:用户配置文件和身份验证
  • 云提供商:配置云提供商集成

安装

托管MCP(推荐给客户)

客户不安装Go二进制文件。将托管端点添加到任何远程MCP 客户:

https://mcp.pipeops.app/mcp

当托管服务运行时 PIPEOPS_OAUTH_MODE=bridge,支持OAuth 客户端自动发现授权服务器。PipeOps同意 流程打开PipeOps控制台,客户在其中使用相同的PKCE登录 OAuth流程为 pipeops login.网桥返回短期的、有作用域的OAuth MCP客户端的凭据。Console访问和刷新凭据为 在静止时加密,并且永远不会返回给客户端。

支持静态请求头的客户端可以继续直接连接:

export PIPEOPS_TOKEN="sat_your_token_here"
codex mcp add pipeops \
  --url https://mcp.pipeops.app/mcp \
  --bearer-token-env-var PIPEOPS_TOKEN
codex mcp get pipeops

看 docs/REMOTE_AUTH.md 对于部署模式,OAuth 端点、存储要求和验收。

本地二进制

go install github.com/PipeOpsHQ/pipeops-mcp/cmd/pipeops-mcp-server@latest

二进制文件安装在 $(go env GOPATH)/bin/pipeops-mcp-server.

要改为从源代码安装,请执行以下操作:

git clone https://github.com/PipeOpsHQ/pipeops-mcp.git
cd pipeops-mcp
go install ./cmd/pipeops-mcp-server

配置

服务器需要通过以下任一方式进行身份验证:

  1. 服务/API令牌(推荐):设置 PIPEOPS_TOKEN 到专用工作区服务令牌(sat_…)与 api:read 只有它需要的额外范围(集成→ 服务令牌)
  2. 电子邮件/密码:设置 PIPEOPS_EMAIL 和 PIPEOPS_PASSWORD 环境变量

可选配置:

  • PIPEOPS_BASE_URL:PipeOps API基本URL(默认值:https://api.pipeops.io)

托管传输配置:

  • PIPEOPS_TRANSPORT=http 启用流式HTTP(默认值保持不变 stdio)
  • PIPEOPS_HTTP_ADDR=:8080 控制监听地址
  • PIPEOPS_MCP_PUBLIC_URL=https://mcp.pipeops.app/mcp 设置OAuth资源URL
  • PIPEOPS_OAUTH_MODE=bearer|bridge|external 选择托管身份验证模式
  • PIPEOPS_OAUTH_STORE=sqlite|redis 选择网桥持久性(默认为 sqlite)
  • PIPEOPS_OAUTH_SQLITE_PATH 设置SQLite文件(默认 /data/oauth/pipeops-mcp-oauth.db;在以下位置安装PVC /data 因此会话在重新启动后仍然有效)
  • PIPEOPS_OAUTH_REDIS_URL 仅在以下情况下需要 PIPEOPS_OAUTH_STORE=redis
  • PIPEOPS_OAUTH_ENCRYPTION_KEY 是必需的 bridge 模式,并且必须是base64编码的32字节密钥
  • PIPEOPS_OAUTH_ISSUER 可选地覆盖网桥颁发器,并且在中是必需的 external 模式
  • PIPEOPS_MCP_SCOPES 可选地覆盖逗号分隔的作用域(默认为 api:read,api:write)
  • PIPEOPS_CONSOLE_OAUTH_URL 可选地覆盖Console URL(默认为 https://console.pipeops.io)
  • PIPEOPS_CONSOLE_OAUTH_CLIENT_ID 可选地覆盖Console公共OAuth客户端(默认为 pipeops_public_client)
  • PIPEOPS_CONSOLE_OAUTH_SCOPES 可选地覆盖Console作用域(默认为 openid,profile,email)

使用生成网桥加密密钥 openssl rand -base64 32.图像 以root身份运行并预创建 /data/oauth (默认SQLite路径)。安装PVC 在 /data 因此OAuth会话在pod重启后仍然存在;不 fsGroup/UID重新映射 对于根拥有的卷,这是必需的。当需要多个MCP副本时使用Redis 共享状态。不设置共享 PIPEOPS_TOKEN 在托管服务上;每个 客户授权自己的PipeOps控制台会话。

用法

使用克劳德桌面

添加到您的Claude Desktop配置文件中:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json 视窗: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "pipeops": {
      "command": "pipeops-mcp-server",
      "env": {
        "PIPEOPS_TOKEN": "your-api-token-here"
      }
    }
  }
}

与Codex合作

设置工作区服务令牌并注册已安装的服务器:

export PIPEOPS_TOKEN="sat_your_token_here"
codex mcp add pipeops \
  --env PIPEOPS_TOKEN="$PIPEOPS_TOKEN" \
  -- "$(go env GOPATH)/bin/pipeops-mcp-server"
codex mcp list

注册服务器后启动新的Codex任务,以便加载其工具。

独立

export PIPEOPS_TOKEN="your-api-token"
pipeops-mcp-server

可用工具

项目

  • list_projects -列出所有具有可选筛选的项目
  • get_project -获取详细的项目信息
  • create_project -创建新项目
  • update_project -更新项目配置
  • delete_project -删除项目
  • deploy_project -触发项目部署
  • restart_project -重新启动项目
  • stop_project -停止项目
  • get_project_logs -检索项目运行时日志
  • get_project_build_logs -检索部署构建日志(Firebase pipeops-build-logs 通过控制平面)
  • get_project_env_variables -检索项目环境变量
  • update_project_env_variables -更新项目环境变量
  • update_project_deploy_settings -更新部署/源代码管理设置(首选客户端瘦体)
  • update_project_security_policy -更新图像扫描安全策略(首选客户端部分更新)
  • deploy_project_from_image -从预构建的容器映像创建和部署项目

BYOI和注册处

  • create_external_registry -创建外部容器注册表配置
  • list_external_registries -列出工作区的外部注册表
  • get_external_registry -获取外部注册表详细信息
  • delete_external_registry -删除外部注册表配置
  • list_external_registry_images -列出通过外部注册表可用的存储库
  • list_external_registry_tags -列出通过外部注册表可用的图像标签
  • search_public_registry_images -搜索公共Docker Hub镜像
  • list_public_registry_tags -列出公共Docker Hub映像的标签

服务器

  • list_servers -列出所有服务器
  • get_server -获取服务器详细信息
  • get_cluster_connection -获取群集连接信息(server_id 也可用作别名)
  • get_cluster_cost_allocation -获取集群计算成本分配(server_id 也可用作别名)

云提供商

  • list_cloud_provider_regions -列出云提供商的可用区域
  • list_cloud_provider_instance_categories -列出云提供商的可用实例类别
  • list_cloud_provider_instance_types -列出区域和实例类的可用实例类型
  • list_cloud_provider_server_templates -列出云提供商的推荐服务器模板

环境

  • list_environments -列出环境配置
  • get_environment -获取环境详细信息
  • create_environment -创建新环境
  • update_environment -更新环境元数据
  • delete_environment -删除环境
  • set_environment_variables -为环境设置环境变量

团队和工作区

  • list_teams -列出团队
  • create_team -组建一个团队
  • update_team -更新团队
  • get_team -获取团队详细信息
  • invite_team_member -邀请团队成员
  • list_team_members -列出团队成员
  • remove_team_member -删除团队成员
  • update_team_member_role -更新团队成员角色
  • list_workspaces -列出工作区
  • create_workspace -创建工作区
  • update_workspace -更新工作区
  • get_workspace -获取工作区详细信息
  • delete_workspace -删除工作区
  • set_workspace_billing_email -设置工作区账单电子邮件

计费

  • get_billing_info -获取账单信息
  • list_billing_plans -列出可用的计费计划
  • subscribe_to_plan -订阅账单计划
  • cancel_subscription -取消订阅
  • add_billing_card -添加账单卡
  • delete_billing_card -删除账单卡
  • create_workspace_checkout -创建工作区计费或结账配置
  • start_trial -开始计费试用
  • get_billing_portal_url -获取计费门户URL
  • get_balance -获取当前账户余额
  • list_workspace_cards -列出当前工作区账单卡
  • get_active_card -获取活动账单卡
  • list_subscriptions -列出订阅
  • get_subscription -获取订阅详细信息
  • list_invoices -列出发票

安全

  • list_service_account_tokens -列出服务帐户令牌
  • get_service_account_token -获取服务帐户令牌详细信息
  • create_service_account_token -创建服务帐户令牌
  • update_service_account_token -更新服务帐户令牌
  • revoke_service_account_token -撤销服务帐户令牌

用户

  • get_current_user -获取当前用户配置文件

附加组件

  • list_addons -列出可用的附加组件
  • get_addon -获取附加组件详细信息
  • deploy_addon -将附加组件部署到项目或服务器
  • list_addon_deployments -列出附加组件部署
  • get_addon_deployment -获取附加组件部署详细信息
  • get_addon_deployment_session -获取附加组件部署会话详细信息
  • view_addon_deployment_configs -查看插件部署配置
  • add_addon_domain -将域添加到附加组件
  • list_addon_categories -列出附加组件类别
  • get_my_addon_submissions -列出您的附加组件提交

示例

列出项目

{
  "name": "list_projects",
  "arguments": {}
}

部署项目

{
  "name": "deploy_project",
  "arguments": {
    "project_id": "proj_abc123",
    "workspace_id": "workspace_abc123",
    "no_cache": false
  }
}

更新项目环境变量

{
	"name": "update_project_env_variables",
	"arguments": {
		"project_id": "proj_abc123",
		"env_variables": [
			{
				"key": "DATABASE_URL",
				"value": "postgres://..."
			},
			{
				"key": "API_KEY",
				"value": "secret123"
			}
		]
	}
}

从映像部署

{
	"name": "deploy_project_from_image",
	"arguments": {
		"name": "nginx-demo",
		"container_image": "docker.io/library/nginx",
		"image_tag": "latest",
		"port": 80,
		"vcpu": 0.5,
		"memory": {
			"value": 512,
			"unit": "MB"
		},
		"server_id": "cluster_abc123",
		"environment_id": "env_abc123",
		"workspace_id": "ws_abc123"
	}
}

部署附加组件

{
	"name": "deploy_addon",
	"arguments": {
		"addon_id": "addon_abc123",
		"project_id": "proj_abc123",
		"config": {
			"plan": "starter"
		}
	}
}

开始试用

{
	"name": "start_trial",
	"arguments": {
		"plan_id": "growth_v1"
	}
}

发展

# Clone repository
git clone https://github.com/PipeOpsHQ/pipeops-mcp
cd pipeops-mcp

# Install dependencies
go mod download

# Run tests
go test ./...

# Build
go build -o pipeops-mcp-server ./cmd/pipeops-mcp-server

# Run locally
./pipeops-mcp-server

许可证

MIT许可证

贡献

欢迎投稿!请打开问题或提交拉取请求。

mcp管道