hermes - 💡(How to fix) Fix [mcp_lazy] chore: undeclared pre_tool_call hook, nonexistent 'mcp_load_tools' name in docs, missing tests

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…

Error Message

The actual registered tool is load_mcp_tools, but plugin.yaml:3 description, meta_tool.py:1,9,25,80, pool.py:27, and __init__.py:4 all call it mcp_load_tools — a name that does not exist (and ironically would itself be stubbed by the mcp_ filter). The error string at meta_tool.py:80 is operator-facing. Fix: replace mcp_load_tools with load_mcp_tools in manifest + docstrings + error string.

RAW_BUFFERClick to expand / collapse

Severity: LOW (convention/docs bundle)

Manifest and docs divergences in mcp_lazy. Bundled.

ML-7: pre_tool_call hook not declared in plugin.yaml

plugins/mcp_lazy/plugin.yaml declares only transform_tools and on_session_reset in hooks:, but register() also registers pre_tool_call (__init__.py:79). Upstream rubric #1 requires the manifest to declare every consumed hook. Fix: add pre_tool_call to manifest hooks:.

ML-8: docs/manifest reference a nonexistent tool name mcp_load_tools

The actual registered tool is load_mcp_tools, but plugin.yaml:3 description, meta_tool.py:1,9,25,80, pool.py:27, and __init__.py:4 all call it mcp_load_tools — a name that does not exist (and ironically would itself be stubbed by the mcp_ filter). The error string at meta_tool.py:80 is operator-facing. Fix: replace mcp_load_tools with load_mcp_tools in manifest + docstrings + error string.

ML-9: missing regression tests for the edge surfaces

No test exercises the ML-1 server-named-server collision, the ML-3 _prev_mode leak across evict, or the ML-4 get_pool create race. Fix: add regression tests alongside the fixes for those issues.


Filed from opus-4.8 plugin audit (mcp_lazy).

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING