MCP-Repo2LLM
概述
mcp-repo2llm是一个mcp服务器,它将代码存储库转换为LLM友好的格式。 一个强大的工具,可以将代码库转换为LLM友好的格式,弥合传统代码库和现代AI语言模型之间的差距。 此回购基于 RepoTextForLLMs,它提供了将存储库转换为LLM可读格式的核心功能。
动机
随着人工智能和大型语言模型(LLM)在软件开发中变得越来越重要,我们越来越需要将我们的代码库有效地传达给这些模型。传统的代码存储库没有针对LLM处理进行优化,这可能会导致在使用AI工具进行代码分析和生成时产生次优结果。
问题解决了
该项目解决了几个关键挑战:
- 使用LLM处理大型代码库的困难
- 向AI模型提供代码时失去上下文和结构
- 对存储库元数据和文档的处理效率低下
- 不同编程语言的格式不一致
主要特点
- 智能存储库扫描:智能地处理整个代码库,同时保持结构完整性
- 上下文保护:维护重要的上下文信息和代码文件之间的关系
- 多语言支持:通过特定于语言的优化处理各种编程语言
- 元数据增强:用相关元数据丰富代码,以便更好地理解LLM
- 有效处理:针对以最少的资源使用处理大型存储库进行了优化
安装
要通过uv安装mcp-repo2llm:
"mcp-repo2llm-server": {
"command": "uv",
"args": [
"run",
"--with",
"mcp[cli]",
"--with-editable",
"/mcp-repo2llm",
"mcp",
"run",
"/mcp-repo2llm/mcp-repo2llm-server.py"
],
"env":{
"GITHUB_TOKEN":"your-github-token",
"GITLAB_TOKEN":"your-gitlab-token"
}
}GITHUB_TOKEN:您的GITHUB代币 GITLAB_TOKEN:您的GITLAB代币
工具
get_gitlab_repo
- 处理并返回GitLab存储库分支中的代码作为文本
- 输入:
- repo_url(string):gitlab中的存储库url - branch(string):分支名称,默认为master
- 返回(字符串):项目以文本形式从存储库中获取所有信息和指令
get_github_repo
- 处理并返回来自Github存储库分支的代码作为文本
- 输入:
- repo_url(string):来自github的存储库url - branch(string):分支名称,默认为master
- 返回(字符串):项目以文本形式从存储库中获取所有信息和指令
get_local_repo
- 处理并返回GitLab存储库分支中的代码作为文本
- 输入:
- repo_url(字符串):存储库路径
- 返回(字符串):项目以文本形式从存储库中获取所有信息和指令
