ConfigCat MCP Server

官方

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

文档

ConfigCat MCP 服务器

NPM License

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

功能特性

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

设置

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

环境变量是否必需默认值描述
CONFIGCAT_API_USERConfigCat 管理 API 基本认证用户名
CONFIGCAT_API_PASSConfigCat 管理 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 版本,适用于配置 V2

SDK 文档

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

API 速率限制

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

安全说明

此服务器仅设计用于管理操作。请勿将其用于在生产应用中评估功能开关值——请改用 ConfigCat SDKsConfigCat Proxy

需要帮助?

https://configcat.com/support

贡献

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

关于 ConfigCat