Skip to content

Allow a read-only MCP tool as a connection health check - #2355

Open
zrm625 wants to merge 1 commit into
UsefulSoftwareCo:mainfrom
zrm625:refactor/mcp-health-probes
Open

zrm625 wants to merge 1 commit into
UsefulSoftwareCo:mainfrom
zrm625:refactor/mcp-health-probes

Conversation

@zrm625

@zrm625 zrm625 commented Oct 23, 2026

Copy link
Copy Markdown
Contributor

Summary

Let users select one read-only MCP tool and its JSON arguments as an account health check. Candidates must have matching schemas across visible connections and must not be marked destructive. Error results, malformed responses, and auth or scope failures fail the check. Diagnostics redact credentials and discard upstream error text. Without a configured tool, health remains discovery-only.

Two changes outside the editor:

  • The SDK plugin context gains refreshCatalog, which reports whether discovery completed. A failed refresh offers no tools instead of a stale catalog. Existing refresh callers are unchanged.
  • Legacy-protocol tool results without a content field are now rejected. The SDK previously filled in content: [], so {} passed as a success. This applies to ordinary tool calls too.

Linked issue

Fixes #2354

Related to #2300. A suitable configured probe could detect that failure; its authentication cause remains separate.

Verification

  • bun run format:check
  • bun run lint
  • bun run typecheck
  • bun run test: passes with --filter=!@executor-js/cloud (38 tasks). The full run has 3 cloud membership-mirror failures that also fail on the base commit.
  • Three selfhost health-check scenarios passed: discovery-only MCP without safe candidates, HTTP POST preview/save, and unsupported methods. Recordings below predate the final internal catalog fix.

Positive MCP selection/execution has component and plugin coverage; the published emulator offers no read-only tool for browser coverage.

Checklist

  • Added a changeset for executor.
  • Added or updated tests for the new behaviour.
  • No secrets, credentials, or private data in the diff.

Recordings

MCP without an eligible probe keeps discovery-only health.

MCP discovery-only health check

Existing HTTP POST arguments still preview, save, and reopen.

HTTP health-check editor

Allow an explicitly selected read-only MCP tool to validate connection health
with JSON arguments and an optional identity field. Keep discovery-only health
when no probe is configured.

Fixes UsefulSoftwareCo#2354

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[feature] Use a read-only MCP tool as a connection health check

1 participant