diff options
| author | main <main@swarm.moe> | 2026-03-22 22:20:17 -0400 |
|---|---|---|
| committer | main <main@swarm.moe> | 2026-03-22 22:20:17 -0400 |
| commit | d986442e8e4bc2d716c9d63159a1cfa7b1e6ed76 (patch) | |
| tree | b9ca3d0cb62b5c59e614abfb6f74ac5310c69c2f /README.md | |
| download | phone_opus-d986442e8e4bc2d716c9d63159a1cfa7b1e6ed76.zip | |
Bootstrap consultative Claude Code MCP
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..86c66f6 --- /dev/null +++ b/README.md @@ -0,0 +1,43 @@ +# phone_opus + +`phone_opus` is a deliberately narrow MCP server for consultative Claude Code +calls. + +It exposes one blocking domain tool: + +- `consult`: run the system `claude` install in print mode, wait for the answer, + and return the response plus execution metadata + +The server keeps the public MCP session in a durable host, isolates the actual +Claude invocation in a disposable worker, and ships standard health and +telemetry surfaces: + +- `health_snapshot` +- `telemetry_snapshot` + +## Runtime posture + +Each `consult` call runs Claude Code with: + +- the system `claude` binary +- the normal settings stack, including user-level defaults +- no configured MCP servers (`--strict-mcp-config --mcp-config '{"mcpServers":{}}'`) +- a read-only built-in toolset: + - `Bash,Read,Grep,Glob,LS,WebFetch,WebSearch` +- `--permission-mode dontAsk`, so only preapproved read-only Bash patterns can + execute and edit tools never appear in the session + +## Development + +Run the fast gate with: + +```bash +python check.py +``` + +Run the server locally with: + +```bash +cargo run -- mcp serve +``` + |