返回 MCP 目录
public公开dns本地运行

licensespring-mcp

LicenseSpring MCP服务器实现,提供完整的许可证管理和客户操作功能,包括许可证激活、客户管理、使用跟踪等功能,支持多种订阅级别和认证方式。

article

README

🚀 LicenseSpring® MCP Server

LicenseSpring® MCP Server 是一个与 LicenseSpring API 集成的 MCP 服务器实现,提供全面的许可证管理和客户操作功能。它能够帮助用户轻松管理许可证、跟踪使用情况、处理试用许可证等,为软件许可证管理提供了一站式解决方案。

✨ 主要特性

  • 许可证操作:激活、检查和停用带有硬件绑定的许可证。
  • 客户管理:创建、列出和管理客户信息。
  • 使用情况跟踪:监控许可证消耗和功能使用情况。
  • 试用管理:生成和管理试用许可证。
  • 浮动许可证处理:处理浮动许可证的相关操作。
  • 认证优先级:以 LICENSE_API_KEY 作为主要认证方法,LICENSE_SHARED_KEY 可用于增强安全性。
  • 全面测试:拥有完整的集成测试套件,可进行真实 API 验证。

📦 安装指南

NPM 包安装

npm install -g @tfedorko/licensespring-mcp-server

注意:为确保最佳兼容性,需要 Node.js 20.x 或更高版本。

Docker 镜像安装

# 许可证 API 服务器
docker pull stiertfedorko/licensespring-mcp:latest

# 管理 API 服务器
docker pull stiertfedorko/licensespring-mcp-management:latest

💻 使用示例

工具介绍

许可证 API 工具

  • activate_license - 激活带有硬件 ID 绑定的许可证。
  • check_license - 检查许可证状态和有效性。
  • deactivate_license - 停用特定硬件的许可证。
  • add_consumption - 为许可证添加使用量单位。
  • get_trial_key - 生成试用许可证密钥。
  • get_product_details - 获取产品信息。
  • floating_release - 释放浮动许可证。
  • floating_borrow - 借用浮动许可证以供离线使用。
  • change_password - 更改基于用户的许可证的用户密码。
  • get_versions - 获取可用的软件版本。
  • get_installation_file - 获取安装文件信息。
  • get_sso_url - 生成单点登录 URL。

管理 API 工具

  • list_licenses - 列出许可证,支持可选过滤。
  • create_license - 创建新的许可证。
  • update_license - 更新现有许可证。
  • get_license - 获取详细的许可证信息。
  • delete_license - 删除许可证。
  • list_customers - 列出客户,支持过滤选项。
  • create_customer - 创建新客户。

使用配置

获取 API 凭证

  1. 许可证 API 密钥:登录 LicenseSpring 仪表盘 → 设置 → 密钥(主要认证方法)。
  2. 管理 API 密钥:在相同位置复制管理 API 密钥。
  3. 共享密钥:对于使用共享 API 设置的组织可选(增强安全性)。

测试

运行全面的集成测试以验证功能:

# 构建项目
npm run build

# 针对真实的 LicenseSpring API 运行集成测试
npm run test:integration

# 运行单元测试
npm test

集成测试会针对真实的 LicenseSpring API 验证所有 34 个 MCP 工具,并验证认证优先级是否正常工作。该实现与 LicenseSpring Postman 集合具有 100% 的功能对等性。

🔧 CI/CD 集成:GitHub Actions 工作流现在支持通过正确的密钥配置进行全面的集成测试。

与 Claude Desktop 配合使用

将以下内容添加到 claude_desktop_config.json 中:

许可证 API 服务器
{
  "mcpServers": {
    "licensespring": {
      "command": "npx",
      "args": [
        "-y",
        "@tfedorko/licensespring-mcp-server",
        "license-api"
      ],
      "env": {
        "LICENSE_API_KEY": "YOUR_LICENSE_API_KEY",
        "LICENSE_SHARED_KEY": "YOUR_SHARED_KEY_IF_USING_SHARED_API_SETTINGS"
      }
    }
  }
}
管理 API 服务器
{
  "mcpServers": {
    "licensespring-management": {
      "command": "npx",
      "args": [
        "-y",
        "@tfedorko/licensespring-mcp-server",
        "management-api"
      ],
      "env": {
        "MANAGEMENT_API_KEY": "YOUR_MANAGEMENT_API_KEY"
      }
    }
  }
}
Docker 配置
{
  "mcpServers": {
    "licensespring": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "LICENSE_API_KEY",
        "-e",
        "LICENSE_SHARED_KEY",
        "stiertfedorko/licensespring-mcp:latest"
      ],
      "env": {
        "LICENSE_API_KEY": "YOUR_LICENSE_API_KEY",
        "LICENSE_SHARED_KEY": "YOUR_SHARED_KEY_OR_LEAVE_EMPTY"
      }
    },
    "licensespring-management": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "MANAGEMENT_API_KEY",
        "stiertfedorko/licensespring-mcp-management:latest"
      ],
      "env": {
        "MANAGEMENT_API_KEY": "YOUR_MANAGEMENT_API_KEY"
      }
    }
  }
}

与 VS Code 配合使用

一键安装

使用以下一键安装按钮进行快速安装: Install with NPX in VS Code

Install with NPX in VS Code Insiders

手动安装

将以下 JSON 块添加到 VS Code 的用户设置(JSON)文件中:

{
  "mcp": {
    "inputs": [
      {
        "type": "promptString",
        "id": "license_api_key",
        "description": "LicenseSpring License API Key",
        "password": true
      },
      {
        "type": "promptString",
        "id": "license_shared_key",
        "description": "LicenseSpring Shared Key (optional for Basic/Standard tiers)",
        "password": true
      }
    ],
    "servers": {
      "licensespring": {
        "command": "npx",
        "args": ["-y", "@tfedorko/licensespring-mcp-server", "license-api"],
        "env": {
          "LICENSE_API_KEY": "${input:license_api_key}",
          "LICENSE_SHARED_KEY": "${input:license_shared_key}"
        }
      }
    }
  }
}

📚 详细文档

订阅层级支持

服务器会自动适应您的 LicenseSpring 订阅层级:

  • 高级/企业版:具备 HMAC 认证的完整功能。
  • 基础/标准版:有限模式,提供有用的升级指导。
  • 开发版:用于安全开发的测试模式。

注意LICENSE_SHARED_KEY 是可选的。无论您的订阅层级如何,服务器都会启动,并为 API 限制提供适当的指导。

故障排除

常见问题

错误:“npm error could not determine executable to run”

  • 解决方案:更新到 1.0.1 或更高版本:npx @tfedorko/licensespring-mcp-server@latest
  • 原因:在 v1.0.1 中修复 - 改进了二进制配置和启动过程。

错误:“MCP error -1: Connection closed”

  • 解决方案:更新到 1.0.2 或更高版本:npx @tfedorko/licensespring-mcp-server@latest
  • 原因:在 v1.0.2 中修复 - 服务器现在默认以 license-api 模式运行,以兼容 Claude Desktop。

错误:“LICENSE_API_KEY is required”

  • 解决方案:在 .env 文件或 Claude Desktop 配置中设置环境变量。
  • 检查:将 .env.example 复制到 .env 并填写您的 API 凭证。

错误:“Authentication failed”

  • 解决方案:在 LicenseSpring 仪表盘中验证您的 API 密钥。
  • 注意:对于基础/标准版订阅层级,LICENSE_SHARED_KEY 是可选的。

服务器启动但 API 调用失败

  • 检查:您的 LicenseSpring 订阅层级和可用的 API 功能。
  • 解决方案:服务器会为订阅限制提供有用的指导。

获取帮助

  1. 查看错误消息 - 它们会提供具体的指导。
  2. 验证您的 LicenseSpring 订阅层级和 API 访问权限。
  3. 查看下面的 高级文档
  4. 在 GitHub 上提交包含错误详细信息的问题。

版本发布自动化

本项目包含全面的自动化版本发布和 NPM 分发:

快速发布命令

npm run release          # 补丁发布 (1.0.0 -> 1.0.1)
npm run release:minor    # 小版本发布 (1.0.0 -> 1.1.0)
npm run release:major    # 大版本发布 (1.0.0 -> 2.0.0)

预览更改

npm run version:dry      # 预览版本升级
npm run publish:dry      # 预览 NPM 发布

自动化 GitHub 发布

  • 提交触发:在提交消息中使用 [release]
  • 手动触发:通过 GitHub Actions 工作流。
  • 语义化发布:使用常规的提交消息。

有关完整的自动化文档,请参阅 版本发布自动化指南

高级文档

📄 许可证

此 MCP 服务器根据 MIT 许可证授权。这意味着您可以自由使用、修改和分发该软件,但需遵守 MIT 许可证的条款和条件。有关更多详细信息,请参阅项目仓库中的 LICENSE 文件。

商标声明

本项目经 Cense Data Inc. 许可使用 LicenseSpring® 名称。详情请参阅 TRADEMARK 文件。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端