代码质量分析服务

Codacy MCP Server 是一个提供代码质量分析、安全扫描和覆盖率检测的API服务,适用于团队协作开发和技术债务管理。

  • by codacy
  • TypeScript
  • 本地部署
  • 58 星标
  • 更新于
在 GitHub 查看 codacy/codacy-mcp-server

使用说明

Codacy MCP服务器

用于Codacy API的MCP服务器,允许访问存储库、文件、质量、覆盖范围、安全性等等。

目录

功能/工具

Codacy MCP服务器提供以下工具:

存储库设置和管理

  • codacy_setup_repository:如果Codacy中尚未存在存储库,请添加或跟踪该存储库。此工具可确保存储库在Codacy中注册,从而允许进一步的分析和管理。

组织和存储库管理

  • codacy_list_organizations:列出支持分页的组织。
  • codacy_list_organization_repositories:列出支持分页的组织中的存储库。
  • codacy_get_repository_with_analysis:获取包含分析信息的存储库,包括等级、问题、重复、复杂性和覆盖率的指标。

代码质量与分析

  • codacy_list_repository_issues:列出并过滤存储库中的代码质量问题。这是调查一般代码质量问题(如最佳实践、性能、复杂性、风格)的主要工具,但不是安全问题。对于与安全相关的问题,请改用SRM项目工具。功能包括:

    • 处理大型结果集的分页支持
    • 根据多种标准进行筛选,包括严重性、类别和语言
    • 基于作者的责任过滤
    • 分行具体分析
    • 基于模式的搜索

    常见用例:

    • 代码质量审核
    • 技术债务评估
    • 风格指南合规性检查
    • 性能问题调查
    • 复杂性分析

文件管理与分析

  • codacy_list_files:列出支持分页的存储库中的文件。
  • codacy_get_file_issues:获取存储库中文件的问题列表。
  • codacy_get_file_coverage:在存储库分支的头部提交中获取文件的覆盖率信息。
  • codacy_get_file_clones:获取存储库中文件的重复克隆(相同或非常相似的代码段)列表。
  • codacy_get_file_with_analysis:获取文件的详细分析信息,包括等级、问题、重复、复杂性和覆盖率的指标。

证券分析

  • codacy_search_organization_srm_items:列出整个组织的安全项目/问题/漏洞/发现的主要工具。结果与Codacy上组织的安全和风险管理(SRM)仪表板有关。
  • codacy_search_repository_srm_items:列出特定存储库的安全项目/问题/漏洞/发现。

这两种工具都提供全面的安全分析,包括:

  • SAST(代码扫描)
  • 秘密(秘密扫描)
  • SCA(依赖关系扫描)
  • IaC(基础设施即代码扫描)
  • CICD(CI/CD扫描)
  • DAST(动态应用程序安全测试)
  • 渗透测试

拉取请求分析

  • codacy_list_repository_pull_requests:列出用户有权访问的存储库中的拉取请求。
  • codacy_get_repository_pull_request:获取特定拉取请求的详细信息。
  • codacy_list_pull_request_issues:返回拉取请求中发现的问题列表(新问题或已修复问题)。
  • codacy_get_pull_request_files_coverage:获取拉取请求中所有文件的差异覆盖率信息。
  • codacy_get_pull_request_git_diff:返回拉取请求的人类可读Git差异。

工具和模式管理

  • codacy_list_tools:列出Codacy中可用的所有代码分析工具。
  • codacy_list_repository_tools:获取存储库的分析工具设置和可用工具。
  • codacy_get_pattern:获取特定模式的定义。
  • codacy_list_repository_tool_patterns:列出可用于存储库的工具模式。
  • codacy_get_issue:获取有关特定问题的详细信息。

CLI分析

  • codacy_cli_analyze:使用Codacy CLI在本地运行质量分析。功能包括:
    • 分析特定文件或整个目录
    • 使用特定工具或所有可用工具
    • 无需等待预定分析即可立即获得结果
    • 根据Codacy配置应用修复程序

设置

需求

确保您的机器安装了以下工具:

  • 版本控制系统
  • node.js
    • 确保 npx 命令运行时没有问题。

对于本地分析,MCP服务器需要 Codacy命令行界面 待安装。如果它不可用,MCP服务器将尝试为您安装它。Codacy CLI v2可在macOS、Linux和Windows上运行(仅适用于WSL)。

个人API访问令牌

从您的Codacy账户获取API代币 Codacy帐户.

稍后在设置中您将需要它。

安装

在支持的IDE中,如VS Code、Cursor和Windsurf,安装Codacy的MCP服务器的最简单方法是从Codacy扩展中安装。如果您还没有,请从IDE中或从任何可用的市场安装扩展(微软, OpenVSX).在扩展面板中,只需单击添加Codacy MCP服务器。之后重新启动IDE。

如果没有扩展,您仍然可以使用和安装MCP服务器:

光标、风帆和其他

您可以使用Cursor的一键安装:

否则,根据您将MCP服务器连接到的对象,您可以使用以下方法:

  • 光标:编辑 .cursor/mcp.json 文件以添加以下内容
  • Windsurf:编辑 .codeium/windsurf/mcp_config.json 文件以添加以下内容
  • 克劳德桌面:编辑 claude_desktop_config.json 文件以添加以下内容
{
  "mcpServers": {
    "codacy": {
      "command": "npx",
      "args": ["-y", "@codacy/codacy-mcp"],
      "env": {
        "CODACY_ACCOUNT_TOKEN": "<YOUR_TOKEN>"
      }
    }
  }
}

VS代码与副本

您可以使用VS Code的一键安装:

否则,如果您想手动设置:

  1. 要在VS Code中将MCP服务器连接到Copilot,请将以下内容添加到IDE的全局配置中:
{
  "mcp": {
    "inputs": [],
    "servers": {
      "codacy": {
        "command": "npx",
        "args": ["-y", "@codacy/codacy-mcp"],
        "env": {
          "CODACY_ACCOUNT_TOKEN": "<YOUR_TOKEN>"
        }
      }
    }
  }
}

您可以在以下位置打开user-settings.json文件:

View > Command Palette > Preferences: Open User Settings (JSON)

或者直接打开general settings.json文件,根据您的操作系统,该文件应位于:

  • 对于macOS: ~/Library/Application Support/Code/User/settings.json
  • 对于Windows: %APPDATA%\Code\User\settings.json
  • 对于Linux: ~/.config/Code/User/settings.json

别忘了更新的值 CODACY_ACCOUNT_TOKEN 用你的代币。

  1. 确保您启用了代理模式: vscode://settings/chat.agent.enabled

  2. 打开Copilot聊天并将模式切换到 Agent。您可以通过单击来检查MCP服务器是否已正确启用 Select tools 图标,其中应列出所有可用的Codacy工具。

故障排除

克劳德桌面和NVM

在Claude Desktop中使用NVM时,NPX可能无法工作。您应该首先全局安装MCP服务器,然后直接使用Node:

npm install -g @codacy/codacy-mcp
{
  "mcpServers": {
    "codacy": {
      "command": "/Users/yourusername/.nvm/versions/node/vXX.X.X/bin/node",
      "args": ["/path-to/codacy-mcp/dist/index.js"],
      "env": {
        "CODACY_ACCOUNT_TOKEN": "<YOUR_TOKEN>"
      }
    }
  }
}

贡献

要在本地处理MCP服务器代码,请运行:

npm install
npm run update-api
npm run build

检验员测试

您可以使用检查器工具测试MCP服务器。您可以设置 CODACY_ACCOUNT_TOKEN 环境变量或将其内联传递:

CODACY_ACCOUNT_TOKEN=your_token_here npm run inspect

这将构建项目,并使用您的Codacy令牌启动MCP检查器。

使用代理进行测试

您可以按如下方式测试配置MCP服务器的本地实例:

"codacy": {
  "command": "/path/to/bin/node",
  "args": [
    "/path/to/codacy-mcp-server/dist/index.js"
  ],
  "env": {
    "CODACY_ACCOUNT_TOKEN": "<YOUR_TOKEN>"
  }
}

Codacy CLI支持

为了使用 Codacy命令行界面,它需要安装。每当MCP服务器收到分析请求时,它都会尝试安装CLI并对其进行初始化。

如果您想使用我们CLI的特定版本,请发送 CODACY_CLI_VERSION MCP服务器配置中的env变量。

许可证

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