openclaw - ✅(Solved) Fix [Bug]: Parameter-free MCP tool schema regression still reproducible in v2026.5.2 [1 pull requests, 1 comments, 2 participants]

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…
GitHub stats
openclaw/openclaw#77043Fetched 2026-05-05 05:53:08
View on GitHub
Comments
1
Participants
2
Timeline
4
Reactions
2
Timeline (top)
closed ×1commented ×1cross-referenced ×1labeled ×1

After upgrading to OpenClaw v2026.5.2, the parameter-free MCP tool schema issue from #75362 is still reproducible: openai/gpt-5.4 rejects flux-mcp__get_flux_instance with object schema missing properties.

Error Message

  1. Observe the request fail with an OpenAI schema validation error.

Root Cause

After upgrading to OpenClaw v2026.5.2, the parameter-free MCP tool schema issue from #75362 is still reproducible: openai/gpt-5.4 rejects flux-mcp__get_flux_instance with object schema missing properties.

Fix Action

Fix / Workaround

This previously worked after #60158 was fixed by #60176. That fix normalized truly empty MCP tool schemas {} into { type: "object", properties: {} }, so OpenAI should not reject parameter-free MCP tools with object schema missing properties.

PR fix notes

PR #77230: fix(mcp): normalize parameter-free tool inputSchema for OpenAI (#77043)

Description (problem / solution / changelog)

Fixes #77043

Problem

Bundle MCP tools created in pi-bundle-mcp-materialize.ts were assigned raw inputSchema from MCP servers without normalization. Unlike plugin tools (which pass through normalizeToolParameters in pi-tools.ts) and the provider-level normalizeOpenAIToolSchemas hook, bundle MCP tools were appended to effectiveTools after all normalization steps in attempt.ts:1115.

When an MCP server returns a parameter-free tool with inputSchema: {} or {type: "object"} (missing properties), OpenAI rejects it with:

400 Invalid schema for function 'flux-mcp__get_flux_instance': In context=(), object schema missing properties.

Fix

Apply normalizeToolParameterSchema to bundle MCP tool inputSchema at materialization time, ensuring empty/incomplete schemas are promoted to {type: "object", properties: {}}.

Root Cause (same as #75362 / #60158)

The previous fixes (#60176, #75401) addressed this for plugin tools and the OpenAI provider hook, but the bundle MCP materialization path was missed — it assigns parameters: tool.inputSchema directly without normalization, and these tools are combined with already-normalized tools after the normalization pipeline runs.

Test

Added pi-bundle-mcp-materialize.schema.test.ts covering:

  • Empty schema {}{type: "object", properties: {}}
  • {type: "object"} without properties → adds properties: {}
  • undefined/null inputSchema → {type: "object", properties: {}}
  • Valid schemas with properties preserved unchanged

Changed files

  • src/agents/pi-bundle-mcp-materialize.schema.test.ts (added, +68/-0)
  • src/agents/pi-bundle-mcp-materialize.ts (modified, +2/-1)
RAW_BUFFERClick to expand / collapse

Bug type

Regression (worked before, now fails)

Beta release blocker

No

Summary

After upgrading to OpenClaw v2026.5.2, the parameter-free MCP tool schema issue from #75362 is still reproducible: openai/gpt-5.4 rejects flux-mcp__get_flux_instance with object schema missing properties.

Steps to reproduce

  1. Run OpenClaw v2026.5.2.
  2. Configure flux-operator-mcp.
  3. Use model openai/gpt-5.4.
  4. Trigger a request path that registers or uses flux-mcp__get_flux_instance.
  5. Observe the request fail with an OpenAI schema validation error.

Expected behavior

Parameter-free MCP tool schemas should be normalized before being sent to OpenAI.

This previously worked after #60158 was fixed by #60176. That fix normalized truly empty MCP tool schemas {} into { type: "object", properties: {} }, so OpenAI should not reject parameter-free MCP tools with object schema missing properties.

Actual behavior

On OpenClaw v2026.5.2, the same schema validation failure is still observed for flux-mcp__get_flux_instance.

This appears to be the same issue reported in #75362, which was filed against v2026.4.27, but the problem is still not fixed in v2026.5.2.

OpenClaw version

v2026.5.2

Operating system

Official OpenClaw image

Install method

Official OpenClaw image

Model

openai/gpt-5.4

Provider / routing chain

openclaw -> openai

Additional provider/model setup details

No response

Logs, screenshots, and evidence

Impact and severity

No response

Additional information

No response

extent analysis

TL;DR

The issue can be resolved by re-applying the schema normalization fix from #60176 to ensure parameter-free MCP tool schemas are correctly formatted for OpenAI.

Guidance

  • Review the changes made in #60176 to understand how parameter-free MCP tool schemas were normalized to prevent OpenAI schema validation errors.
  • Verify that the normalization logic is still applied in OpenClaw v2026.5.2 and that it correctly handles the flux-mcp__get_flux_instance schema.
  • Check if there are any changes in OpenClaw v2026.5.2 that might be overriding or bypassing the normalization fix.
  • Test the fix by triggering a request path that registers or uses flux-mcp__get_flux_instance and verify that the request no longer fails with an OpenAI schema validation error.

Example

No code example is provided as the issue does not contain sufficient information about the specific code changes made in #60176.

Notes

The issue appears to be a regression of a previously fixed bug, and re-applying the normalization fix from #60176 may resolve the issue. However, without more information about the changes made in OpenClaw v2026.5.2, it is difficult to provide a more specific solution.

Recommendation

Apply workaround: Re-apply the schema normalization fix from #60176 to ensure parameter-free MCP tool schemas are correctly formatted for OpenAI. This is recommended because the issue appears to be a regression of a previously fixed bug, and re-applying the fix may resolve the issue.

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…

FAQ

Expected behavior

Parameter-free MCP tool schemas should be normalized before being sent to OpenAI.

This previously worked after #60158 was fixed by #60176. That fix normalized truly empty MCP tool schemas {} into { type: "object", properties: {} }, so OpenAI should not reject parameter-free MCP tools with object schema missing properties.

Still need to ship something?

×6

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

Back to top recommendations

TRENDING