Skip to content

[v1.x] Unknown custom formats spam console on listTools (e.g. google-duration) #2855

Description

@senorMk

What happened?

Calling listTools against a server whose outputSchemas use a custom format (e.g. Google Monitoring MCP with format google-duration) prints one Ajv warning per subschema path:

unknown format google-duration ignored in schema at path #/defs/Aggregation/properties/alignmentPeriod

Comes from AjvJsonSchemaValidator default instance (strict:false, validateFormats:true) in src/validation/ajv-provider.ts, via Client.cacheToolMetadata compiling every tool outputSchema. Dozens of lines for a single listTools.

What did you expect?

A generic way to stay quiet: either silence unknown-format warnings (custom logger / validateFormats handling) or support registering extra formats, so one vendor-specific format cannot spam every client.

Code to reproduce

getValidator({ type: object, properties: { d: { type: string, format: google-duration } } })

SDK version

@modelcontextprotocol/sdk 1.29.x / 1.30.x (v1.x line)

Area

Client

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    v1Issues / PRs related to v1.xv2Ideas, requests and plans for v2 of the SDK which will incorporate major changes and fixes

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions