ConfigCat

官方

与ConfigCat功能标志平台交互。支持管理功能标志、配置、环境、产品和组织。帮助集成ConfigCat SDK、实现功能标志或移除僵尸(过期)标志。

你可以用 ConfigCat MCP 做什么?

  • 管理功能开关 — 让助手通过 create-setting、update-setting 或 delete-setting 创建、更新或删除功能开关及设置。
  • 控制开关值 — 使用 get-setting-value 或 update-setting-value 跨环境读取或更改功能开关值。
  • 处理变更请求 — 使用 create-change-request 和 apply-change-request 等工具创建、批准、应用或评论变更请求。
  • 获取 SDK 指导 — 请求 update-sdk-documentation 以获取项目 SDK 的代码示例和实现指导。
  • 管理团队访问权限 — 使用 invite-member 和 list-organization-members 邀请成员、更新权限或列出组织成员。
  • 跟踪开关健康状态 — 使用 list-staleflags 生成过期开关报告,或通过 list-auditlogs 查看审计日志。

文档

ConfigCat MCP 服务器

NPM License

ConfigCat 的模型上下文协议(MCP)服务器提供了对 ConfigCat 公共管理 API 的访问,用于功能开关和配置管理。它还能让你的代码编辑器理解你的功能开关,将相应的 ConfigCat SDK 集成到你的项目中,甚至可以直接在你的代码库中创建新的功能开关。

功能特性

  • 工具:
    • 提供 ConfigCat 公共管理 API 操作的完整工具集。你可以在 ConfigCat 中创建、读取、更新和删除任何实体,如功能开关、配置、环境或产品。
    • 获取全面的 SDK 文档和代码示例,以便在你的项目中无缝实现功能开关。

设置

你可以使用以下环境变量来配置 MCP 服务器。

环境变量必填默认值描述
CONFIGCAT_API_USER☑ConfigCat 管理 API 基本认证用户名。
CONFIGCAT_API_PASS☑ConfigCat 管理 API 基本认证密码。
CONFIGCAT_BASE_URLhttps://api.configcat.comConfigCat 管理 API 主机。

以下说明展示了如何将客户端连接到 MCP 服务器。

Cursor

  1. 打开 Preferences -> Cursor Settings -> MCP & Integrations
  2. 点击 Add Custom MCP
  3. 为 ConfigCat MCP 服务器添加以下服务器定义:
{
  "mcpServers": {
    "ConfigCat": {
      "command": "npx",
      "args": ["-y", "@configcat/mcp-server"],
      "env": {
        "CONFIGCAT_API_USER": "YOUR_API_USER",
        "CONFIGCAT_API_PASS": "YOUR_API_PASSWORD"
      }
    }
  }
}
  1. 保存设置。

Visual Studio Code

  1. 在项目根目录创建一个 .vscode/mcp.json 文件,内容如下:
{
  "servers": {
    "ConfigCat": {
      "command": "npx",
      "args": ["-y", "@configcat/mcp-server"],
      "env": {
        "CONFIGCAT_API_USER": "YOUR_API_USER",
        "CONFIGCAT_API_PASS": "YOUR_API_PASSWORD"
      }
    }
  }
}
  1. 保存设置文件。MCP 服务器现在应该在 VS Code 中可用。

Claude Desktop

  1. 打开 设置 → 开发者
  2. 点击 编辑配置
  3. 打开 claude_desktop_config.json
  4. 为 ConfigCat MCP 服务器添加以下服务器定义:
{
  "mcpServers": {
    "ConfigCat": {
      "command": "npx",
      "args": ["-y", "@configcat/mcp-server"],
      "env": {
        "CONFIGCAT_API_USER": "YOUR_API_USER",
        "CONFIGCAT_API_PASS": "YOUR_API_PASSWORD"
      }
    }
  }
}
  1. 保存并重启 Claude。

可用工具

成员管理

组织

  • list-organizations - 列出所有组织

成员

  • list-organization-members - 列出组织成员
  • list-pending-invitations - 列出待处理的邀请
  • list-pending-invitations-org - 列出组织的待处理邀请
  • list-product-members - 列出产品成员
  • invite-member - 邀请新成员
  • update-member-permissions - 更新成员的权限
  • delete-organization-member - 移除组织成员
  • delete-product-member - 移除产品成员
  • delete-invitation - 取消邀请

权限组

  • list-permission-groups - 列出权限组
  • create-permission-group - 创建新的权限组
  • get-permission-group - 获取权限组详情
  • update-permission-group - 更新权限组
  • delete-permission-group - 删除权限组

