mcpField
G
gctrl

gctrl

本地服务
gctrl.tech记忆与知识7今天更新

关于 gctrl

gctrl 通过 MCP 向 AI Agent 提供 Ground Control 知识管理能力,结合知识图谱抽取、混合 RAG、范围受限的访问权限和代码库导航工具,服务于知识与代码库工作。

主要功能

  1. 01抽取并融合图谱知识
  2. 02通过混合 RAG 查询图谱
  3. 03搜索实体和模式
  4. 04存储笔记并抽取图谱
  5. 05索引和导航代码库
  6. 06使用范围受限的访问令牌

适用场景

  1. 01从文本构建知识图谱
  2. 02查询已存储的组织知识
  3. 03查找代码符号并追踪调用关系
  4. 04评估代码变更的影响

MCP 相关

该 MCP 服务将 Ground Control 的知识和代码库操作作为工具提供,包括抽取、查询、存储、图谱管理和代码导航。范围受限的 GCTRL Access Token 可限制 Agent 能访问的图谱。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"gctrl-tech-gctrl": {
"command": "npx",
"args": [
"-y",
"gctrl-mcp"
],
"env": {
"GCTRL_GATEWAY_URL": "<GCTRL_GATEWAY_URL>",
"GCTRL_API_URL": "<GCTRL_API_URL>",
"GCTRL_API_TOKEN": "<GCTRL_API_TOKEN>"
}
}
}
}
启动命令npx -y gctrl-mcp
需要配置的环境变量
GCTRL_GATEWAY_URLURL of your GCTRL harness MCP gateway, e.g. http://localhost:4000/api/agent/mcp (recommended mode)
GCTRL_API_URLDirect GCTRL API base URL (alternative to gateway mode), e.g. http://localhost:4000/api
GCTRL_API_TOKEN密钥Scoped GCTRL Access Token (gctrl_…) created in Settings → Access Control

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmgctrl-mcp1.2.0

工具

60

收录的工具列表 · 更新于 2 周前

参数类型必填说明
textstring是要从中提取知识的文本内容
ontologyIdstring否用于指导实体类型提取的可选 ontology ID
compilationIdstring否可选:目标知识图谱编译 ID。提取的任务将自动关联到此编译。使用 gctrl_list_graphs 查找 ID。
discoveryModeenum否strict = 仅使用本体类型,discover = 查找所有类型并扩展本体strict | discover

详细介绍

Ground Control(GCTRL)MCP 服务

将 Ground Control 的知识管理功能封装为 MCP 工具,供 Claude 和其他 AI Agent 使用。

可用工具

工具描述
gctrl_extract从文本中提取知识 → Neo4j 实体 + Qdrant 向量
gctrl_query针对知识图谱提问(混合 RAG)
gctrl_search_entities按名称/类型搜索特定实体
gctrl_list_graphs列出所有知识图谱编译结果
gctrl_fuse将提取任务合并为统一图谱
gctrl_list_ontologies列出可用本体
gctrl_list_extractions列出最近的提取任务
gctrl_store存储知识(类似 Obsidian 笔记,但会提取知识图谱)
gctrl_schema获取知识图谱架构
gctrl_code_index将本地仓库索引到代码库知识库(编译类型为 CODE)。仅限直接模式(它会索引此机器,因此网关无法提供此工具),且需要可选的 gctrl-code-indexer 软件包——若未安装,该工具会返回安装提示,其他所有工具仍可正常使用。
gctrl_code_symbol按名称/路径/正则表达式查找代码符号(通过 HTTP 网关代理)
gctrl_code_trace跟踪符号的调用方/被调用方(通过 HTTP 网关代理)
gctrl_code_impact分析已更改符号/文件的影响(通过 HTTP 网关代理)
gctrl_code_architecture查看代码库知识库的语言、热点和社群(通过 HTTP 网关代理)
已弃用名称(别名,将在 v2 中移除)

为兼容现有 .mcp.json 配置,上方每个工具也提供对应的旧名称。 每次调用别名时,都会向 stderr 记录弃用警告,且将在 v2.0 中移除——请迁移。

已弃用的别名请改用
borghive_extractgctrl_extract
borghive_querygctrl_query
borghive_storegctrl_store
borghive_fusegctrl_fuse
borghive_search_entitiesgctrl_search_entities
borghive_list_graphsgctrl_list_graphs
borghive_list_ontologiesgctrl_list_ontologies
borghive_list_extractionsgctrl_list_extractions
borghive_schemagctrl_schema

快速入门(npm)

该软件包已发布到 npm,名称为 gctrl-mcp,也已收录在官方 MCP Registry 中,名称为 io.github.GCTRL-TECH/gctrl。将其添加到 MCP 客户端配置中 (Claude Code、Claude Desktop、Cursor、Codex 等):

{
  "mcpServers": {
    "gctrl": {
      "command": "npx",
      "args": ["-y", "gctrl-mcp"],
      "env": {
        "GCTRL_GATEWAY_URL": "http://localhost:4000/api/agent/mcp",
        "GCTRL_API_TOKEN": "gctrl_..."
      }
    }
  }
}

需要正在运行的 GCTRL harness(开始使用)。

使用 GCTRL 编码(推荐用于编码 Agent)

在网关入口旁以直接模式运行服务,让 Agent 使用本地代码工具,并由它自行维护仓库的代码库知识库:

{
  "mcpServers": {
    "gctrl":      { "command": "npx", "args": ["-y", "gctrl-mcp"],
                    "env": { "GCTRL_GATEWAY_URL": "https://<host>/api/agent/mcp", "GCTRL_API_TOKEN": "gctrl_..." } },
    "gctrl-code": { "command": "npx", "args": ["-y", "gctrl-mcp"],
                    "env": { "GCTRL_API_URL": "https://<host>/api", "GCTRL_API_TOKEN": "gctrl_...",
                             "GCTRL_MCP_TOOLS": "code", "GCTRL_CODE_AUTO_INDEX": "cwd" } }
  }
}

设置 GCTRL_CODE_AUTO_INDEX=cwd 后,服务会在启动后立即索引 MCP 客户端启动时所在的目录(增量索引——已预热的仓库只需数秒),这样 Agent 首次调用 gctrl_code_symbol 时就能查询最新图谱。服务的指令中包含所有已连接 Agent 都必须遵循的编码协议:每个会话索引一次;在读取文件之前,通过 gctrl_code_symbol / gctrl_code_trace / gctrl_code_architecture 进行导航;更改符号之前运行 gctrl_code_impact;进行较大修改后重新索引;通过 gctrl_query 询问原因,并使用 gctrl_store 将决策存储在相关符号旁。根据对 GCTRL 自身仓库的测量,通过图谱回答结构类问题所用的令牌比 grep-and-read 少 95.6%。

Configuration
Env varPurpose
GCTRL_GATEWAY_URL推荐:你的 harness 的 MCP 网关 URL(http://<host>:4000/api/agent/mcp)。stdio 服务充当轻量级的身份验证代理。
GCTRL_API_URL替代直连模式:GCTRL API 基础 URL(http://<host>:4000/api);工具在本地直接调用 API。
GCTRL_API_TOKEN范围受限的 GCTRL Access Token(gctrl_…),可在 Settings → Access Control 中创建,并设置 clearance level 和各图的授权。遵循最小权限原则——Agent 只能看到此令牌获准访问的内容。
GCTRL_MCP_TOOLS可选的工具集筛选器。设为 code 可仅注册本地代码工具(gctrl_code_index、gctrl_code_symbol、gctrl_code_trace、gctrl_code_impact、gctrl_code_architecture)——用于 Anvil/Hermes 的 gctrl-code stdio 条目,与 HTTP 网关的 gctrl/gctrl-projekt 条目分开。仅适用于直连模式:在网关模式下,网关自身的工具列表会原样代理,因此此筛选器不起作用,服务启动时会说明这一点。

| GCTRL_CODE_AUTO_INDEX | 直连模式:cwd(或仓库路径)会在启动后立即于后台为该仓库编制索引——增量执行,不会导致启动失败。让 Codebase KB 自动运行,而不再依赖人工记得操作。 | | GCTRL_CODE_COMPILATION_ID | 直连模式:当 Agent 未传入 compilationId 时,gctrl_code_index 使用的 CODE compilation(一个项目 = 一个仓库 = 一个代码图)。如果 Agent 显式传入 compilationId,则优先使用该值。 | | GCTRL_CODE_FOLDER | 直连模式:代码图的文件夹路径(Users/<name>/Code),服务会在此创建 <repo> (code)。按用户启动服务的宿主(Anvil)应设置此项,让每位同事的代码存入各自的文件夹;否则 GCTRL 会将文件存入账户所有者的 Users/<owner>/Code。 |

仅供开发使用的备用方案:GCTRL_EMAIL + GCTRL_PASSWORD(具有完整 clearance 的 JWT)。请勿在生产环境中使用。

从源代码构建

cd borghive/services/mcp
npm install
npm run build
开发代码索引器

gctrl-code-indexer 是一个可选依赖,目前尚未发布到 npm,因此在此处执行普通的 npm install 不会安装它。要针对仓库内的软件包开发或测试 gctrl_code_index,请先链接一次:

cd borghive/packages/code-indexer && npm ci && npm run build
cd ../../services/mcp && npm install ../../packages/code-indexer --no-save
# or: npm link ../../packages/code-indexer

服务为索引器声明了本地类型,因此无论是否安装该软件包,npm run build 都能成功——区别仅在于 gctrl_code_index 是能在运行时正常工作,还是会返回安装提示。

发布顺序

gctrl-mcp 和 gctrl-code-indexer 是两个 npm 软件包,必须按以下顺序发布:

  1. 发布 [email protected]。
  2. 将 services/mcp/package.json 中的 optionalDependencies 改为真实的 registry 版本范围 (目前已是 ^0.1.0;请确认能够解析),然后重新运行 npm install。
  3. 将 gctrl-mcp 升级到 1.1.0(更新 package.json 和根目录下的 package-lock.json)。
  4. 发布 gctrl-mcp。

如果在索引器发布到 npm 之前就升级 gctrl-mcp,会导致所有现有用户的 npx gctrl-mcp 无法使用——这正是版本目前停留在 1.0.1 的原因。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。