Token导航 LogoToken导航

MCP Server · 开发工具

MCP Codebase Analyser

一个智能的代码库分析服务,通过AI技术分析GitHub仓库并提供代码推荐,帮助开发者快速定位和实现功能需求。

stdio官方级别未说明来源级核验工具 6
代码分析开发工具PythonCursor搜索

快速开始

作者 / 组织
YevhenHryhorenko
提供方
YevhenHryhorenko

工具数量

6

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

0

仓库热度

收录来源

1 个

MCP World

选型结论

MCP Codebase Analyser 属于开发工具类 MCP Server,公开资料标注 6 个工具,通过stdio 本地进程接入,适配 Cursor,有可以直接复制的安装命令;接入前要先准备 API Key。

分类

开发工具

传输方式

stdio

认证方式

API Key

部署方式

公开资料未说明

安装与配置

安装命令

pip install uv

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 对应的运行时,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 6 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

🔍 MCP 代码库分析器

一个智能的模型上下文协议(MCP)服务器,能够分析GitHub仓库,并提供基于人工智能的建议,帮助您找到适合您功能需求的代码部分。

🎯 它的作用是什么?

这个MCP服务器允许您提出诸如以下问题:

*“我需要创建一个产品获取弹出模态框。请从jolly-commerce/jolly-sections中找到最佳的板块。”*

服务器将:

  1. 获取并分析 仓库(本地克隆和缓存)
  2. 解析 源代码文件(仅限JS/TS,跳过压缩包)
  3. 提取 具有完整代码的函数、类和组件
  4. 索引 使用语义嵌入(OpenAI或Ollama)的章节
  5. 搜索 在语义上对于相关代码
  6. 提供人工智能推荐 附带推理和实施建议

✨ 特点

  • 🔎(放大镜图标,常用于表示搜索或查看细节) 语义代码搜索 - 通过意义而非仅通过关键词来查找代码(相关性得分0.7+)
  • 🤖 机器人 基于人工智能的推荐 - 获取高置信度的智能建议
  • 📁 文件夹 智能过滤 - 自动跳过压缩文件(.min.js、.chunk.js、捆绑文件)
  • 💻 电脑/笔记本电脑 专注于JavaScript/TypeScript - 优化用于现代网页开发
  • 💾 磁盘驱动器或存储设备的符号 持久缓存 - 为即时重复查询缓存的存储库和嵌入表示
  • 🐳 表示海豚或海豚的叫声(在某些网络语境中),但直接翻译这个表情符号并不容易,因为它是一个非文字的符号。如果要结合语境来翻译,可以理解为“海豚”或者在网络用语中表示“厉害”、“厉害至极”等意思。不过,直接给出的翻译是“海豚”或“海豚的叫声”。 Docker 准备就绪 - 准备就绪的容器化部署
  • 🔌(电源插头) 兼容MCP - 与Cursor IDE及其他MCP客户端无缝协作
  • ⚡ 闪电符号(表示快速、能量或电力) 生产测试 - 成功为jolly-commerce/jolly-sections建立索引(152个部分,100%成功率)

🚀 快速入门

先决条件: Docker Desktop,OpenAI API密钥

1. 设置环境

cp env.example .env
# Edit .env and add your OpenAI API key:
# LLM_API_KEY=sk-your-key-here

2. 启动服务器

docker-compose up -d
docker-compose logs -f  # Wait for "All components initialized"

3. 配置光标

