内容
<p align="center">
<img src="logo_celebrimbot.png" alt="Celebrimbot" width="720"/>
</p>
<p align="center">
<img src="https://github.com/GiacomoSaccaggi/Celebrimbot/workflows/Build/badge.svg" alt="构建状态"/>
<a href="https://plugins.jetbrains.com/plugin/MARKETPLACE_ID"><img src="https://img.shields.io/jetbrains/plugin/v/MARKETPLACE_ID.svg" alt="版本"/></a>
<a href="https://plugins.jetbrains.com/plugin/MARKETPLACE_ID"><img src="https://img.shields.io/jetbrains/plugin/d/MARKETPLACE_ID.svg" alt="下载量"/></a>
</p>
<p align="center"><em>一款直接嵌入到 JetBrains IDE 中的自主 AI 编程代理。</em></p>
<!-- 插件描述 -->
Celebrimbot 是一款 IntelliJ 平台插件,它将一个完整的 multi-agent AI 系统引入您的 IDE 中。它可以读取项目文件,编写和修改代码,执行终端命令,搜索网络,检查 git 历史记录,并在一个与 IDE 窗口固定的聊天面板中进行自然对话。
与简单的自动补全工具不同,Celebrimbot 作为一个 **智能循环** 运行:它智能地路由请求,在可能的情况下本地执行任务,在需要时升级到云端规划,并在失败后自动重试,而无需离开编辑器。
<!-- 插件描述结束 -->
---
## 工作原理
Celebrimbot 使用六层架构 — 每一层都以托尔金传奇中的一个角色命名:
```
用户消息
|
v
+-------------+
| 甘道夫 | <- 路由器:本地 Qwen + 会话历史
+-------------+
| | |
聊天 简单任务 复杂任务
| | |
加拉德里尔 阿拉贡(本地) 埃尔隆德(本地)
(聊天回复) 多任务规划器 丰富上下文
| |
山姆威斯 / 弗罗多 / 庆祝姆伯(云端)
莱戈拉斯 & 吉姆利 主计划器
执行任务 |
| 山姆威斯 / 弗罗多 /
特伊伯德(云端) 莱戈拉斯 & 吉姆利
实体审查者 执行任务
反思循环 |
| 特伊伯德(云端)
比尔博(本地) 实体审查者
会话总结 反思循环
|
比尔博(本地)
会话总结
```
### 伙伴
| 角色 | 描述 | 默认提供商 |
|-----------|------|------------------|
| **甘道夫** | 路由器:决定聊天 / 简单任务 / 复杂任务 | 本地 Qwen |
| **加拉德里尔** | 会话式 AI:用英语回答,带有托尔金风格,称呼用户为“Mellow” | 本地 Qwen |
| **阿拉贡** | 简单任务规划器:分解请求为原子步骤,分配工作线程 | 本地 Qwen |
| **埃尔隆德** | 复杂任务预规划器:用历史记录、相关文件和技术笔记丰富整个请求 | 本地 Qwen |
| **庆祝姆伯** | 主规划器:接收埃尔隆德的简报并生成精确的原子任务 | 云端(阿里云 / Gemini) |
| **山姆威斯** | 精确工作线程:忠实地执行机械任务(删除、终端、扫描、git) | 本地 Qwen |
| **弗罗多** | 冒险工作线程:处理所有 `write_code` 任务,填充空白 | 本地 Qwen |
| **莱戈拉斯 & 吉姆利** | 专家工作线程二人组:仅在复杂算法、大型重构或弗罗多失败的任务中调用 | 云端(阿里云 / Gemini) |
| **特伊伯德** | 实体审查者:根据原始请求审查已完成的任务;如果不完整则触发重新规划;最多 2 次反思循环,然后让步于比尔博 | 云端(阿里云 / 本地备用) |
| **比尔博** | 慢性者:撰写简洁的会话总结,称呼用户为“Mellow” | 本地 Qwen |
### 路由器逻辑(甘道夫)
| 决策 | 含义 | 管道 |
|----------|---------|---------|
| `聊天` | 问候、问题、解释 | 加拉德里尔 |
| `简单任务` | 自成体系的单个动作(一个文件) | 阿拉贡 → 工作线程 → 特伊伯德 → 比尔博 |
| `复杂任务` | 多步骤、创建包、编辑现有文件或重复请求 | 埃尔隆德 → 庆祝姆伯 → 工作线程 → 特伊伯德 → 比尔博 |
甘道夫接收完整的会话历史记录。如果同一个请求以前没有成功,它会自动升级到 `复杂任务`。
### AI 提供商优先级
每个角色的提供商都可以在设置中按项目进行配置。下表显示了 **默认** 优先级链。
| 角色 | 描述 | 1st 选择 | 2nd 选择 | 3rd 选择 |
|-----------|------|-----------|-----------|----------|
| **甘道夫** | 路由器 | 本地 Qwen | Amazon Q | — |
| **加拉德里尔** | 聊天 | 本地 Qwen | 阿里云 | Gemini |
| **阿拉贡** | 简单任务规划器 | 本地 Qwen | — | — |
| **埃尔隆德** | 复杂任务预规划器 | 本地 Qwen | — | — |
| **庆祝姆伯** | 主规划器 | 阿里云 | Gemini | 本地 Qwen |
| **山姆威斯** | 机械工作线程 | 本地 Qwen | 阿里云 | Gemini |
| **弗罗多** | 代码工作线程(write_code) | 本地 Qwen | 阿里云 | — |
| **莱戈拉斯 & 吉姆利** | 专家代码工作线程 | 阿里云 | Gemini | 本地 Qwen |
| **特伊伯德** | 实体审查者(反思) | 阿里云 | 本地 Qwen | 安全备用 |
| **比尔博** | 总结者 | 本地 Qwen | — | — |
所有四个提供商 — `本地`、`阿里云 Qwen 云端`、`Google Gemini`、`Amazon Q Developer` — 均可按角色选择。Amazon Q Developer 通过 Amazon Q JetBrains 插件写入的 SSO token 进行身份验证(无需单独的 API 密钥)。本地模型通过 [java-llama.cpp](https://github.com/kherud/java-llama.cpp) 直接在您的机器上运行 — 大多数操作无需互联网连接。
---
## 功能
- **会话式 AI** — 具有完整项目上下文意识的自然聊天
- **自主代码编辑** — 读取文件,直接在编辑器中应用更改
- **文件管理** — 通过自然语言创建、编辑、删除文件
- **终端执行** — 在 IDE 中运行 shell 命令
- **网络搜索** — 搜索 DuckDuckGo 并获取页面,无需 API 密钥
- **项目扫描** — 列出文件、跨代码库 grep、按名称查找、文件统计
- **Git 集成** — 状态、日志、差异、blame、分支 — 所有操作均来自聊天
- **多agent 循环** — 甘道夫路由 → 阿拉贡/埃尔隆德规划 → 庆祝姆伯精炼 → 山姆威斯执行 → 比尔博总结
- **智能三向路由** — CHAT / 简单任务 / 复杂任务,具有历史记录意识(甘道夫)
- **离线优先** — 嵌入式 Qwen 2.5 Coder 1.5B 本地运行,无需 API 调用
- **多提供商备用** — 本地 Qwen → 阿里云(Qwen Plus)→ Google Gemini → Claude Sonnet 4.6(通过 Amazon Q Developer)
- **安全凭证存储** — API 密钥通过 IntelliJ PasswordSafe 存储,绝不会以明文存储
- **按项目设置** — 每个项目都可以使用不同的提供商和模型
- **独立 CLI** — `celebrimbot forge / scan / serve / mcp-stdio / undo` 在 IDE 外使用
- **HTTP 桥接** — 嵌入式 Ktor 服务器,用于远程调用其他工具
- **动态工具注册表** — 所有功能均自我描述为 JSON 模式;规划器接收自动生成的工具列表,添加新工具无需编辑提示
- **影子日志(自动撤销)** — 每个文件在写入或删除前都会备份;`celebrimbot undo` 从 `.celebrimbot/shadow_log/` 恢复上一个会话
- **议会的审查(验证循环)** — 每次 `write_code` 后,构建命令会自动运行;如果出现错误反馈,最多 3 个自我纠正循环,然后升级
- **埃尔隆德的帕兰蒂尔(BM25 索引)** — 轻量级本地语义索引;复杂任务规划检索前 8 个相关文件,而不是发送整个项目骨架
- **MCP 桥接(贡多尔的灯塔)** — 符合 MCP 的 JSON-RPC 2.0 服务器,通过 HTTP(`POST /mcp`)和 Stdio(`celebrimbot mcp-stdio`)为 Claude Desktop 和其他 MCP 主机提供服务
- **特伊伯德(实体审查者)** — 工作线程和比尔博之间的批评代理;根据原始请求审查已完成的任务;如果不完整则触发最多 2 个重新规划循环;绝不草率,绝不满意于占位代码
---
## 可用操作
| 类别 | 操作 | 描述 |
|----------|--------|-------------|
| 文件 | `read_psi` | 读取文件内容 |
| 文件 | `write_code` | 创建或覆盖文件(LLM 辅助) |
| 文件 | `write_file` | 创建或覆盖文件(原始,无 LLM — 适用于 MCP 客户端) |
| 文件 | `delete_file` | 删除文件 |
| 扫描 | `list_files` | 列出项目文件,可选按路径/扩展名过滤 |
| 扫描 | `grep_files` | 跨所有文件正则表达式搜索 |
| 扫描 | `find_file` | 按名称片段查找文件 |
| 扫描 | `file_stats` | 文件行数和大小 |
| Git | `git_status` | 工作树状态 |
| Git | `git_log` | 最近的提交历史 |
| Git | `git_diff` | 未提交的更改 |
| Git | `git_blame` | 按行作者 |
| Git | `git_branch` | 当前分支 |
| 网络 | `web_search` | DuckDuckGo 搜索 |
| 网络 | `fetch_page` | 获取并读取 URL |
| 终端 | `run_terminal` | 执行 shell 命令 |
---
## 要求
- IntelliJ IDEA 2025.2+(或任何基于 252+ 平台的 JetBrains IDE)
- Java 21+
- 本地模型磁盘空间约 1.2 GB(在首次使用时自动下载)
- 可选:阿里云 API 密钥,用于云端规划
- 可选:Google Gemini API 密钥作为次要备用
- 可选:Amazon Q Developer(通过 Amazon Q JetBrains 插件身份验证 — 无需单独的 API 密钥)
---
## 安装
**从 JetBrains Marketplace:**
<kbd>设置</kbd> → <kbd>插件</kbd> → <kbd>市场</kbd> → 搜索 `Celebrimbot` → <kbd>安装</kbd>
**手动:**
下载 [最新版本](https://github.com/GiacomoSaccaggi/Celebrimbot/releases/latest) 并通过以下方式安装:
<kbd>设置</kbd> → <kbd>插件</kbd> → <kbd>⚙️</kbd> → <kbd>从磁盘安装插件...</kbd>
---
## 配置
打开 <kbd>设置</kbd> → <kbd>工具</kbd> → <kbd>Celebrimbot</kbd>
| 字段 | 描述 |
|-------|-------------|
| **提供商** | `本地 API`、`Google Gemini`、`阿里云 Qwen 云端`或 `Amazon Q Developer` |
| **基础 URL** | API 端点(按提供商预填充) |
| **模型名称** | 例如 `qwen-plus`、`gemini-1.5-flash` |
| **API 密钥** | 用于 Gemini 或本地 OpenAI 兼容 API |
| **阿里云 API 密钥** | 用于 Qwen 云端(响应 API) |
| **验证命令** | 自定义构建命令,用于议会的审查循环(例如 `./gradlew classes`)。留空以从项目标记文件自动检测。 |
本地嵌入式模型(`qwen2.5-coder-1.5b-instruct-q4_k_m.gguf`)在首次推理时自动下载到您的 IDE 系统目录。如果检测到部分/损坏的下载记录,它将被删除并自动重新下载。
---
## 用法
打开 **Celebrimbot** 工具窗口(右侧面板)并开始聊天。
<p align="center">
<img src="celebrimbot.png" alt="Celebrimbot 聊天面板" width="420"/>
</p>
**示例:
```
你:hello
Celebrimbot:[🧝 加拉德里尔] 你好!今天我能帮你什么?
你:创建一个带有 Levenshtein 相似度函数的 Python 文件
[⚔️ 阿拉贡:准备任务...]
[🌿 山姆威斯:执行任务...]
Celebrimbot:✅ 代码写入 src/levenshtein.py
Celebrimbot:✅ 所有任务完成!
你:删除 src/levenshtein.py
[⚔️ 阿拉贡:准备任务...]
[🌿 山姆威斯:执行任务...]
Celebrimbot:✅ 已删除 src/levenshtein.py
Celebrimbot:✅ 所有任务完成!
你:在线搜索 kotlin 协程超时示例
[⚔️ 阿拉贡:准备任务...]
[🌿 山姆威斯:执行任务...]
Celebrimbot:摘要:...
Celebrimbot:✅ 所有任务完成!
你:重构服务以使用新接口
[🧙 埃尔隆德:准备简报...]
💎 庆祝姆伯:锻造计划...]
[🌿 山姆威斯:执行 3 个任务...]
Celebrimbot:✅ 所有任务完成!
```
头部显示 `🖥️ N ☁️ N` — 本地推理计数 vs 云端规划调用次数 — 这样您始终知道进行了多少 API 调用。
---
## 技术栈
| 组件 | 技术 |
|-----------|-----------|
| 语言 | Kotlin 2.3.20 |
| 平台 | IntelliJ 平台 2025.2 |
| 本地 LLM | [java-llama.cpp](https://github.com/kherud/java-llama.cpp) 3.4.1 |
| 模型 | Qwen2.5-Coder-1.5B-Instruct Q4_K_M(GGUF) |
| 云端 AI | 阿里云模型工作室(DashScope) |
| 云端备用 | Google Gemini 1.5 Flash |
| 云端选项 | Amazon Q Developer(Claude Sonnet,通过 SSO) |
| CLI | Clikt 4.4.0 |
| HTTP 桥接 | Ktor 2.3.11(Netty) |
| JSON | Gson 2.10.1 |
| 构建 | Gradle 9.4.1 + Shadow JAR |
---
## 开发
```bash
./gradlew runIde # 在沙盒 IDE 中运行插件
./gradlew buildPlugin # 构建可分发 ZIP
./gradlew shadowJar # 构建独立 CLI fat JAR(celebrimbot.jar)
./gradlew test # 运行单元测试
./gradlew verifyPlugin # 验证兼容性
```
**CLI 用法(shadowJar 后):**
```bash
java -jar build/libs/celebrimbot.jar forge "创建一个带有斐波那契函数的 Python 文件"
java -jar build/libs/celebrimbot.jar scan
java -jar build/libs/celebrimbot.jar serve --port 16180
java -jar build/libs/celebrimbot.jar mcp-stdio
java -jar build/libs/celebrimbot.jar undo`
```
---
## 项目结构
```
src/main/kotlin/.../celebrimbot/
├── cli/
│ └── CelebrimbotCLI # 独立 CLI(forge / scan / serve / mcp-stdio / undo)
├── io/
│ ├── FileOperator # 文件操作接口
│ Ide文件操作接口
| ├── IdeFileOperator # PSI/VFS实现(IDE模式)
│ ├── HeadlessFileOperator # java.nio实现(独立)
│ ├── ShadowedFileOperator # 装饰器:拦截写入/删除以进行备份
│ ├── HeadlessShadowedFileOperator # java.nio 影子日志实现
│ ├── TerminalOperator # 接口,用于终端执行(返回 TerminalResult)
│ ├── IdeTerminalOperator # IDE 终端实现
│ ├── HeadlessTerminalOperator # ProcessBuilder 实现
│ ├── LlmEngine # LLM 推理接口
│ ├── StandaloneLlmEngine # llama.cpp 独立实现
│ ├── WebSearchOperator # 网络搜索 + fetch_page 接口
│ ├── DuckDuckGoSearchOperator # DuckDuckGo 实现
│ ├── ProjectScanOperator # 项目扫描 + walkSourceFiles 接口
│ ├── HeadlessProjectScanOperator # java.nio 实现
│ ├── GitOperator # Git 操作接口
│ └── HeadlessGitOperator # ProcessBuilder Git 实现
├── index/
│ └── PalantirIndex # BM25 语义索引(构建、查询、保存、加载)
├── mcp/
│ ├── McpRouter # JSON-RPC 2.0 分发器(所有 MCP 方法处理程序)
│ └── McpTransport # 紧凑的 JSON-RPC 返回/错误格式化
├── model/
│ ├── CelebrimbotPlan # CelebrimbotTask 数据类
│ ├── CelebrimbotTool # CelebrimbotTool 接口、ToolParam、ToolResult、ToolCategory
│ └── TreebeardReviewResult # Treebeard 的裁决:isComplete、reasoning、additionalRequests
├── registry/
│ ├── ToolRegistry # 中央工具库,带有 toJsonSchema() 和 toMcpToolList()
│ └── tools/
│ └── Tools # 15 个工具实现,封装所有操作符
├── services/
│ ├── CelebrimbotAgentOrchestrator # 多agent 循环:路由、规划、执行、反思
│ ├── CelebrimbotLlmService # AI 提供商抽象(本地/阿里云/Gemini/Amazon Q)
│ ├── CelebrimbotEmbeddedEngine # 本地 llama.cpp 推理引擎
│ ├── CelebrimbotTerminalService # IDE 终端命令执行
│ ├── ValidationService # 构建系统检测 + 议会审查命令
│ └── TreebeardReviewService # 实体审查者:反射循环后 Worker
├── settings/
│ ├── CelebrimbotSettingsState # 持久化项目配置
│ ├── CelebrimbotSettingsConfigurable # 设置 UI 面板
│ └── CelebrimbotPasswordSafe # 安全 API 密钥存储
├── startup/
│ └── CelebrimbotStartupActivity # 插件初始化、模型预热、Palantír 索引刷新
├── toolWindow/
│ └── CelebrimbotToolWindowFactory # 聊天 UI 面板,带有统计计数器和复制/清除
└── MyBundle.kt # i18n 资源包访问器
src/main/resources/
├── prompts/
│ ├── gandalf_system_prompt.txt # 路由器:CHAT / EASY_TASK / COMPLEX_TASK
│ ├── galadriel_system_prompt.txt # 会话式 AI 人格
│ ├── aragorn_system_prompt.txt # 简单任务规划器人格
│ ├── elrond_system_prompt.txt # 复杂任务预规划器人格
│ ├── celebrimbor_system_prompt.txt # 主规划器人格
│ ├── samwise_system_prompt.txt # 精确工作线程人格
│ ├── frodo_system_prompt.txt # 冒险工作线程人格(write_code)
│ ├── legolas_gimli_system_prompt.txt # 专家工作线程二人组人格(复杂任务)
│ ├── treebeard_system_prompt.txt # 实体审查者人格:慢速、方法论、严格的 JSON 输出
│ └── bilbo_system_prompt.txt # 会话记录者人格
├── icons/
│ └── celebrimbot.svg
└── META-INF/
└── plugin.xml
```
### 评估工作流程
评估框架是一个独立的Python脚本,它在无头模式下运行Celebrimbot代理管道 — 不需要IDE。每个测试用例都定义了一个自然语言输入、预期的路由决策(聊天 / 简单任务 / 复杂任务),以及一组评估标准。
**测试用例**(`src/test/testData/eval/eval_suite.json`)涵盖:
- 路由准确性(Gandalf是否正确分类问候语、单文件任务和多文件任务?)
- 计划器质量(Elrond是否生成一个包含所有必需字段的有效JSON简报?)
- 工作器输出质量(Frodo是否编写具有请求类/方法的语法有效的Python?)
- 审查者行为(Treebeard是否在README太短时标记不完整的作品?)
- 摘要质量(Bilbo是否以托尔金风格称呼用户为"Mellow"?)
**运行方式:**
1. 对于每个配置,脚本在临时目录中启动一个`HeadlessPipeline`
2. 管道为每个角色调用配置的LLM后端(通过SSO令牌的Amazon Q Developer,或用于本地模型的Ollama)
3. 执行后,评估者(通过Amazon Q Developer的Claude Sonnet 4.6)接收完整的代理跟踪、内部日志和写入的文件内容,然后评分运行结果为0-10,并标记特定问题
4. 结果聚合到`EVAL_REPORT.md`和`build/eval/`中的每个配置JSON文件中
**自行运行:**
```bash
# 要求:Amazon Q Developer SSO登录 + Ollama用于本地模型
brew install ollama && ollama serve &
ollama pull qwen2.5-coder:1.5b qwen2.5-coder:7b llama3.1:8b deepseek-coder:6.7b phi3.5
python3 src/test/testData/eval/run_eval.py
```
### 最终排名
| 排名 | 配置 | 平均分数 | 通过率 |
|------|--------|-----------|--------|
| 🥇 | Claude Sonnet 4.6 规划器 + **Qwen 2.5 Coder 7B** 工作器 | **9.0/10** | 100% |
| 🥈 | Claude Sonnet 4.6 规划器 + **Phi-3.5 Mini** 工作器 | **9.0/10** | 100% |
| 🥉 | Claude Sonnet 4.6 规划器 + **Llama 3.1 8B** 工作器 | **8.9/10** | 100% |
| #4 | 全Claude Sonnet 4.6(基准) | 8.6/10 | 87.5% |
| #5 | Claude Sonnet 4.6核心仅 | 8.4/10 | 87.5% |
| #6 | Claude Sonnet 4.6 规划器 + Qwen 2.5 Coder 1.5B 工作器 | 7.8/10 | 87.5% |
| #7 | 全本地 — Qwen 2.5 Coder 7B | 7.8/10 | 87.5% |
| #8 | 全本地 — Llama 3.1 8B | 7.8/10 | 87.5% |
| #9 | 全本地 — Phi-3.5 Mini | 6.2/10 | 62.5% |
| #10 | Claude Sonnet 4.6 规划器 + DeepSeek Coder 6.7B 工作器 | 6.1/10 | 75.0% |
| #11 | 全本地 — Qwen 2.5 Coder 1.5B | 4.9/10 | 37.5% |
| #12 | 全本地 — DeepSeek Coder 6.7B | 4.9/10 | 50.0% |
### 关键发现
**最佳配置是:**Claude Sonnet 4.6(通过Amazon Q Developer)作为规划器 + 7B+本地模型作为工作器。
前三名配置都遵循相同的模式:Claude Sonnet 4.6(通过Amazon Q Developer)处理Gandalf(路由)、Elrond(上下文丰富)、Celebrimbor(主规划)和Treebeard(审查),而本地模型运行Aragorn、Frodo、Legolas & Gimli、Galadriel和Bilbo。这种混合方法**优于使用Claude Sonnet 4.6处理所有内容**(9.0 vs 8.6),同时最小化云API调用。
**本地7B模型是竞争性的工作器。** Qwen 2.5 Coder 7B和Llama 3.1 8B完全本地运行(无云)均获得7.8/10的评分 — 高于“仅Claude Sonnet 4.6核心”配置(8.4/10,但云调用更多)。对于需要完全离线操作的团队,Qwen 7B或Llama 8B是可行的。
**DeepSeek Coder 6.7B的表现低于其规模。** 尽管与Qwen 7B相当,但DeepSeek仅获得4.9/10的全本地和6.1/10的工作器评分。它经常拒绝任务并表示“我无法协助您”,并生成格式错误的JSON,使其在代理管道中不可靠。
**Qwen 2.5 Coder 1.5B对于可靠的路由和规划来说太小了。** 在4.9/10的全本地评分中,它将简单的问候语误导为COMPLEX_TASK,并生成不完整的JSON计划。只有与云规划器配对时,它才适合作为Frodo/工作器。
**Phi-3.5 Mini(3.8B)作为工作器超出了其重量。** 与Claude Sonnet 4.6规划器配对后,它达到了9.0/10 — 与Qwen 7B相匹配,但RAM占用极低(~2.5 GB vs ~4.5 GB)。这是资源受限环境的最佳选择。
### 推荐配置
| 使用场景 | Gandalf | Elrond | Celebrimbor | 工作器 | 分数 |
|----------|---------|--------|-------------|---------|-------|
| **最佳质量** | Amazon Q | Amazon Q | Amazon Q | Qwen 7B / Phi-3.5 | 9.0/10 |
| **平衡** | Amazon Q | Amazon Q | Amazon Q | Llama 3.1 8B | 8.9/10 |
| **最小云** | Amazon Q | Amazon Q | Amazon Q | Qwen 1.5B | 7.8/10 |
| **完全离线** | Qwen 7B | Qwen 7B | Qwen 7B | Qwen 7B | 7.8/10 |
| **极轻量级离线** | Phi-3.5 | Phi-3.5 | Phi-3.5 | Phi-3.5 | 6.2/10 |
---
## 许可证
本项目基于[IntelliJ平台插件模板](https://github.com/JetBrains/intellij-platform-plugin-template)。
MCP 配置
以下是此 MCP Server 的配置信息,可直接复制到 Cursor 或其他 MCP 客户端中使用。
mcp.json
连接信息
猜你喜欢
暂无推荐服务器