{"repo":"NousResearch/hermes-agent","public_id":"5468","display_label":"Unexpected 'tools' field in MCP sampling capabilities","summary":"Multiple reports and fixes relate to an unexpected 'tools' field being serialized into the MCP client handshake's sampling capabilities, causing strict servers to reject the connection. Proposed fixes involve making the field opt-in or removing it from the default serialization.","subsystem":"mcp","counts":{"members":7,"open_issues":1,"open_issues_distinct":1,"open_prs":2,"closed_issues":2,"merged_prs":1,"attempt_prs":3},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":131891,"merged_at":"2026-10-05T21:47:33+00:00"},"resolution":{"state":"partially_resolved","by":"pr-131891"},"freshness":{"state":"verified","last_verified_at":"2026-10-05T21:47:33+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_PARTIAL","link_density":0.2419047619047619},"fix_edges":[{"issue_number":5468,"pr_number":131891,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-10-05T21:47:33+00:00"}],"members":[{"kind":"issue","number":5468,"title":"mcp_tool: SamplingCapability(tools=...) sub-capability rejected by strict MCP servers (Jackson FAIL_ON_UNKNOWN_PROPERTIES)","url":null,"state":"closed"},{"kind":"issue","number":47963,"title":"Zoho Calendar MCP Connection Fails with \"Unrecognized field 'tools'\" During Initialization","url":null,"state":"open"},{"kind":"issue","number":55469,"title":"Bug: HTTP Streamable MCP connection fails because ClientCapabilities.Sampling serialized with unexpected \"tools\" field","url":null,"state":"closed"},{"kind":"pr","number":18209,"title":"fix(mcp): make sampling tools capability opt-in","url":null,"state":"open","close_reason":{"refs":[{"kind":"pr","value":"#47963","number":47963},{"kind":"pr","value":"#55469","number":55469}],"category":"uncategorized","implication":"needs_llm"},"merged":false},{"kind":"pr","number":55522,"title":"fix(mcp): remove empty SamplingToolsCapability from client handshake","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#18209","number":18209},{"kind":"pr","value":"#5468","number":5468}],"category":"uncategorized","implication":"needs_llm"},"merged":false},{"kind":"pr","number":106942,"title":"fix(mcp): make sampling.tools capability opt-in via expose_client_tools","url":null,"state":"open","close_reason":{"refs":[{"kind":"pr","value":"#5468","number":5468}],"category":"uncategorized","implication":"needs_llm"},"merged":false},{"kind":"pr","number":131891,"title":"fix(mcp): make sampling.tools capability opt-in via expose_client_tools [risk 0.30]","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["cli-config.yaml.example","skills/autonomous-ai-agents/hermes-agent/references/native-mcp.md","tests/tools/test_mcp_tool.py","tools/mcp_tool_sampling.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}