mcp_probe 0.3.2
mcp_probe: ^0.3.2 copied to clipboard
Conformance checks and a test harness for Model Context Protocol (MCP) servers. Runs any MCP server over stdio and asserts on its behavior from package:test. Built on dart_mcp.
0.3.2 #
example/probe_demo.dartprints a real report without a server of your own. It probes four servers that ship with the package: one that behaves and three that break something specific, so the output shows what a failure looks like before you have written anything to fail. The interesting one is a server that speaks the protocol correctly and is still unusable, because aprinton the way up puts a line on stdout where the transport expects only JSON-RPC. Its own tests would not catch that; what a user sees is a client that will not connect.example/README.mdcovers reading the report, pointing the probe at your own command, themcp_probe checkfront end for a pipeline, and asserting your server's actual behaviour with thetesting.darthelpers.test/readme_snippet_test.dartcompiles the snippet that README prints. It never runs, it only has to analyse, which is enough to keep a copied example from drifting away from the API it is describing.
0.3.1 #
- Declare the diagram in
pubspec.yamlso pub.dev renders it on the package page. It was already in the repository and the README, but pub.dev shows only what thescreenshots:field points at, so the page opened with prose where the picture should have been.
0.3.0 #
- Add the
utilities/pingconformance rule. MCP requires a server to answer apingrequest promptly with an empty result;checkServerand the CLI now send one and report an error if the server times out or answers with a protocol error, so a server that stops responding to liveness pings is caught.
0.2.0 #
- Add a command-line tool.
dart pub global activate mcp_probeinstalls anmcp_probe check <command> [args...]executable that runs a server over stdio, prints each conformance finding, and exits non-zero if any check reports an error, so it drops into a CI step without writing any Dart.
0.1.3 #
listTools,listResourcesandlistPromptsnow follownextCursorpagination and return every page combined. Previously only the first page was fetched, so a conformance run against a paginated server validated just those items and could report the server green without ever seeing the rest.
0.1.2 #
- Docs: tightened the README wording and visuals.
0.1.1 #
- Expand the package description to name what the package does in the words people search for. No code changes.
0.1.0 #
- Initial release.
McpServerHarness: runs an MCP server as a child process over stdio, with per-request timeouts and guaranteed process cleanup.checkServerandConformanceReport: conformance rules for the initialize handshake, declared capabilities, tool definitions, and JSON-RPC error behavior, with Markdown rendering.package:testhelpers in thepackage:mcp_probe/testing.dartentrypoint:expectToolExists,expectToolCallSucceeds,expectToolCallFails,expectResourceExists.