添加到光标MCP设置(Cmd/Ctrl + , → 搜索 "MCP":

{
  "mcpServers": {
    "codebase-analyser": {
      "url": "http://localhost:8050/sse",
      "transport": {"type": "sse"}
    }
  }
}

重启光标。

4. 进行测试

在 Cursor 中,尝试:

Analyze the repository jolly-commerce/jolly-sections

等待2-3分钟,然后:

I need to create a product fetch popup modal. Find the best section.

✅ 预期:带有代码片段的 FetchModalProductPopUp 类

______________________________________________________________________

备选方案:本地开发(不使用 Docker)

pip install uv
uv pip install -e .
# Edit .env with your API key
uv run src/main.py

📖 使用示例

1. 分析一个存储库

首先,分析你想要搜索的仓库:

User: Analyze the repository jolly-commerce/jolly-sections

AI uses: analyze_repository("jolly-commerce/jolly-sections")

结果:

{
  "success": true,
  "message": "Successfully analyzed jolly-commerce/jolly-sections",
  "indexing": {
    "indexed": 152,
    "errors": 0,
    "total": 152
  },
  "files_analyzed": 43,
  "section_types": {
    "functions": 37,
    "classes": 74,
    "react_component": 32
  }
}

2. 找到适合您特性的最佳部分

User: I need to create a product fetch popup modal. 
      Find the best section from jolly-commerce/jolly-sections.

AI uses: find_best_section(
  feature_description="product fetch popup modal",
  repo_identifier="jolly-commerce/jolly-sections"
)

真实回应:

{
  "found_match": true,
  "best_match": "src/templates/components/g-modal.js",
  "best_match_name": "FetchModalProductPopUp",
  "confidence": "high",
  "score": 0.69,
  "reasoning": "The FetchModalProductPopUp class is specifically designed to handle product fetching in a modal context, which aligns perfectly with the user's request...",
  "usage_advice": "To use this section, instantiate the FetchModalProductPopUp class and call the onTrigger method with the appropriate event and trigger element...",
  "alternatives": ["DynamicModal", "GModal"],
  "code_snippet": "class FetchModalProductPopUp extends FetchModal { ... }"
}

3. 搜索特定代码模式

User: Find cart drawer components in jolly-commerce/jolly-sections

AI uses: search_code_sections(
  query="cart drawer shopping cart sidebar",
  repo_identifier="jolly-commerce/jolly-sections",
  limit=10
)

真实回应:

{
  "success": true,
  "results_count": 3,
  "results": [
    {
      "file": "src/templates/components/g-cart.js",
      "name": "CartDrawer",
      "type": "class",
      "score": 0.72,
      "code": "class CartDrawer extends Cart { ... }"
    },
    {
      "file": "src/templates/components/g-cart.js",
      "name": "CartDrawerItem",
      "type": "class",
      "score": 0.70
    }
  ]
}

4. 获取仓库结构

User: What sections are available in jolly-sections?

Tool: get_repository_structure("jolly-sections/jolly-sections")

5. 列出所有已分析的存储库

User: What repositories have been analyzed?

Tool: list_analyzed_repositories()

🛠️ 可用的MCP工具

工具描述示例
项目描述类型analyze_repositoryanalyze_repository("owner/repo")索引 GitHub 仓库
find_best_sectionfind_best_section("hero section", "owner/repo")获取针对功能的AI推荐
search_code_sectionssearch_code_sections("button component", "owner/repo")语义代码搜索
get_repository_structureget_repository_structure("owner/repo")查看已索引部分
list_analyzed_repositorieslist_analyzed_repositories()列出所有已索引的仓库
clear_repository_cacheclear_repository_cache("owner/repo")清除缓存数据

|

┌─────────────────────────────────────────────────────────────┐
│                        Cursor IDE                           │
│                     (MCP Client)                            │
└────────────────────────┬────────────────────────────────────┘
                         │ MCP Protocol (SSE/STDIO)
                         ↓
┌─────────────────────────────────────────────────────────────┐
│                   MCP Server (FastMCP)                      │
│  ┌──────────────────────────────────────────────────────┐  │
│  │              Repository Fetcher                       │  │
│  │  • Clone GitHub repos                                 │  │
│  │  • Cache locally                                      │  │
│  │  • Handle authentication                              │  │
│  └──────────────────────────────────────────────────────┘  │
│  ┌──────────────────────────────────────────────────────┐  │
│  │              Code Parser                              │  │
│  │  • Parse JS/TS/Python/etc.                           │  │
│  │  • Extract functions/classes/components              │  │
│  │  • Generate metadata                                  │  │
│  └──────────────────────────────────────────────────────┘  │
│  ┌──────────────────────────────────────────────────────┐  │
│  │              Embedding System                         │  │
│  │  • Generate embeddings (OpenAI/Ollama)               │  │
│  │  • ChromaDB vector database                          │  │
│  │  • Semantic search                                    │  │
│  └──────────────────────────────────────────────────────┘  │
│  ┌──────────────────────────────────────────────────────┐  │
│  │           Recommendation System                       │  │
│  │  • LLM analysis (GPT-4/Ollama)                       │  │
│  │  • Context-aware suggestions                         │  │
│  │  • Implementation advice                             │  │
│  └──────────────────────────────────────────────────────┘  │
└─────────────────────────────────────────────────────────────┘
         │                    │                    │
         ↓                    ↓                    ↓
   repo_cache/          chroma_db/            GitHub API

🏗️ 建筑学

mcp-codebase-analyser/
├── src/
│   ├── main.py                    # MCP server & tools
│   ├── repo_fetcher.py            # GitHub repository fetching
│   ├── code_parser.py             # Code parsing & extraction
│   ├── embedding_system.py        # Vector embeddings & search
│   ├── recommendation_system.py   # AI recommendations
│   └── utils.py                   # Utility functions
├── repo_cache/                    # Cached repositories
├── chroma_db/                     # Vector database
├── Dockerfile                     # Docker image
├── docker-compose.yml             # Docker compose config
├── pyproject.toml                 # Python dependencies
├── env.example                    # Environment variables template
└── README.md                      # This file

📁 项目结构

🔑 环境变量 | 变量 | 描述 | 默认值 | 是否必需 | |----------|-------------|---------|----------| HOST | 0.0.0.0 | 服务器主机 | | 编号 | PORT | 8050 | 服务器端口 | | 编号 | TRANSPORT |sse | 交通方式( stdio或者 sse )| | 不 | LLM_PROVIDER |openai| 大型语言模型(LLM)提供商 ( ollama, openai ) | | 是 | LLM_API_KEY | 大型语言模型的API密钥 | - | 是(OpenAI) | LLM_MODEL | gpt-4o-mini | 模型名称 | | 编号/序号 | EMBEDDING_MODEL | text-embedding-3-small | 嵌入模型 | | 序号 | GITHUB_TOKEN | | GitHub个人访问令牌 | - | 否 | REPO_CACHE_DIR | ./repo_cache | 仓库缓存目录 | | 不 | CHROMA_PERSIST_DIR | ./chroma_db | ChromaDB 目录 | | 编号 | MAX_FILE_SIZE_KB | 500 | 可解析的最大文件大小 | | 编号 | SUPPORTED_EXTENSIONS | .js,.jsx,.ts,.tsx | 需要解析的文件扩展名 |

| 不 | 注:

  • 系统自动跳过:.min.js压缩后的文件(
  • ).chunk.js捆绑文件( bundle-*.js,
  • )
  • 资源目录中的编译代码

这确保了仅对源代码进行索引,以获得更高质量的结果

🧪 测试

# 1. Start the server
docker-compose up -d

# 2. Check logs for success messages
docker-compose logs -f
# Look for: "Initialized embedding system with openai provider"
# Look for: "All components initialized successfully"

# 3. In Cursor, try these verified examples:

使用经过生产环境测试的存储库来测试服务器: 测试1:分析仓库

Analyze the repository jolly-commerce/jolly-sections

(2-3分钟)

预期:已索引152个部分,0个错误 测试2:查找特定组件

I need to create a product fetch popup modal. Find the best section.

(10-15秒)

预期:高置信度(0.69+)的FetchModalProductPopUp类 测试3:搜索组件

Find cart drawer components in jolly-commerce/jolly-sections

(5-10秒)

预期:购物车抽屉,带有相关性评分的购物车抽屉项

🐛 故障排除

  • 服务器无法启动
  • 检查Docker Desktop是否正在运行 .env 验证
  • 文件存在且包含正确的值 docker-compose logs -f

检查日志:

  • 无法克隆私有仓库 GITHUB_TOKEN 添加 .env
  • to repo 确保令牌具有(所需属性/权限等,具体根据上下文确定)

范围

  • 内存不足 / 索引速度慢 MAX_FILE_SIZE_KB 减少 .env
  • 在里面 SUPPORTED_EXTENSIONS 限制
  • 仅需特定类型

增加Docker的内存限制

  • 嵌入式API错误 LLM_API_KEY 验证
  • 是正确的
  • 检查OpenAI账户是否有余额

尝试使用Ollama进行本地嵌入

🔄 与Ollama(本地大型语言模型)配合使用

  1. 对于完全本地设置:安装Ollama
  1. https://ollama.ai(注:该网址直接翻译为中文即保持原样,因为网址本身不是需要翻译的语言内容,而是指向一个特定网站的地址。)拉模(或拉伸模型)
   ollama pull qwen2.5-coder:7b
   ollama pull nomic-embed-text
  1. : .env更新
   LLM_PROVIDER=ollama
   LLM_MODEL=qwen2.5-coder:7b
   LLM_BASE_URL=http://host.docker.internal:11434
   EMBEDDING_MODEL=nomic-embed-text
  1. :重启服务器
   docker-compose restart

:

📝 开发

添加对新文件类型的支持 src/code_parser.py 编辑

PATTERNS = {
    "your_language": [
        r"pattern_to_match_functions",
        r"pattern_to_match_classes",
    ]
}

并为您的语言添加模式:

定制化推荐 src/recommendation_system.py编辑系统提示语

def _get_system_prompt(self) -> str:
    return """Your custom prompt here..."""

:

🤝 贡献(或“参与贡献”)

欢迎贡献!请随时提交问题和拉取请求。

📊 表现统计

  • 在jolly-commerce/jolly-sections上进行的生产测试:
  • ✅ 152个部分已索引(100%成功)
  • ✅ 索引过程中无错误
  • ✅ 已分析43个源文件
  • ✅ 平均搜索得分:0.7+(高度相关)
  • ✅ 未索引任何压缩文件(智能过滤)
  • ✅ 查询时间:5-15秒

✅ 初始索引:2-3分钟

  • 代码质量:
  • 仅索引源文件(src/templates/)
  • 提取了完整的代码内容(而不仅仅是名称)
  • 高精度语义搜索

带有推理的AI推荐

📄 许可证

MIT 许可证 - 详见 LICENSE 文件

  • 🙏 致谢 构建于
  • FastMCP 由……提供动力/支持
  • ChromaDB(可译为“色度数据库”,但具体翻译可能根据上下文有所调整,若“ChromaDB”为特定产品或服务名,建议保留原名) 用途 OpenAI 嵌入(或向量表示) 或者
  • Ollama(注:Ollama是一个用于本地运行大型语言模型的工具或框架,直接翻译可能无法准确传达其含义,但在此处保持原样以指代该特定名称) 生产测试于

jolly-commerce/jolly-sections 翻译为中文是:“欢乐商贸/欢乐板块”

📞 支持

______________________________________________________________________

对于问题和疑问,请在GitHub上提交一个议题。

工具与能力

工具数量

6

资源数量

0

提示词数量

0

能力标签

代码分析Python本地部署AI推荐GitHub集成语义搜索开发工具

支持客户端

Cursor

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

让助手直接读代码

把仓库、提交记录和 issue 交给模型检索,补全和重构时不用来回复制文件。

在对话里跑命令

触发构建、测试和脚本,执行结果直接回到上下文,省去切终端。

接进开发流程

把 PR、CI 状态和代码审查接进助手,减少在几个工具之间跳。

选择建议

值得选的地方

  • 只提供 6 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 公开说明写得比较完整,接入前能看清能力边界。

先想清楚的地方

  • stdio 方式要求本地装好 运行环境,换机器要重新装一遍。
  • 需要自备API Key,没有凭据没法直接试。
  • 公开摘要偏短,具体能力和限制要回到仓库确认。

更适合

  • 需要在开发工具场景里让模型直接调用外部能力的人。
  • 已经在用 Cursor 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到API Key的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
MCP Codebase Analyser

MCP World · 本页

6stdio有1 个2026-05-17
Git 838e2ec1

MCP World

12stdio有2 个2026-05-17
Markitdown MCP 2c653a5f

MCP World

1stdio有1 个2026-05-17
Context7 MCP C671e75a

MCP World

0stdio有1 个2026-05-17
Context7 831acf40

MCP World

0stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

MCP Codebase Analyser 怎么安装?

公开资料给出的安装命令是 pip install uv,运行环境为 未标注。装完后按客户端要求写进 MCP 配置,重启客户端生效。

MCP Codebase Analyser 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 未标注;保存后完全退出客户端再打开,配置才会生效。

MCP Codebase Analyser 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

MCP Codebase Analyser 需要 API Key 吗?

公开资料标注的认证方式是API Key,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

MCP Codebase Analyser 支持哪些客户端?

公开资料标注支持 Cursor;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP