返回市场
布恩文档MCPzed服务器

布恩文档MCPzed服务器

作者:kjanat3 星标更新:2025-11-18

项目介绍

Bun Docs MCP for Zed

Rust CI

在Zed中使用模型上下文协议(MCP)直接搜索Bun文档。

纯Rust实现,零运行时依赖。

功能

  • 🔍 搜索Bun文档 - 从Zed助手查询Bun文档
  • 纯Rust - 自动从GitHub Releases下载的本地二进制文件
  • 🪶 轻量级 - 压缩后1.3MB,解压后2.7MB
  • 🚀 快速启动 - 启动时间为4毫秒
  • 🌍 多平台支持 - 支持Linux、macOS、Windows(x86_64/ARM64)
  • 🔄 自动更新 - 安装时下载最新二进制文件

安装

通过Zed扩展(即将推出)

  1. 打开Zed
  2. <kbd>Cmd</kbd>+<kbd>Shift</kbd>+<kbd>X</kbd> (macOS) 或
    <kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>X</kbd> (Linux/Windows)
    Extensions
  3. 搜索:"Bun Docs MCP"
  4. 点击安装

作为开发扩展(本地开发)

# 克隆此仓库
git clone https://github.com/kjanat/bun-docs-mcp-zed
cd bun-docs-mcp-zed

然后,在Zed中安装:

  • 按下 <kbd>Cmd</kbd>+<kbd>Shift</kbd>+<kbd>P</kbd> (macOS) 或
    <kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>P</kbd> (Linux/Windows)
  • 输入:"zed: install dev extension"
  • 选择此目录

无需构建! 扩展会在首次使用时自动从GitHub Releases下载Rust二进制文件。

使用方法

  1. 打开助手
    <kbd>Cmd</kbd>+<kbd>Shift</kbd>+<kbd>A</kbd> (macOS) 或
    <kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>A</kbd> (Linux/Windows)
  2. 启用上下文:点击上下文下拉菜单 → 启用 "bun-docs-mcp"
  3. 提问:"Bun.serve是如何工作的?"

示例查询

  • Bun.serve是如何工作的?
  • 解释Bun的WebSocket支持
  • Bun的TCP API是什么?
  • 如何使用Bun.file
  • 显示Bun.spawn示例

架构

flowchart TD
    A["🔧 Zed Extension (WASM)<br/>• 自动下载二进制文件<br/>• 平台检测<br/>• 每日更新检查<br/>• 大小:171 KB"]
    B["📦 GitHub Releases<br/>kjanat/bun-docs-mcp-proxy<br/>• 支持6个平台<br/>• 压缩后约1.3 MB"]
    C["⚙️ Rust MCP Proxy (Native)<br/>• 标准输入输出 ↔ HTTP ↔ SSE<br/>• 解压后2.7 MB<br/>• 启动时间4毫秒"]
    D["🌐 Bun Docs API<br/>https://bun.com/docs/mcp"]

    A -->|"从"下载| B
    B -->|"提取到 /work/"| C
    C -->|"查询"| D

工作原理

  1. 扩展:Zed加载来自此仓库的WASM扩展
  2. 自动下载:首次使用时,从GitHub Releases下载特定平台的二进制文件
  3. 代理二进制文件:Rust二进制文件在以下之间进行转换:
    • Zed的标准输入输出(JSON-RPC)
    • Bun Docs HTTP API(SSE响应)
  4. 搜索:查询Bun文档并返回结果

支持的平台

所有平台自动检测并支持:

平台二进制文件大小
Linux x86_64bun-docs-mcp-proxy-linux-x86_64.tar.gz1.3 MB
Linux ARM64bun-docs-mcp-proxy-linux-aarch64.tar.gz1.25 MB
macOS Intelbun-docs-mcp-proxy-macos-x86_64.tar.gz1.19 MB
macOS Apple Siliconbun-docs-mcp-proxy-macos-aarch64.tar.gz1.13 MB
Windows x86_64bun-docs-mcp-proxy-windows-x86_64.zip1.09 MB
Windows ARM64bun-docs-mcp-proxy-windows-aarch64.zip1.04 MB

