Token导航 LogoToken导航TokenDH.com
Badger Graph logo
开发工具stdio官方级别未说明来源级核验

Badger Graph

MCP Server

Badger是一款代码图数据库,通过模型上下文协议(MCP)索引代码库并提供强大的查询工具,支持C和Python代码库。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
代码分析开发工具PythonCursor搜索Cursor

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

floydw1234

提供方

floydw1234

最后核验

2026/5/17 20:21

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv venv

详细介绍

MCP的Badger代码图数据库

Badger是一个代码图数据库,它为您的代码库建立索引,并通过模型上下文协议(MCP)提供强大的查询工具。它支持C和Python代码库。

快速开始

1.克隆存储库

git clone 
cd badger

2.安装依赖项

cd cli
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -r requirements.txt
pip install -e .

3.初始化图形数据库

此命令将:

  • 检查Docker是否已安装并正在运行
  • 启动本地Dgraph容器(默认值:http://localhost:8080)
  • 设置GraphQL架构
  • 将配置保存到 .badgerrc
badger init_graph

对于远程服务器,请使用:

badger init_graph --endpoint http://remote-server:8080

先决条件: 必须安装Docker。从以下地址获取https://docs.docker.com/get-docker/

注: 默认情况下,Badger使用本地Dgraph端点。端点已保存到 .badgerrc 并由所有命令自动使用。

4.索引您的代码库

badger index

这将:

  • 解析当前目录中的所有源文件
  • 提取函数、类、导入、关系
  • 将所有内容存储在图形数据库中

5.在光标中设置MCP

badger mcp

此命令将:

  • 显示分步说明
  • 为Cursor生成JSON配置
  • 将配置保存到 .badger-mcp-config.json 便于复制

然后:

  1. 打开光标设置(Cmd/Ctrl+,)
  2. 搜索“MCP”或转到扩展→ MCP
  3. 添加如下所示的JSON配置 badger mcp
  4. 重新启动游标

命令

所有命令都使用来自的本地Dgraph端点 .badgerrc 默认情况下。你可以用以下命令覆盖它 --endpoint 大多数命令上的选项。

badger init_graph

初始化图形数据库(Dgraph)。默认情况下,启动本地Dgraph容器。

badger init_graph [--endpoint URL] [--compose-file PATH] [--skip-docker]

选项:

  • --endpoint:Dgraph端点URL(默认值:http://localhost:8080对于本地Docker容器)
  • --compose-file:docker-compose.yml的路径(默认值: dgraph/docker-compose.yml)
  • --skip-docker:跳过Docker设置,只需配置端点

它的作用:

  1. 检查Docker是否已安装并正在运行
  2. 使用docker compose启动Dgraph(从 dgraph/docker-compose.yml)
  3. 设置GraphQL架构
  4. 将配置保存到 .badgerrc

示例:

  • 本地(默认): badger init_graph
  • 远程服务器: badger init_graph --endpoint http://remote-server:8080 --skip-docker
  • 自定义编写文件: badger init_graph --compose-file /path/to/docker-compose.yml

数据持久性:

  • 数据会自动持久化到 dgraph/dgraph-data/ 在您的项目目录中
  • 数据在容器停止/重新启动时持续存在
  • 使用 badger stop_graph 停止容器(数据保留)
  • 使用 badger start_graph 重新启动容器

badger index

为代码库建立索引并将其存储在图形数据库中。使用来自的本地终结点 .badgerrc 默认情况下。

badger index [directory] [--language python|c] [--endpoint URL] [--verbose]

选项:

  • directory:要索引的目录(默认:当前目录)
  • --language:要解析的语言(python、c)。如果未指定,则自动检测
  • --endpoint:覆盖图形数据库端点(默认值:从本地 .badgerrc 或http://localhost:8080)
  • --verbose:启用详细输出

示例:

  • 使用本地终结点: badger index
  • 使用远程终结点: badger index --endpoint http://remote-server:8080

badger mcp

显示光标的MCP设置说明和配置。

badger mcp [--workspace PATH] [--endpoint URL]

选项:

  • --workspace:工作区路径(默认:当前目录)
  • --endpoint:Dgraph端点URL

此命令:

  • 显示分步设置说明
  • 为Cursor生成JSON配置
  • 将配置保存到 .badger-mcp-config.json 便于复制

badger mcp-server

手动启动MCP服务器(通常由Cursor自动调用)。

badger mcp-server [--endpoint URL] [--workspace PATH] [--auto-index] [--verbose]

选项:

  • --endpoint:图形数据库端点URL(默认值:本地 .badgerrc 或http://localhost:8080)
  • --workspace:工作区/代码库根目录的路径(默认:当前目录)
  • --auto-index:启动时启用自动索引
  • --verbose:启用详细日志记录

注: 配置后,此命令通常由Cursor自动调用。您可以手动运行它进行测试。

badger stats

显示图形数据库中的节点计数。使用来自的本地终结点 .badgerrc 默认情况下。

badger stats [--endpoint URL]

badger clear

清除图形数据库中的所有数据。使用来自的本地终结点 .badgerrc 默认情况下。

badger clear [--endpoint URL] [--yes]

警告: 这将删除所有节点和关系!

badger stop_graph

使用docker compose停止本地Dgraph容器。数据被保留。

badger stop_graph [--compose-file PATH]

选项:

  • --compose-file:docker-compose.yml的路径(默认值: dgraph/docker-compose.yml)

注: 这将停止容器,但保留所有数据。数据存储在 dgraph/dgraph-data 并且在停止/重新启动期间持续存在。

badger start_graph

使用docker compose启动之前停止的Dgraph容器。所有数据均已保存。

badger start_graph [--compose-file PATH]

选项:

  • --compose-file:docker-compose.yml的路径(默认值: dgraph/docker-compose.yml)

注: 这将启动之前停止的容器。所有数据都保留了容器上次运行时的数据。

badger status_graph

显示本地Dgraph容器的状态。

badger status_graph [--compose-file PATH]

选项:

  • --compose-file:docker-compose.yml的路径(默认值: dgraph/docker-compose.yml)

显示容器是正在运行、停止还是退出。

数据持久层

它是如何工作的:

  • 当你奔跑时 badger init_graphDocker Compose创建了一个映射 dgraph/dgraph-data//dgraph 在容器中
  • 所有Dgraph数据都存储在 dgraph/dgraph-data/ 在您的项目目录中
  • 数据持续存在于:

- 容器停止/重新启动 - 系统重新启动(容器自动重新启动 restart: unless-stopped) - 容器删除(只要不删除 dgraph/dgraph-data/)

生命周期:

  1. badger init_graph -使用docker compose创建具有持久卷的容器
  2. badger index -索引代码库,数据保存到 dgraph/dgraph-data/
  3. badger stop_graph -停止容器,数据保留在 dgraph/dgraph-data/
  4. badger start_graph -重新启动容器,从加载数据 dgraph/dgraph-data/
  5. badger status_graph -检查集装箱是否正在运行

要完全删除数据,请执行以下操作:

badger stop_graph
rm -rf dgraph/dgraph-data

特性

  • 多语言支持Python和C/C++++
  • 丰富的代码分析:函数、类、导入、宏、typedef、struct字段访问
  • 关系跟踪:函数调用、继承、导入/包含
  • 语义搜索:用于自然语言查询的向量嵌入
  • MCP集成:与Cursor和其他MCP兼容工具无缝协作

配置

配置存储在 .badgerrc 在您的项目目录中:

graphdb_endpoint: http://localhost:8080
language: python  # optional
verbose: false

您还可以使用以下命令设置环境变量 BADGER_ 前缀:

  • BADGER_GRAPHDB_ENDPOINT
  • BADGER_LANGUAGE
  • BADGER_VERBOSE

MCP工具

Badger提供以下MCP工具:

  • find_symbol_usages -查找符号的所有用法(函数、宏、变量、结构、typedef)
  • get_function_callers -查找函数的所有调用者
  • get_include_dependencies -获取导入/包含文件的文件
  • find_struct_field_access -查找结构体字段访问(仅限C)
  • check_affected_files -查找受更改影响的文件
  • semantic_code_search -按语义搜索代码

发展

Developpent.md 用于开发设置和贡献指南。

许可证

\[您的许可证在这里\]

目录标签

目录标签

代码分析开发工具PythonCursor搜索本地部署图数据库语义搜索MCP集成

支持客户端

Cursor

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

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

来源信息

继续浏览同类 MCP