QONTO-WP-0003-T06: MCP smoke script + operator runbook update
Add scripts/smoke_mcp.py, same shape as smoke_rest_api.py (random port, subprocess-launch against QONTO_FIXTURE_DIR, wait on /v1/health, assert, clean teardown), but goes further: generates a fresh QONTO_ASSISTANT_MCP_TOKEN per run and connects through it with the mcp SDK's streamablehttp_client, so the smoke exercises T03's bearer-token gate instead of bypassing it. Lists tools, calls all four, and confirms an out-of-catalog tool name comes back as a normal isError result through the real wire protocol rather than a crash. Extend docs/operator-runbook.md with a "One-command MCP smoke" section next to the REST one; cross-link from docs/mcp-integration.md's manual smoke walkthrough so the two don't drift. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
parent
c1e33decd9
commit
0dc001bf53
4 changed files with 208 additions and 1 deletions
|
|
@ -155,6 +155,11 @@ the harness allows, per the shared `PolicyEngine.decide()` path.
|
|||
|
||||
## Local smoke: start with auth enabled, connect with only this snippet
|
||||
|
||||
For a one-command version of everything below (random port, generated
|
||||
token, all four tools, plus the out-of-catalog deny check), see
|
||||
`scripts/smoke_mcp.py` in `docs/operator-runbook.md`. The manual walkthrough
|
||||
here is for when you want to see each step explicitly.
|
||||
|
||||
```bash
|
||||
export QONTO_FIXTURE_DIR=tests/fixtures/qonto
|
||||
export QONTO_ASSISTANT_MCP_TOKEN=dev-local-token
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue