diff options
| author | Igor Soarez <igor@soarez.org> | 2026-10-29 21:40:43 +0000 |
|---|---|---|
| committer | Igor Soarez <igor@soarez.org> | 2026-10-29 21:40:43 +0000 |
| commit | b3448031088447d76d80ac6b2bfa08320973a2d9 (patch) | |
| tree | 09296e817e89ef2ef098e9259e26872be2327c83 /AGENTS.md | |
| parent | b5100c2e088ef5c966b114f968847de779ed852f (diff) | |
pi: generate mcp.json from ~/.config/pi/mcp.d fragments
pi reads user-level MCP servers from one file, and a private layer
linked that file to the same copy on every host -- so every host got a
server only one machine could run. Build it the way models.json is
built, from fragments another layer or one machine drops in mcp.d; this
repo ships none, and with none the file is left absent.
pi-models.py becomes pi-merge.py, which takes the key to merge and an
optional base file, and serves both.
Diffstat (limited to 'AGENTS.md')
| -rw-r--r-- | AGENTS.md | 2 |
1 files changed, 2 insertions, 0 deletions
@@ -67,6 +67,7 @@ what it needs through these, each of them optional and absent by default: | `~/.claude/rules/*.md` | extra Claude Code user memory, loaded next to `config/claude/CLAUDE.md` | | `~/.config/pi/settings.d/*.json` | pi settings merged into the generated `~/.pi/agent/settings.json` by `link/pi.sh` | | `~/.config/pi/models.d/*.json` | pi providers merged into the generated `~/.pi/agent/models.json` by `link/pi.sh` | +| `~/.config/pi/mcp.d/*.json` | pi MCP servers, merged into the generated `~/.pi/agent/mcp.json` by `link/pi.sh`; this repo ships none | | `~/.pi/agent/extensions/*`, real files | pi extensions only this machine has -- herdr's pi integration installs `herdr-agent-state.ts` here | pi itself, beside the repo's extensions, which `link/pi.sh` links in one by one | A credential in a pi provider -- `apiKey`, or anything under `headers` -- is a @@ -189,6 +190,7 @@ tracked config says so, and in no repo: | `~/.config/dot/skip` | which `link/` parts this machine does not want, one name per line | `link/lib.sh`, as each part starts | | `~/.config/dot/inbox-key` | the key this machine signs change requests with | `bin/dot-request` | | `~/.config/pi/models.d/*.json` | pi providers only this machine has -- a model served somewhere other than a vendor's own API | `link/pi.sh`, merged over `config/pi/models.json` | +| `~/.config/pi/mcp.d/*.json` | pi MCP servers only this machine has | `link/pi.sh`, merged into `~/.pi/agent/mcp.json` | Not covered today: bat, lsd, and `~/.claude/settings.json` -- which a machine can only leave alone entirely, by naming `claude` in the skip file. |
