mcpField
D
Devcycle

Devcycle

远程服务
docs.devcycle.com开发工具201 天前更新

关于 Devcycle

Devcycle 是托管在 Cloudflare Worker 上的 DevCycle MCP 服务,让 Claude 等 AI 助手通过 OAuth 登录后管理 DevCycle 功能开关。适合需要在开发流程中用自然语言管理 feature flag 的团队。

主要功能

  1. 01OAuth 登录与同意授权流程
  2. 02无需本地安装,远程配置即可使用
  3. 03通过 Durable Objects 保存项目选择状态
  4. 04覆盖功能、定向、变量、环境和分析工具

适用场景

  1. 01用自然语言创建或更新功能开关
  2. 02查询功能的评估次数与审计日志
  3. 03为指定环境获取 SDK 密钥

MCP 相关

该项目是远程 MCP 服务,同时提供 /sse 与 /mcp 端点,向 MCP 客户端暴露 DevCycle 功能管理工具。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://mcp.devcycle.com/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

全部服务地址
Streamable HTTPhttps://mcp.devcycle.com/mcp
SSEhttps://mcp.devcycle.com/sse

工具

详细介绍

DevCycle MCP Cloudflare Worker

此软件包将 DevCycle MCP(Model Context Protocol)服务作为托管的 Cloudflare Worker 服务提供。它让 Claude 等 AI 助手能够通过 OAuth 身份验证管理 DevCycle 功能标志。

主要功能

  • OAuth 身份验证:通过用户授权流程安全集成 Auth0
  • 零安装:在 AI 助手中配置一次即可,无需本地设置
  • 自动更新:始终使用最新功能,无需手动更新
  • 状态持久化:Durable Objects 维护会话和项目选择状态

生产环境:https://mcp.devcycle.com
预发布环境:https://devcycle-mcp-server-staging.devcycle.workers.dev

架构

  • 基类:扩展 agents 软件包中的 McpAgent,用于处理 MCP 协议
  • 主类:DevCycleMCP - 管理工具注册和状态
  • 身份验证:使用 Auth0 集成和授权屏幕的 OAuth 2.0 流程
  • 传输方式:提供 SSE(/sse)和标准 HTTP(/mcp)端点,用于 MCP 协议
  • API 客户端:WorkerApiClient - 基于 OAuth 的 API 客户端,带有状态管理功能
  • 状态管理:使用 Durable Objects 持久化会话和项目选择状态
  • 工具注册:使用 CLI 中的共享工具,并针对 Worker 进行适配

生产环境配置

MCP Worker 已部署到 devcycle.com 区域中的 Cloudflare Workers,地址为 mcp.devcycle.com。

基础设施
  • Worker 名称:devcycle-mcp-server
  • 生产环境 URL:https://mcp.devcycle.com
  • 区域:devcycle.com
  • 路由模式:mcp.devcycle.com/*
存储
  • KV 命名空间:OAUTH_KV - 存储 OAuth 会话数据
  • Durable Objects:DevCycleMCP 类 - 维护每个会话的状态,包括项目选择
密钥(在 Cloudflare 控制面板中配置)
  • AUTH0_CLIENT_ID:DevCycle 的 Auth0 应用客户端 ID
  • AUTH0_CLIENT_SECRET:DevCycle 的 Auth0 应用客户端密钥

本地开发

设置
# Install dependencies
yarn install

# Start development server (runs on http://localhost:8787)
yarn dev
可用端点
  • /sse - MCP 服务端发送事件端点
  • /mcp - 标准 HTTP MCP 端点
  • /oauth/* - OAuth 流程端点(授权、回调、授权)
  • /health - 健康检查端点
使用 Claude Desktop 测试
{
  "mcpServers": {
    "devcycle-local": {
      "command": "npx",
      "args": ["mcp-remote", "http://localhost:8787/mcp"]
    }
  }
}
用户流程
  1. 使用端点配置 AI 助手
  2. 首次连接时通过 OAuth 进行身份验证
  3. 使用 select_project 工具选择项目
  4. 使用 DevCycle 功能标志工具

部署

生产环境部署

生产 Worker 通过以下方式部署:

yarn deploy

这会将 Worker 部署到 devcycle-mcp-server,并设置路由 mcp.devcycle.com/*。

重要:生产环境部署应通过 CI/CD 流水线进行,而不是手动部署。

身份验证

Worker 使用 DevCycle 的 Auth0 租户进行 OAuth 2.0 身份验证。首次连接时:

  1. 用户会看到 DevCycle 授权屏幕,其中列出所请求的权限
  2. 通过 Auth0 进行身份验证
  3. Worker 收到包含以下 JWT 声明的 OAuth 令牌:
    • org_id:DevCycle 组织 ID
    • project_key:默认项目(如果已配置)
    • email:用户邮箱
    • name:显示名称
  4. 访问令牌用于所有 DevCycle API 调用

可用工具

所有 DevCycle CLI MCP 工具均可用。详细参数请参阅完整参考。

项目:select_project、list_projects、get_current_project

功能:list_features、create_feature、update_feature、update_feature_status、delete_feature

定向:set_feature_targeting、list_feature_targeting、update_feature_targeting

变量:list_variables、create_variable、update_variable、delete_variable

环境:list_environments、get_sdk_keys

自助定向:get_self_targeting_identity、update_self_targeting_identity、list_self_targeting_overrides、set_self_targeting_override、clear_feature_self_targeting_overrides

分析:get_feature_total_evaluations、get_project_total_evaluations、get_feature_audit_log_history

事件

用户在托管的 MCP Worker 上完成 OAuth 后,Worker 会为首次安装发送一条 Ably 事件。

  • 频道:${orgId}-mcp-install
  • 事件名称:mcp-install

MCP 工具 Token 数量

衡量 MCP 工具描述和架构消耗的 AI Token 数量。在仓库根目录运行测量脚本:

yarn install &&
yarn measure:mcp-tokens

脚本的作用:

  • 使用 gpt-tokenizer(OpenAI 风格)和 @anthropic-ai/tokenizer(Anthropic)统计每个工具的 description 和 inputSchema 中的 Token 数量。

当前 Token 总数:

{
  "totals": {
    "anthropic": 10428,
    "openai": 10746
  }
}

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。