MCP代码分析和质量服务器
 ](https://nodejs.org/) 
备注:该项目最近完成,尚未经过广泛测试。请谨慎使用,并报告您遇到的任何问题。
由开发:克里斯·邦廷
一套MCP(模型上下文协议)服务器,提供代码分析、依赖关系管理、复杂性分析和智能优先级排序功能。
概述
该项目提供了三个MCP服务器和一个智能优先级库,可提供全面的代码质量分析:
- 静态分析服务器:代码质量和安全分析
- 依赖性分析服务器:依赖性管理和分析
- 复杂性分析器服务器:代码复杂性评估
- 智能优先级排序器:AI驱动的优先级库(其他服务器使用)
特性
静态分析服务器
- 代码质量分析
- 安全漏洞检测
- 最佳实践验证
- 多语言支持(JavaScript、TypeScript、Python、Java、C++、Go、Rust)
依赖性分析服务器
- 依赖性分析和管理
- 包兼容性检查
- 安全漏洞扫描
- 版本解析和冲突检测
复杂性分析器服务器
- 代码复杂性度量
- 可维护性评估
- 代码结构分析
- 基于AST的处理
智能优先级排序器
- 基于AI的优先级库
- 上下文感知分析引擎
- 基于学习的建议
- 影响评估和评分(其他服务器内部使用)
快速开始
先决条件
- Node.js 18.0或更高版本
- npm 8.0或更高版本
- Git
开发安装
克隆存储库并安装依赖项:
# Clone the repository
git clone
cd mcp-code-analysis-server
# Install all dependencies
npm install
# Build all packages
npm run buildMCP配置
构建后,将以下内容添加到MCP客户端的配置文件中(通常 mcp.json 或类似):
{
"mcpServers": {
"static-analysis-server": {
"command": "node",
"args": ["/path/to/mcp-code-analysis-server/packages/static-analysis-server/dist/index.js"],
"env": {
"NODE_ENV": "development"
}
},
"dependency-analysis-server": {
"command": "node",
"args": ["/path/to/mcp-code-analysis-server/packages/dependency-analysis-server/dist/index.js"],
"env": {
"NODE_ENV": "development"
}
},
"complexity-analyzer-server": {
"command": "node",
"args": ["/path/to/mcp-code-analysis-server/packages/complexity-analyzer-server/dist/index.js"],
"env": {
"NODE_ENV": "development"
}
}
}
}备注:替换 /path/to/mcp-code-analysis-server 使用克隆存储库的实际路径。
开发工作流程
对于开发和测试:
# Run tests
npm test
# Run linting
npm run lint
# Run type checking
npm run type-check
# Start individual servers for testing
cd packages/static-analysis-server
npm start
cd ../dependency-analysis-server
npm start
cd ../complexity-analyzer-server
npm start用法
配置后,MCP服务器将在您的MCP客户端中自动可用。每台服务器都提供特定的工具:
- 静态分析服务器:代码质量分析、安全检查、最佳实践验证
- 依赖性分析服务器:包依赖性分析、兼容性检查、安全扫描
- 复杂性分析器服务器:代码复杂性测量、可维护性评估
- 智能优先级排序器:AI驱动的优先级库(集成到其他服务器中)
发展
可用脚本
# Build all packages
npm run build
# Build shared packages first, then servers
npm run build:shared
npm run build:servers
# Run tests across all packages
npm test
# Run linting
npm run lint
# Run type checking
npm run type-check
# Clean all packages
npm run clean项目结构
mcp-code-analysis-server/
├── packages/
│ ├── static-analysis-server/ # Static code analysis MCP server
│ │ ├── src/
│ │ ├── dist/
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── dependency-analysis-server/ # Dependency analysis MCP server
│ │ ├── src/
│ │ ├── dist/
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── complexity-analyzer-server/ # Complexity analysis MCP server
│ │ ├── src/
│ │ ├── dist/
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── intelligent-prioritizer/ # AI prioritization library
│ │ ├── src/
│ │ ├── dist/
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── combined-reporting/ # Combined analysis reporting
│ │ └── src/
│ ├── context-aware-analysis/ # Context-aware analysis engine
│ │ └── src/
│ ├── knowledge-base/ # Knowledge base service
│ │ └── src/
│ ├── progressive-disclosure/ # Progressive disclosure service
│ │ └── src/
│ ├── quality-dashboard/ # Quality dashboard service
│ │ └── src/
│ ├── team-preference-learning/ # Team preference learning
│ │ └── src/
│ ├── shared-cache/ # Shared caching utilities
│ │ ├── src/
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── shared-communication/ # Shared communication utilities
│ │ ├── src/
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── shared-config/ # Shared configuration utilities
│ │ ├── src/
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── shared-logger/ # Shared logging utilities
│ │ ├── src/
│ │ ├── package.json
│ │ └── tsconfig.json
│ ├── shared-plugins/ # Shared plugin system
│ │ ├── src/
│ │ ├── package.json
│ │ └── tsconfig.json
│ └── shared-types/ # Shared type definitions
│ ├── src/
│ ├── package.json
│ └── tsconfig.json
├── docker/ # Docker configurations
│ ├── complexity-analyzer.Dockerfile
│ ├── dependency-analysis.Dockerfile
│ └── static-analysis.Dockerfile
├── docker-compose.yml
├── jest.config.js # Test configuration
├── tsconfig.json # TypeScript configuration
├── package.json # Workspace configuration
├── mcp.json # MCP configuration
├── README.md
├── LICENSE
├── CHANGELOG.md
└── mcp_instructions.md建筑
该项目使用具有共享包的monorepo结构:
- 共享包:常见实用程序、类型和配置
- 服务器软件包:具有特定功能的单个MCP服务器
- 库软件包:可重复使用的库(例如智能优先级排序器)
- 分析包:专业分析组件
## Development
### Available Scripts
Build all packages
npm run build
Run all tests
npm run test
Run linting
npm run lint
Type checking
npm run type-check
Development mode
npm run dev
Clean build artifacts
npm run clean
### 测试
运行所有测试:
npm test
### 代码质量
该项目使用多种工具来维护代码质量:
- **ESLint**:JavaScript/TypeScript linting
- **更漂亮**:代码格式
- **开玩笑**:单元测试
- **TypeScript**:类型检查
## 码头工人
使用Docker构建和运行:
Build images
docker build -t mcp-code-analysis/static-analysis-server -f docker/static-analysis.Dockerfile . docker build -t mcp-code-analysis/dependency-analysis-server -f docker/dependency-analysis.Dockerfile . docker build -t mcp-code-analysis/complexity-analyzer-server -f docker/complexity-analyzer.Dockerfile . docker build -t mcp-code-analysis/intelligent-prioritizer -f docker/intelligent-prioritizer.Dockerfile .
Run containers
docker run mcp-code-analysis/static-analysis-server docker run mcp-code-analysis/dependency-analysis-server docker run mcp-code-analysis/complexity-analyzer-server docker run mcp-code-analysis/intelligent-prioritizer
或者使用docker compose:
docker-compose up
## 发布说明
### 版本1.0.1(2025-09-10)
**🎉 首次生产发布**
这是MCP代码分析和质量服务器的第一个生产就绪版本,通过三个集成的MCP服务器提供全面的代码分析功能。
#### 新增功能
- **静态分析服务器**:多语言代码质量和安全分析
- **依赖性分析服务器**:完整的依赖关系管理和安全扫描
- **复杂性分析器服务器**:高级代码复杂性评估
- **智能优先级排序器**:通过团队学习进行明智的问题优先级排序
- **共享基础设施**:强大的缓存、通信和配置系统
#### 主要特点
- ✅ 具有严格类型的完整TypeScript实现
- ✅ 多语言支持(JavaScript、TypeScript、Python、Java、C++、Go、Rust)
- ✅ 所有服务器的Docker容器化
- ✅ MCP协议合规性
- ✅ 全面的测试框架设置
- ✅ 具有自动修复功能的ESLint配置
#### 已知项目
- 一些ESLint警告仍然存在(将在未来的补丁中解决)
- 测试覆盖范围将在即将发布的版本中扩大
- 文档示例有待增强
#### 开发设置
git clone cd mcp-code-analysis-server npm install npm run build
## 许可证
此项目根据MIT许可证获得许可-请参阅 [许可证](LICENSE) 文件以获取详细信息。
## 致谢
- [模型上下文协议](https://modelcontextprotocol.io/) 对于底层协议