{"version":"2.1.281","anchor":"plugin-validate-mcp-server-paths-inline-servers-and-unquot","canonical_anchor":"plugin-validate-mcp-server-paths-inline-servers-and-unquot","heading":"plugin validate: MCP server paths, inline servers and unquoted hook placeholders","tier":"use","area":"Plugins","url":"https:\/\/changelogs.core-directive.com\/v\/2.1.281\/e\/plugin-validate-mcp-server-paths-inline-servers-and-unquot","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.281","markdown":"### plugin validate: MCP server paths, inline servers and unquoted hook placeholders\n\n`plugin validate` now checks MCP server entries and warns about unquoted placeholders in hook commands\n\n**What**\n\nChecking a plugin with `plugin validate` now covers more:\n\n- `mcpServers` file paths: checked to exist (web addresses are skipped). A missing .json file gets a warning, because the loader silently skips it and none of its servers load.\n\n- Inline MCP server entries: validated.\n\n- Hook commands: a warning when a shell command uses a placeholder without quotes around it. A hook is a command that runs automatically at a set point.\n\n- State: types contracts report the state they declare, and modules report the state they read and write. State owned by other plugins is listed as unchecked.\n\n**Why**\n\nA mistyped MCP server file path used to fail with no message at all. Now it shows up when you validate the plugin. The quoting warning catches commands that can break when a filled-in value contains spaces or special characters.\n\n- Area: Plugins\n- Tier: Use it now\n- Useful: 3\/5\n- Signal: 1\/5"}