常规

产品

  • list-products - 列出所有产品
  • get-product - 获取特定产品详情
  • update-product - 更新现有产品
  • delete-product - 删除产品
  • get-product-preferences - 获取产品偏好设置
  • update-product-preferences - 更新产品偏好设置
  • create-product - 创建新产品

配置

  • list-configs - 列出产品的配置
  • create-config - 创建新配置
  • get-config - 获取特定配置详情
  • update-config - 更新现有配置
  • delete-config - 删除配置

环境

  • list-environments - 列出产品的环境
  • create-environment - 创建新环境
  • get-environment - 获取特定环境详情
  • update-environment - 更新现有环境
  • delete-environment - 删除环境

用户分段

  • list-segments - 列出用户分段
  • create-segment - 创建新分段
  • get-segment - 获取特定分段详情
  • update-segment - 更新现有分段
  • delete-segment - 删除分段

SDK 密钥

  • get-sdk-keys - 获取配置/环境的 SDK 密钥

Webhooks

  • list-webhooks - 列出 Webhooks
  • get-webhook - 获取 Webhook 详情
  • replace-webhook - 替换 Webhook 配置
  • update-webhook - 更新现有 Webhook
  • delete-webhook - 删除 Webhook
  • get-webhook-signing-keys - 列出 Webhook 签名密钥
  • create-webhook - 创建新的 Webhook

集成

  • list-integrations - 列出集成
  • create-integration - 创建新集成
  • get-integration - 获取集成详情
  • update-integration - 更新现有集成
  • delete-integration - 删除集成

代码引用

  • get-code-references - 获取代码引用

诊断

审计日志

  • list-auditlogs - 获取产品审计日志
  • list-organization-auditlogs - 获取组织审计日志

僵尸(过期)开关

  • list-staleflags - 获取过期功能开关报告

功能开关元数据

功能开关与设置

  • list-settings - 列出配置的功能开关
  • create-setting - 创建新的功能开关
  • list-predefined-variations - 列出预定义变体
  • update-predefined-variations - 更新预定义变体
  • get-setting - 获取特定功能开关详情
  • replace-setting - 替换功能开关配置
  • update-setting - 更新现有功能开关
  • delete-setting - 删除功能开关

标签

  • list-tags - 列出产品的标签
  • create-tag - 创建新标签
  • list-settings-by-tag - 按标签获取功能开关
  • get-tag - 获取特定标签详情
  • update-tag - 更新现有标签
  • delete-tag - 删除标签

功能开关与设置值(v1 和 v2 API)

  • get-setting-value - 获取功能开关值
  • update-setting-value - 更新功能开关值
  • replace-setting-value - 替换功能开关值
  • get-setting-values - 获取多个设置值
  • post-setting-values - 更新多个设置值
  • V2 变体:上述工具的 *-v2 版本,适用于 Config V2

变更请求

  • get-change-request - 返回特定变更请求的详情
  • update-change-request - 更新变更请求的元数据,如标题、备注、计划等
  • list-change-requests - 列出变更请求
  • get-change-request-proposed-changes - 返回变更请求中包含的设置的建议更改
  • update-change-request-proposed-change - 更新变更请求中包含的设置的建议更改
  • add-change-request-comment - 向变更请求添加新评论
  • apply-change-request - 应用变更请求
  • approve-change-request - 向变更请求添加你的批准
  • claim-change-request-ownership - 声明变更请求的所有权
  • close-change-request - 关闭变更请求而不应用它
  • create-change-request - 为指定的配置和环境创建新的变更请求
  • remove-change-request-approval - 移除你对变更请求的现有批准
  • resolve-change-request-setting-conflicts - 更新变更请求中包含的设置的建议更改,以解决并发发布的更改引起的冲突
  • update-change-request-comment - 更新现有的变更请求评论
  • delete-change-request-comment - 删除变更请求评论
  • delete-change-request-proposed-change - 从变更请求中移除设置

SDK 文档

  • update-sdk-documentation - 获取全面的 SDK 文档和代码示例,以便在你的项目中无缝实现功能开关。

API 速率限制

ConfigCat 公共 API 有速率限制。服务器将遵守这些限制,并在超出限制时返回相应的错误消息。

安全说明

此服务器仅用于管理操作。请勿在生产应用程序中使用它来评估功能开关值 - 请改用 ConfigCat SDKs 或 ConfigCat Proxy。

需要帮助?

https://configcat.com/support

贡献

欢迎贡献。更多信息请阅读 贡献指南。

关于 ConfigCat