文档/集成

集成

MCP 与 Agent Skill

将整库或单一信源挂载到 Codex、Claude Code 等 Agent。
更新于 2026-07-22适用于 SAG v1.2.2

SAG 通过 MCP 向 Codex、Claude Code 和其他兼容宿主开放只读知识工具。连接可以覆盖整个知识库,也可以用 source_id 限定到单一信源。

获取连接配置

在 SAG 中打开 设置 -> 集成 -> 知识库 MCP,选择 HTTP 或本地命令并复制完整配置。

推荐使用 Streamable HTTP:

text
URL: http://<host>/mcp/?source_id=<SOURCE_ID>
Header: Authorization: Bearer <SAG_TOKEN>

省略 source_id 时连接可访问当前用户的全部信源。本地源码环境也支持 stdio:

bash
SAG_MCP_SOURCE_ID=<SOURCE_ID> python -m sag_api.mcp.server

安装官方 Agent Skill

仓库中的 skills/sag/ 会教 Agent 使用正确的只读探索漏斗。复制到对应技能目录:

bash
# Claude Code
cp -R skills/sag ~/.claude/skills/sag-knowledge

# Codex
cp -R skills/sag ~/.codex/skills/sag-knowledge

Skill 是用法说明,不是连接本身。宿主仍需要配置 MCP Server URL、命令和认证信息。

八个只读工具

顺序工具用途
1list_sources()确认可访问范围、文档数和分块数
2list_documents(source_id?)查看文档、状态与分块数
3outline(document_id)按 heading 与 rank 浏览文档结构
4search(query, top_k?, source_id?)用自然语言语义召回带编号证据
5grep(pattern, limit?, source_id?)精确定位编号、函数名与专有名词
6get_chunk(chunk_id, source_id?)获取某个证据块的完整原文
7read(document_id, offset?, limit?)按行分页读取原始文件
8get_entity(name, source_id?)查看实体相关的事件上下文

所有工具返回 MCP text content。空结果会返回中文占位说明,不会把“没有资料”作为工具异常抛出。

推荐探索漏斗

text
list_sources
  -> list_documents
  -> outline
  -> search or grep
  -> get_chunk or paged read

这个顺序先确定范围,再理解结构,最后只读取必要原文。它比一开始整篇 read 更省上下文,也更容易形成可验证引用。

Search 与 grep 的选择

  • 使用 search 处理问句、概念和模糊表达,例如“报销的审批链是什么”。
  • 使用 grep 处理确定字符串,例如 INV-2024、函数名或标准编号。
  • 被追问出处时,使用结果中的 chunk_id 调用 get_chunk
  • 大文件从 offset=1 开始分页读取,单次 limit 不超过 500 行。

认证与范围

HTTP 配置通常包含当前 SAG JWT。它等同于对该知识范围的读取权限,不要提交到公开仓库、Issue 或日志。

需要最小权限时,为每个 Agent 使用带 source_id 的 URL。SAG MCP 当前设计为知识读取面,不提供删除、上传或修改工具。

发现内容问题?以当前公开仓库为准。查看 SAG 源码