Skip to content

No-arg MCP tool schemas omit properties, causing OpenAI/Codex rejection #106

@vish-dini

Description

@vish-dini

Summary

help (and likely other zero-argument MCP tools) are exposing inputSchema as {"type":"object"} without an explicit properties field.

OpenAI/Codex rejects the converted function schema with:

Invalid schema for function 'inboxapi__help': In context=(), object schema missing properties.

Local validation

I checked the CLI proxy code path locally. tools/list responses are rewritten, but schemas that already look like a bare object are passed through without normalization. That means a no-arg MCP tool can still surface as:

{ "type": "object" }

which becomes an OpenAI function parameters object missing properties.

Expected

For no-argument tools, the schema should include explicit empty properties, for example:

{
  "type": "object",
  "properties": {},
  "required": [],
  "additionalProperties": false
}

Impact

This blocks adding InboxAPI as an MCP server in OpenClaw/Codex whenever a tool like help is converted into an OpenAI-style function tool.

Notes

It may be worth normalizing all no-argument MCP tools, not just help, so every inputSchema that is logically empty still emits an explicit empty properties object.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions