依赖分析服务

DepFinder MCP Server 是一个用于分析项目依赖关系并确保跨编程语言和生态系统的兼容性的模型上下文协议(MCP)服务器。

  • by Dhiaelhak-Rached
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 Dhiaelhak-Rached/DepFinder-MCP

使用说明

DepFinder MCP服务器

一个模型上下文协议(MCP)服务器,用于分析项目依赖关系并确保跨不同编程语言和生态系统的兼容性。

特性

  • 语言检测:从项目文件中自动检测编程语言和运行时版本
  • 依赖关系提取:从各种包管理器中提取并列出所有依赖项
  • 版本兼容性:查找特定依赖项的兼容版本
  • 需求生成:生成具有兼容依赖关系的需求文件
  • 兼容性验证:验证多个依赖项之间的兼容性

安装

  1. 克隆此存储库
  2. 安装依赖项:
    npm install
    

用法

发展

# Run in development mode
npm run dev

# Build the project
npm run build

# Start the built server
npm start

测试

# Run tests
npm test

# Run tests in watch mode
npm run test:watch

# Run tests with coverage
npm run test:coverage

代码质量

# Lint and fix code
npm run lint

# Format code
npm run format

MCP工具

get_language_info

从项目文件中检测编程语言和运行时版本。

参数:

  • projectPath (string,必填):项目目录的路径

退货:

  • language (string):检测到的编程语言
  • runtimeVersion (string):运行时的版本
  • framework (字符串,可选):检测到框架(如果有)

get_dependency

从项目文件中提取并列出所有依赖项。

参数:

  • projectPath (string,必填):项目目录的路径

退货:

  • dependencies (array):包含名称和版本的依赖关系列表
  • devDependencies (array):开发依赖关系列表
  • packageManager (string):检测到包管理器

搜索兼容版本

查找给定依赖项的兼容版本。

参数:

  • packageName (string,必填):要搜索的包的名称
  • currentVersion (字符串,可选):包的当前版本
  • language (字符串,必填):编程语言/运行时

退货:

  • compatibleVersions (array):兼容版本列表
  • recommendedVersion (string):推荐使用的版本

发电机要求

生成具有兼容依赖关系的需求文件。

参数:

  • projectPath (string,必填):项目目录的路径
  • outputPath (string,可选):保存需求文件的路径

退货:

  • filePath (string):生成的需求文件的路径
  • dependenciesCount (number):包含的依赖项数量

验证兼容性

验证依赖关系之间的兼容性。

参数:

  • dependencies (数组,必填):要验证的依赖关系列表
  • language (字符串,必填):编程语言/运行时

退货:

  • isCompatible (boolean):依赖关系是否兼容
  • conflicts (array):兼容性冲突列表(如果有的话)
  • recommendations (array):解决冲突的建议

建筑

DepFinder_MCP/
├── mcp/
│   ├── tools/
│   │   ├── get_language_info/
│   │   ├── get_dependencies/
│   │   ├── search_compatible_versions/
│   │   ├── generate_requirements/
│   │   └── verify_compatibility/
│   ├── utils/
│   └── cache/
├── src/
│   └── index.ts
├── tests/
├── output/
└── README.md

贡献

  1. 分叉存储库
  2. 创建要素分支
  3. 进行更改
  4. 添加新功能的测试
  5. 确保所有测试通过
  6. 提交拉取请求

许可证

国际协调委员会