Skip to content

Conversation

@domdomegg
Copy link
Member

@domdomegg domdomegg commented Nov 20, 2025

Summary

Simplify outputSchemas for text-only tool responses from complex nested arrays to simple { content: z.string() } format. All tool responses now include structuredContent matching their outputSchema, fixing MCP protocol violations.

Changes

  • filesystem server: Simplified 14 text-only tools (read_file, read_text_file, read_multiple_files, write_file, edit_file, create_directory, list_directory, list_directory_with_sizes, directory_tree, move_file, search_files, get_file_info, list_allowed_directories)

Test plan

  • All builds compile successfully without TypeScript errors
  • Tested filesystem endpoints: read_text_file, list_directory, get_file_info
  • All MCP protocol validations pass with structuredContent properly included

…ntent

For text-only tool responses, simplify outputSchemas from complex nested
arrays to simple { content: z.string() } format. All tool responses now
include structuredContent matching their outputSchema, fixing MCP protocol
violations when tools had output schemas but no structured content.

This applies to both filesystem and everything servers.
@domdomegg domdomegg force-pushed the adamj/simplify-output-schemas branch from 47986f1 to 3f2ddb0 Compare November 20, 2025 21:44
@domdomegg domdomegg changed the title fix: simplify output schemas for text-only tools fix(filesystem): simplify output schemas and fix structuredContent Nov 20, 2025
@olaservo olaservo merged commit 33e029f into main Nov 21, 2025
24 checks passed
@olaservo olaservo deleted the adamj/simplify-output-schemas branch November 21, 2025 05:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants