
Dependency Context

2025.05.07
1
TypeScript依赖管理文档搜索开发辅助开发效率
Dependency Context 是一个 MCP 服务器,旨在为 AI 助手提供对项目依赖文档的上下文访问,从而能够更准确地回答关于代码库中使用的库和框架的问题。它通过索引项目的依赖文档并支持语义搜索,帮助开发者快速获取相关依赖的文档信息。
View on GitHub
Overview
基本能力
产品定位
Dependency Context 是一个专注于为开发者提供项目依赖文档上下文访问的工具,旨在提升开发效率和代码理解能力。
核心功能
- 依赖索引初始化(InitializeDependencyIndex):分析项目的依赖关系并创建可搜索的文档索引。
- 依赖文档搜索(searchDependencyDocs):通过语义搜索从索引的依赖文档中获取相关信息。
- 多语言支持:支持从
package.json
(Node.js)和requirements.txt
(Python)等文件中解析依赖。 - 自定义配置:支持通过
dependency-context.json
文件自定义需要索引的依赖。 - 语义搜索:使用本地嵌入模型(如 Xenova/all-MiniLM-L6-v2)进行文档的语义搜索。
适用场景
- 开发辅助:在编写代码时快速获取依赖库的使用方法和文档。
- 代码审查:帮助审查代码时理解第三方库的功能和最佳实践。
- 学习新库:快速了解项目中新引入的库的功能和用法。
- 故障排查:查找依赖库中可能的问题和解决方案。
工具列表
- InitializeDependencyIndex:初始化依赖索引,支持自定义依赖文件和环境变量配置。
- searchDependencyDocs:执行语义搜索,返回最相关的文档片段和来源信息。
常见问题解答
- GitHub API 速率限制:通过设置
GITHUB_TOKEN
环境变量提高 API 调用限制。 - 空搜索结果:检查索引是否完成,查询是否相关,或尝试更通用的查询。
- 权限问题:确保服务器对项目目录有读写权限。
使用教程
使用依赖
- 确保已安装 Node.js 和 npm。
- 可选:创建 GitHub 个人访问令牌以解决 API 速率限制问题。
安装教程
- 在项目根目录创建
dependency-context.json
文件(推荐)或使用package.json
/requirements.txt
。 - 在编辑器中添加 MCP 配置(以 Cursor 为例):
{
"mcpServers": {
"dependency-context": {
"command": "npx",
"args": ["-y", "--package=dependency-context", "dependency-context"],
"env": {
"GITHUB_TOKEN": "YOUR_GITHUB_TOKEN_HERE",
"MODEL_NAME": "Xenova/all-MiniLM-L6-v2"
}
}
}
}
- 启用 MCP 并初始化依赖上下文。
调试方式
- 运行测试:
npm test
- 手动测试:
npx fastmcp dev src/index.ts
- 初始化索引和搜索文档:
tool(InitializeDependencyIndex)
tool(searchDependencyDocs)