91 行
4.0 KiB
Markdown
91 行
4.0 KiB
Markdown
# MCP Tools (Project)
|
|
|
|
Generated: 2026-03-09
|
|
Current Phase: `P19+MCP-1`
|
|
Source: 官方 MCP package 文档 + `P19+MCP-1` 执行合同 + 仓库内校验脚本。当前 shell 无法使用 `codex mcp list --json`,因此本目录不以运行时 CLI 枚举作为唯一事实源。
|
|
|
|
## Enabled Servers
|
|
- `postgres`
|
|
|
|
## Candidate Servers (Not Enabled)
|
|
- `github` — github deferred;官方 `@modelcontextprotocol/server-github` 当前暴露读写混合工具集,不满足 `Read-only Tools Baseline`,因此本期不启用,也不纳入 enabled servers。
|
|
|
|
## Tools
|
|
- `postgres:query` — 执行数据库只读排障、schema 核对、账本校验与对账查询;所有查询均应运行在 `READ ONLY` 事务语义下。
|
|
|
|
## Resources
|
|
- `postgres://<host>/<table>/schema` — schema resources,用于读取表结构、字段类型与列定义,不用于业务写入。
|
|
|
|
## Server: postgres
|
|
### 用途
|
|
- 数据库只读排障
|
|
- Prisma / SQL 迁移核对
|
|
- 预算、ERP、资产、采购等账本或主数据只读核验
|
|
|
|
### 输入与能力范围
|
|
- 通过连接串连接 PostgreSQL
|
|
- 暴露 `postgres:query` 工具
|
|
- 暴露 schema resources 用于表结构读取
|
|
- 允许执行 `SELECT` / 只读检查类 SQL
|
|
|
|
### 允许操作
|
|
- 查询表结构与字段定义
|
|
- 查询计数、汇总、余额、绑定关系、Outbox 状态
|
|
- 为本地回归或审计结论提供只读证据
|
|
|
|
### 禁止操作
|
|
- 禁止 `INSERT / UPDATE / DELETE / DDL`
|
|
- 禁止修改预算、工作流、资产、采购、报销等核心业务状态
|
|
- 禁止绕过仓库内已有的本地验证命令
|
|
- 禁止把 MCP 当作应用运行时依赖
|
|
|
|
### 凭据要求
|
|
- 必须使用只读数据库账号
|
|
- 必须使用最小权限连接串
|
|
- **不提交真实密钥/连接串**,包括但不限于数据库密码、主机地址、PAT、API Token
|
|
|
|
### 示例配置
|
|
- 仓库示例文件:`.mcp.json.example`
|
|
- 仅提供 `postgres` 示例,不提供 `github` 启用段
|
|
- 占位连接串固定写为:`postgresql://<READONLY_USER>:<PASSWORD>@<HOST>:<PORT>/<DB>`
|
|
|
|
### 回滚方式
|
|
- 删除本机未跟踪的 `.mcp.json`
|
|
- 停止在本地 CLI 中启用 `postgres` MCP
|
|
- 保留 `docs/mcp-tools.md` 作为事实源与治理文档,不影响业务系统运行
|
|
|
|
## Server: github (Deferred)
|
|
### 当前不启用原因
|
|
- 官方 GitHub MCP server 当前为读写混合工具集
|
|
- 现阶段无法以官方能力保证“只读基线”
|
|
- 若贸然启用,容易突破 `P19+MCP-1` 的只读边界
|
|
|
|
### 本期固定结论
|
|
- `github` 当前不进入 enabled servers
|
|
- `github` 当前不纳入“可立即使用工具目录”
|
|
- 本期不提交 GitHub MCP 示例启用配置
|
|
|
|
### 未来启用前置条件
|
|
- 需要新的路线合同显式解锁,如 `P19+MCP-2` 或后续治理 phase
|
|
- 需要确认只读模式、最小权限 PAT 策略、审计与回滚边界
|
|
- 需要把读写操作边界从 `P19+MCP-1` 的只读基线中拆分出来单独治理
|
|
|
|
## Local Activation Checklist
|
|
1. 确认本机支持 MCP 的 CLI 环境可用;若 `codex mcp list --json` 不可用,仍以本文和 `.mcp.json.example` 为唯一仓库事实源。
|
|
2. 将 `.mcp.json.example` 复制为本机未跟踪的 `.mcp.json`。
|
|
3. 将占位连接串替换为**只读数据库账号**连接串。
|
|
4. 确认不会把 `.mcp.json`、密码或其他真实凭据提交进仓库。
|
|
5. 仅启用 `postgres`,不得自行把 `github` 提升为 enabled server。
|
|
6. 使用 MCP 后,仍必须继续执行仓库内本地验证命令与回归脚本。
|
|
|
|
## Safety Rules
|
|
- MCP 仅用于只读排障、数据库验证与审计辅助。
|
|
- MCP 不得写数据库,不得修改业务状态,不得代替测试。
|
|
- `docs/mcp-tools.md` 是 MCP 工具目录事实源;若未来配置与本文冲突,以本文与执行合同为准,先修订合同再变更配置。
|
|
- `github deferred` 在本期为硬边界,不得在实现过程中偷偷启用。
|
|
|
|
## Rollback
|
|
- 停止使用本机 `.mcp.json` 中的 `postgres` server。
|
|
- 删除本机凭据或改回占位配置。
|
|
- 保留文档、示例配置与校验脚本,作为后续 phase 的治理基线。
|