CodeLens MCP
一个MCP服务器,为Claude Desktop提供有关任何公共GitHub存储库的完整情报。研究库、比较包、审计依赖关系,并通过自然对话探索代码库。
______________________________________________________________________
它做什么
大多数开发人员浪费时间在GitHub、npm、PyPI和文档选项卡之间切换,只是为了评估一个库。CodeLens将所有这些整合到一个克劳德桌面对话中。
问这样的问题:
- *“moment.js还值得使用吗?”*
- *“比较新节点项目的express和fastify”*
- *“身份验证在tiangolo/fastapi中是如何工作的?”*
- *“此仓库中是否有未维护的依赖项?”*
- *“有什么好的替代axios的方法吗?”*
- *“请对托盘/烧瓶进行全面审核”*
每个答案都是从GitHub和Libraries.io上实时提取的。
______________________________________________________________________
需求
- Python 3.11+
- 克劳德桌面版
- GitHub个人访问令牌(免费)
- Libraries.io API密钥(免费)
______________________________________________________________________
安装
1.克隆仓库
git clone https://github.com/Yashkashte5/Codelens-MCP
cd Codelens-MCP2.安装依赖项
pip install -r requirements.txt3.获取API密钥
GitHub代币
- 转到github→ 设置→ 开发人员设置→ 个人访问令牌→ 代币(经典)
- 生成新令牌,为其命名,检查
repo和read:org - 复制令牌
Libraries.io密钥
- 首选 图书馆.io/账户
- 注册并复制您的API密钥
4.配置克劳德桌面
编辑您的Claude Desktop配置文件:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - 窗户:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"codelens-mcp": {
"command": "python",
"args": ["C:\\path\\to\\Codelens-MCP\\server.py"],
"env": {
"GITHUB_TOKEN": "your_github_token_here",
"LIBRARIES_IO_API_KEY": "your_libraries_io_key_here",
"PYTHONPATH": "C:\\path\\to\\Codelens-MCP"
}
}
}
}重新启动克劳德桌面。CodeLens将出现在您的连接器中。
______________________________________________________________________
文件结构
Codelens-MCP/
├── server.py — MCP entry point, all tools registered
├── github.py — GitHub API client
├── tools/
│ ├── codebase.py — repo exploration tools
│ ├── packages.py — Libraries.io package tools
│ └── combined.py — audit, summary, and compare tools
├── demo/ — demo GIFs for all tools
├── requirements.txt
└── .env______________________________________________________________________
工具
tool_ask_repo
回答有关任何GitHub仓库的自然语言问题。实时搜索并获取具有精确文件引用的相关代码。
______________________________________________________________________
工具搜索代码
在仓库中搜索特定的代码模式。可选择按语言过滤。
______________________________________________________________________
tool_getfile
从任何公共GitHub仓库获取任何文件的完整内容。
______________________________________________________________________
工具列表文件
列出GitHub存储库中的所有文件,并可选择扩展名过滤。
______________________________________________________________________
tool_search_packages
在Libraries.io中搜索跨任何平台的包——npm、pypi、cargo等。
______________________________________________________________________
tool_get-package_info
获取特定软件包的详细信息——版本、星级、贡献者、维护状态。
______________________________________________________________________
tool_check_dependency
直接从GitHub仓库获取包文件,并审核每个依赖项的健康和维护状态。
______________________________________________________________________
tool_find_备选方案
找到替代包来替换给定的依赖关系,按星级和维护进行排名。
______________________________________________________________________
tool_repo_summary
任何GitHub仓库的高级摘要——目的、结构、技术和依赖关系健康。
______________________________________________________________________
tool_audit_repo
在一次调用中结合代码概述和依赖关系健康报告的完整仓库审计。
______________________________________________________________________
工具比较
并排比较两个GitHub存储库或包。自动检测输入是转发还是包,并相应地命中正确的API。
______________________________________________________________________
技术栈
| 图层 | 工具 |
|---|---|
| 界面 | 克劳德桌面 |
| MCP-SDK | mcp Python SDK |
| 代码搜索 | GitHub代码搜索API |
| 包数据 | Libraries.io API |
| 语言 | Python 3.11+ |
______________________________________________________________________
限制
- GitHub API:5000个请求/小时,带有令牌
- Libraries.io免费层:60个请求/分钟
- 仅适用于公共GitHub存储库
______________________________________________________________________
许可证
麻省理工学院
