代码导航服务

BigParse是一个MCP服务器,为Claude和其他LLM提供即时、智能的代码库访问能力,支持快速搜索、符号提取和多语言代码分析。

  • by agentbrazley
  • TypeScript
  • 本地部署
  • 17 星标
  • 更新于
在 GitHub 查看 agentbrazley/bigparse

使用说明

BigParse🚀

MCP(模型上下文协议)服务器,使Claude和其他LLM能够即时、智能地访问您的代码库。把它想象成“给你的LLM一个代码的GPS”——BigParse让LLM高效地导航和搜索你的代码库,而不是读取每个文件。

为什么选择BigParse?

问题

如果没有BigParse,当你问Claude你的代码时:

  • 您手动粘贴文件(使用大量上下文)
  • 克劳德必须从头开始解析一切
  • 仅限于适合上下文窗口的内容
  • 无法在大型代码库中搜索

解决方案

使用BigParse,克劳德可以:

  • 立即搜索整个代码库
  • 导航到确切的文件位置和行号
  • 无需读取每个文件即可理解代码结构
  • 使用任何大小的代码库

特性✨

  • ⚡ 闪电般快速的代码搜索 -在毫秒内对整个代码库进行基于正则表达式的搜索
  • 🔍 智能符号提取 -使用语言服务器协议提取类、函数和接口
  • 💾 智能缓存 -通过智能缓存,重新索引的速度提高了1000倍以上
  • 🌐 多语言支持 -TypeScript、JavaScript、Python、Rust、Go、Dart/Flutter等
  • 🔒 安全的子流程处理 -通过命令验证安全安装语言服务器
  • 🤖 MCP集成 -与Claude Desktop和Claude Code无缝协作
  • 📊 性能指标 -查看BigParse的运行速度

安装

选项1:克劳德桌面(自动更新)

  1. 添加到Claude桌面配置:

    # macOS
    open ~/Library/Application\ Support/Claude/claude_desktop_config.json
    
    # Windows
    notepad %APPDATA%\Claude\claude_desktop_config.json
    
    # Linux
    nano ~/.config/Claude/claude_desktop_config.json
    
  2. 将BigParse添加到 mcpServers 章节:

    {
      "mcpServers": {
        "BigParse": {
          "command": "npx",
          "args": ["bigparse"],
          "env": {
            "WORKSPACE_ROOT": "/path/to/your/projects"
          }
        }
      }
    }
    
  3. 替换 /path/to/your/projects 使用要分析的目录

  4. 重新启动克劳德桌面

益处:

  • ✅ 始终运行最新版本
  • ✅ 无需安装
  • ✅ 无手动更新
  • ✅ 适用于所有平台

选项2:Claude代码命令行界面

先决条件

  • Node.js 16+
  • npm或纱线

快速开始

  1. 克隆存储库:
git clone https://github.com/agentbrazley/BigParse.git
cd BigParse
  1. 安装依赖项:
npm install
  1. 构建项目:
npm run build
  1. 克劳德代码安装:
./scripts/install-for-claude.sh

或手动:

claude mcp add bigparse "node" "$(pwd)/dist/index.js"

语言服务器支持

要获得增强功能,请安装语言服务器:

# TypeScript/JavaScript
npm install -g typescript-language-server typescript

# Python
pip install python-lsp-server

# Rust
rustup component add rust-analyzer

# Go
go install golang.org/x/tools/gopls@latest

# Dart/Flutter
# Included with Flutter SDK

运作原理

BigParse为你的代码库创建了一个可搜索的索引,LLM可以有效地查询:

  1. 索引:扫描代码库并提取符号,创建可搜索的映射
  2. 缓存:存储结果以便在后续查询中即时访问
  3. 搜索:使用优化的正则表达式搜索和文件类型过滤
  4. LSP集成:利用语言服务器进行精确的符号提取

性能示例

没有BigParse:

  • Claude:“请共享您的WebSocket文件”
  • 你: 粘贴多个大文件
  • 使用的上下文:5000多个令牌

使用BigParse:

  • 克劳德: 搜索“WebSocket”
  • 具有精确位置的即时结果
  • 使用的上下文:约50个令牌

用法

安装后,BigParse工具在Claude中自动可用。只要问:

  • “搜索此项目中的所有React组件”
  • “查找WebSocket处理程序的定义位置”
  • “显示所有TypeScript接口”
  • “这个代码库的结构是什么?”

设置工作区

克劳德桌面

要更改工作区目录,请编辑Claude Desktop配置文件并更新 WORKSPACE_ROOT 环境变量:

{
  "mcpServers": {
    "BigParse": {
      "command": "node",
      "args": ["/path/to/BigParse/dist/index.js"],
      "env": {
        "WORKSPACE_ROOT": "/new/project/path"
      }
    }
  }
}

然后重新启动Claude Desktop。

克劳德代码CLI

默认情况下,BigParse使用当前目录。要分析特定项目,请执行以下操作:

# Using the helper script
./scripts/update-workspace.sh /path/to/your/project

# Or with environment variable
claude mcp remove bigparse -s local
claude mcp add bigparse "node" "/path/to/BigParse/dist/index.js" --env "WORKSPACE_ROOT=/path/to/project"

可用工具

|工具|说明|示例| |------|-------------|---------|| | index_codebase |索引项目文件以进行搜索|“索引此TypeScript项目”| | search_code |使用正则表达式模式搜索|“查找所有异步函数”| | get_symbols |从文件中提取符号|“在main.ts中显示符号”| | find_references |查找对符号的所有引用|“查找WebSocketClient的所有用法”| | go_to_definition |跳转到符号定义|“转到handleMessage的定义”| | check_language_servers |检查已安装的LSP |“安装了哪些语言服务器?”| | install_language_server |安装语言服务器|“安装TypeScript语言服务器”|

配置

支持的语言

  • Types/JavaScript(.ts, .tsx, .js, .jsx)
  • python.py)
  • 生锈(.rs)
  • 去吧(.go)
  • Java.java)
  • C.cs)
  • C/C++(.c, .cpp, .h)
  • 红宝石(.rb)
  • PHP(.php)
  • Swift(.swift)
  • 飞镖(.dart)

缓存位置

BigParse将其缓存存储在 .bigparse/ 在您的项目目录中。将此添加到 .gitignore:

.bigparse/

发展

从源头构建

# Install dependencies
npm install

# Build TypeScript
npm run build

# Run tests
npm test

项目结构

BigParse/
├── src/                    # TypeScript source files
│   ├── index.ts           # MCP server entry point
│   ├── lsp/               # Language Server Protocol integration
│   ├── indexing/          # Code indexing and caching
│   ├── tools/             # MCP tool definitions
│   └── subprocess/        # Secure subprocess handling
├── dist/                  # Compiled JavaScript
├── config/                # Language configurations
└── scripts/               # Helper scripts

贡献

我们欢迎捐款!请看 贡献.md 作为指导方针。

安全

BigParse包含安全功能,可以安全地处理子流程命令:

  • 语言服务器安装的命令白名单
  • 模式检测以防止命令注入
  • 验证所有子流程操作

故障排除

BigParse未在Claude中显示

# Check if installed
claude mcp list

# Reinstall if needed
./install-for-claude.sh

语言服务器不工作

# Check installed servers
claude mcp get bigparse
# Then ask Claude to use check_language_servers tool

缓存问题

# Clear cache
rm -rf .bigparse/

许可证

MIT许可证-请参阅 许可证 文件

鸣谢

由...创建 AI 发射 (2025)

支持


由以下材料制成❤️ 为克劳德社区