静态Linux构建(musl)也提供。

性能

指标
首次使用约2-3秒(一次性下载)
后续使用约4毫秒启动(瞬间!)
二进制大小2.7 MB
内存约2-5 MB
依赖项无(独立二进制文件)

开发

项目结构

bun-docs-mcp-zed/
├── extension.toml      # Zed扩展元数据
├── Cargo.toml          # Rust构建配置
├── src/
│   └── lib.rs          # 扩展(自动下载代理二进制文件)
├── ARCHITECTURE.md     # 技术架构
└── README.md           # 此文件

代理实现:单独的仓库在kjanat/bun-docs-mcp-proxy

构建

# 构建扩展WASM
cargo build --release --lib

# 扩展自动从GitHub下载代理二进制文件
# 不需要本地构建代理!

测试

# 在Zed中安装为开发扩展
# Cmd+Shift+P (macOS) 或 Ctrl+Shift+P (Linux/Windows) → "zed: install dev extension"
# 选择此目录

# 在助手中启用并测试
# 打开助手 → 启用 "bun-docs-mcp"
# 提问:"Bun.serve是如何工作的?"

技术细节

MCP协议:通过标准输入输出的JSON-RPC 2.0
传输:HTTPS上的服务器发送事件(SSE)
API端点https://bun.com/docs/mcp
二进制来源:自动从GitHub Releases下载

详细的架构信息,请参阅ARCHITECTURE.md

故障排除

扩展无法启用

检查Zed日志
<kbd>Cmd</kbd>+<kbd>Shift</kbd>+<kbd>P</kbd> (macOS) 或
<kbd>Ctrl</kbd>+<kbd>Shift</kbd>+<kbd>P</kbd> (Linux/Windows)
→ "zed: open log"

常见问题

  • 首次使用需要2-3秒(下载二进制文件)
  • 网络问题阻止下载 → 检查互联网连接
  • 二进制文件不适用于您的平台 → 查看上面的支持平台

下载了二进制文件但无法运行

找到二进制文件位置

扩展将二进制文件存储在Zed扩展工作目录中。确切路径因平台而异:

  • Linux~/.local/share/zed/extensions/work/bun-docs-mcp/bun-docs-mcp-proxy/
  • macOS~/Library/Application Support/Zed/extensions/work/bun-docs-mcp/bun-docs-mcp-proxy/
  • Windows%APPDATA%\Zed\extensions\work\bun-docs-mcp\bun-docs-mcp-proxy\

验证二进制文件存在(Linux/macOS):

ls -lh ~/.local/share/zed/extensions/work/bun-docs-mcp/bun-docs-mcp-proxy/
# 应显示:bun-docs-mcp-proxy(可执行文件)

手动测试(Linux/macOS):

~/.local/share/zed/extensions/work/bun-docs-mcp/bun-docs-mcp-proxy/bun-docs-mcp-proxy <<< '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
# 应返回:{"jsonrpc":"2.0","id":1,"result":{"tools":[...]}}

注意:请替换为上述平台特定的位置。

为什么是Rust?

此扩展使用纯Rust实现,因为:

  • 性能:4毫秒启动时间
  • 大小:紧凑的2.7MB二进制文件
  • 依赖项:零运行时依赖
  • 可靠性:编译时安全保证
  • 无聊:为什么不呢...

详见ARCHITECTURE.md中的迁移历史和技术细节。

贡献

欢迎贡献!

代理实现kjanat/bun-docs-mcp-proxy
扩展:此仓库

许可证

MIT - 请参阅LICENSE

致谢


准备好在Zed中搜索Bun文档了! 安装扩展并开始提问。🚀