Skip to content
This repository was archived by the owner on Oct 2, 2026. It is now read-only.

fix(healthcare): support MCP tool discovery - #138

Merged
imran-siddique merged 1 commit into
agentrust-io:mainfrom
dinakarjs:fix/healthcare-tools-list
Oct 2, 2026
Merged

imran-siddique merged 1 commit into
agentrust-io:mainfrom
dinakarjs:fix/healthcare-tools-list

Conversation

@dinakarjs

Copy link
Copy Markdown
Contributor

The healthcare mock interpreted tools/list as tools/call, returning an unknown-tool error and leaving upstream drift unchecked. Route by method and list all four EHR tools with the approved catalog descriptions and MCP inputSchema values. Existing call handlers remain unchanged; unsupported methods return -32601.

Follow-up to #134, limited to healthcare/server/mock_mcp_server.py. Upstream definitions are stored independently of the gateway catalog so a change remains detectable.

Validation:

  • Live HTTP listing matches all four catalog definitions and handler names, preserving the request ID. All four calls match existing handlers; unknown tool/method and wrong-path cases pass.
  • Published cmcp-runtime 0.7.0 in development mode: standard scenario allows all four calls; high-risk and contraindication allow the first three and deny the final write with POLICY_DENY. Each closed session produces a signed TRACE record with no drift or catalog exceptions. No tools discovery incomplete warning.
  • Negative control: changed ehr.patient_record_lookup’s upstream description while retaining the approved catalog. Runtime logs UPSTREAM_CATALOG_DRIFT and blocks with HTTP 503 / CATALOG_DRIFT.
  • All 6 existing clinical-engine tests pass. Python compilation and git diff --check pass.

Commit carries DCO sign-off.

Signed-off-by: Codex <codex@openai.com>
@dinakarjs
dinakarjs requested review from a team and carloshvp as code owners October 2, 2026 07:57
@imran-siddique
imran-siddique merged commit f6edfd8 into agentrust-io:main Oct 2, 2026
20 of 21 checks passed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants