Token导航 LogoToken导航TokenDH.com
bb MCP logo
AI代理未说明官方级别未说明来源级核验

bb MCP

MCP Server

bb-mcp是一个轻量级的MCP服务器,通过Babashka实现多路复用,允许多个Claude实例共享单个JVM资源,显著降低内存消耗。

工具数

6

提示词数

0

GitHub Stars

2

资源数

0
ClaudeAI代理工作流自动化Claude

安装说明

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

作者 / 组织

hive-agi

提供方

hive-agi

最后核验

2026/5/17 20:19

快速接入

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

详细介绍

bb mcp

Babashka中的轻量级MCP(模型上下文协议)服务器,通过nREPL将Claude代码连接到Emacs。

为什么选择bb-mcp?

问题: 运行多个Claude Code实例(例如,swarm代理),每个实例都有自己的基于JVM的MCP服务器,这会消耗大量资源。

解决方案: bb-mcp是一种轻量级 多路复用器 -许多Babashka实例共享一个JVM。

场景无bb-mcp有bb-mcp
1个克劳德~500MB~550MB(50MB bb+500MB JVM)
3个条款~1.5GB(3个JVM)~650MB (3个bb+1个JVM)
5个条款~2.5GB(5个JVM)~750MB (5 bb+1 JVM)
10个条款~5GB(10个JVM)~1GB (10 bb+1 JVM)

主要绩效指标

度量JVM配置单元mcpbb mcp
启动~2-3s~5ms
内存~500MB~50MB
扩展到1个实例许多实例

用例:Claude Swarm

当运行群代理(多个Claude并行工作)时,每个代理都需要一个到Emacs的MCP连接。如果没有bb-mcp,您将需要单独的JVM进程。使用bb-mcp:

  • 1个蜂窝mcp (JVM)处理Emacs集成
  • N bb mcp 实例(Babashka)多路复用到它
  • 所有代理通过单个JVM共享工具、内存、看板、git

建筑

                    bb-mcp Instances              Shared JVM
                    ┌──────────────┐
  Claude 1 ───────▶ │   bb-mcp     │──┐
                    └──────────────┘  │
                    ┌──────────────┐  │     ┌─────────────────┐
  Claude 2 ───────▶ │   bb-mcp     │──┼────▶│   hive-mcp     │
                    └──────────────┘  │     │   (nREPL:7910)  │
                    ┌──────────────┐  │     └────────┬────────┘
  Claude 3 ───────▶ │   bb-mcp     │──┘              │
                    └──────────────┘                 ▼
                       ~50MB each              ┌─────────────┐
                                               │    Emacs    │
                                               └─────────────┘

数据流:

  1. Claude Code通过mcp协议(stdio)连接到bb-mcp
  2. bb-mcp直接处理本机工具(bash、grep、文件操作系统)
  3. Emacs相关工具通过端口7910上的nREPL委托给hive-mcp
  4. hive mcp通过emacsclient在Emacs中执行elisp

先决条件

安装

# Clone the repository
git clone https://github.com/BuddhiLW/bb-mcp.git
cd bb-mcp

# Add to Claude Code MCP config
claude mcp add bb-mcp bb -- -m bb-mcp.core

配置

nREPL端口分辨率

bb mcp按以下顺序找到nREPL端口:

  1. 显式参数 - port 在工具调用中
  2. 环境变量 - BB_MCP_NREPL_PORT
  3. .nrepl端口文件 -In BB_MCP_PROJECT_DIR 或当前目录
  4. 默认 -端口7910(蜂窝mcp)

环境变量

变量描述默认值
BB_MCP_NREPL_PORT用于连接到7910的nREPL端口
BB_MCP_PROJECT_DIR.nrepl端口查找目录当前目录
HIVE_MCP_DIR用于自动生成的hive mcp目录~/dotfiles/gitthings/hive mcp

工具

bb mcp提供 114工具 (6个本地+108个来自hive mcp)。

原生工具(6)

无需JVM即可直接在Babashka中运行的快速工具:

工具说明
bash执行shell命令
read_file读取文件内容
file_write将文件写入磁盘
glob_files按glob模式查找文件
grep使用ripgrep搜索内容
clojure_eval通过nREPL评估Clojure

Emacs工具(108动态)

启动时从hive mcp动态加载的工具:

工具描述
缓冲19缓冲区操作、elisp eval、文件导航
记忆17带TTL的项目内存CRUD,语义搜索
群集14克劳德群体编排,hivemind
苹果酒12Clojure REPL、文档、完成
可用10通过Magit进行Git操作
看板8任务/看板管理
抛射物6项目导航
组织6组织模式操作,原生看板
提示5快速捕获、搜索、分析
频道4Emacs事件频道
天文4多代理通信
上下文1全上下文聚合

动态工具加载

在启动时,bb-mcp通过nREPL查询hive-mcp的所有可用工具,并自动创建转发处理程序。这确保了bb mcp始终具有 自动奇偶校验 使用hive mcp-不需要手动同步。

当hive mcp添加新工具时,bb mcp会在下次启动时自动拾取它们。

用法

作为MCP服务器

# Via bb task
bb mcp

# Directly
bb -m bb-mcp.core

连接管理

bb mcp使用 基于状态的检测 要管理hive mcp连接,请执行以下操作:

状态条件行动
:ready端口侦听立即连接(0延迟)
:starting锁定文件或进程存在等待指数回退
:not-running未找到进程生成配置单元mcp并等待

这消除了竞争条件,即使在多个bb-mcp实例同时启动时,也能确保可靠的启动。

日志转到 ~/.config/hive-mcp/server.log.

项目结构

bb-mcp/
├── bb.edn                    # Babashka deps and tasks
├── src/bb_mcp/
│   ├── core.clj              # Main entry, MCP message loop
│   ├── protocol.clj          # JSON-RPC protocol handling
│   ├── nrepl_spawn.clj       # Auto-spawn hive-mcp nREPL
│   ├── test_runner.clj       # Test runner
│   └── tools/
│       ├── bash.clj          # Native: shell execution
│       ├── file.clj          # Native: file operations
│       ├── grep.clj          # Native: ripgrep wrapper
│       ├── nrepl.clj         # nREPL client (bencode)
│       ├── emacs.clj         # Emacs tools facade
│       └── emacs/
│           └── dynamic.clj   # Dynamic tool loading from hive-mcp
└── test/                     # Tests

emacs/ 目录很小——所有Emacs工具都是在运行时从hivemcp动态加载的,消除了代码重复。

发展

# Run tests
bb test

# Start REPL for development
bb nrepl

添加新工具

本地工具 (不需要JVM):

  1. 添加到相应的文件 src/bb_mcp/tools/ (bash、文件、grep)
  2. 注册于 src/bb_mcp/core.clj 原生工具向量

Emacs工具:改为添加到hive mcp-bb mcp通过动态加载自动拾取它们。

nREPL实施

nREPL客户端(tools/nrepl.clj)使用基于字节的bencode进行正确的UTF-8处理。主要功能:

  • eval-code -在远程nREPL上评估Clojure
  • bencode-to-bytes / bdecode-from-stream -二进制安全bencode

许可证

麻省理工学院

目录标签

目录标签

ClaudeAI代理工作流自动化Clojure本地部署多路复用轻量级服务器资源优化Claude集成nREPL通信

支持客户端

Claude

接入字段

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

未说明

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

none

工具数量(toolCount,工具数)

6

资源数量(resourceCount,资源数)

0

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

0

权限和风险

未说明none部署方式未说明

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

安装前确认

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

仍需确认:installCommand

来源信息

继续浏览同类 MCP