Skip to content

compat

compat

Detect a Houdini plugin that is out of step with this MCP server.

The two halves ship separately: the server from PyPI, the plugin from the repository. Upgrading one and not the other is easy to do and, until now, invisible. A plugin older than the server is missing commands the server's tools call, and the only symptom is one tool failing with "No handler registered for command", which reads like a bug rather than a version mismatch.

The check compares capability rather than version numbers. list_commands already exists on the plugin, and data/required_commands.json is generated from the client's own execute() call sites, so nothing has to remember to bump a version constant when a command is added.

Functions:

Name Description
compatibility_warning

Return a warning when the plugin is missing commands, else None.

missing_commands

Commands this server needs that the connected plugin does not have.

required_commands

Commands this server's tools call, or empty when unreadable.

Functions:

compatibility_warning

compatibility_warning(available: list[str] | None) -> str | None

Return a warning when the plugin is missing commands, else None.

missing_commands

missing_commands(available: list[str] | None) -> list[str]

Commands this server needs that the connected plugin does not have.

required_commands cached

required_commands() -> frozenset[str]

Commands this server's tools call, or empty when unreadable.

Never raises: an unreadable manifest degrades the check to "no opinion", which is the right outcome for a diagnostic.