Skip to content

Conversation

@richardkmichael
Copy link
Contributor

@richardkmichael richardkmichael commented Jul 4, 2025

Add a structuredContent tool to Everything server to demonstrate Tool Result Structured Content, added in spec 2025-06-18.

Note:

Includes these changes unrelated to the Structured Content tool: (only the last commit is the new tool)

  • Reformat server instructions to be easier to read and maintain
  • Consistent code formatting (this project has no prettier / lint configuration)
  • Organize the code
    • group Tools, Resources, Completions together
    • use a consistent order for everywhere Tools to ease review of future additions

Description

Server Details

  • Server: everything
  • Changes to: tools

Motivation and Context

The Everything server is helpful for learning about MCP and testing clients. More specification
coverage would be ideal, so add this new feature from the latest spec.

How Has This Been Tested?

Tested with the MCP Inspector. The Inspector gained Tool Structured Output support in PR
456
.

Breaking Changes

No.

Types of changes

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)
  • Documentation update

Checklist

  • I have read the MCP Protocol Documentation
  • My changes follows MCP security best practices
  • I have updated the server's README accordingly
  • I have tested this with an LLM client
  • My code follows the repository's style guidelines
  • New and existing tests pass locally
  • I have added appropriate error handling
  • I have documented all environment variables and configuration options

Additional context

I also organized tool related code to make adding future tools easier.

@olaservo olaservo added server-everything Reference implementation for the Everything MCP server - src/everything enhancement New feature or request labels Jul 7, 2025
cliffhall
cliffhall previously approved these changes Jul 16, 2025
Copy link
Member

@cliffhall cliffhall left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@richardkmichael thanks for this! Nice implementation.

Even though there are some unrelated drive-by changes (to instructions markdown, and order of tools) I'll approve. In the future, it would be nice for the PR description to call out such changes ahead of time, to make for fewer surprises in the review process.

Tested locally, LGTM! 👍
Screenshot 2025-07-16 at 2 57 59 PM

@cliffhall
Copy link
Member

cliffhall commented Jul 16, 2025

@richardkmichael Just noticed, you need to resolve conflicts before the PR can be merged. Sorry it took so long to get to this one. It was buried in a mountain of PRs to add servers to the README. 😔

@richardkmichael
Copy link
Contributor Author

@richardkmichael thanks for this! Nice implementation.

In the future, it would be nice for the PR description to call out such changes ahead of time, to make for fewer surprises in the review process.

Helpful feedback, thanks @cliffhall . I adjusted the PR description in case anyone else looks at it.

Tested locally, LGTM! 👍

Rebased, hopefully good now.

I have a tiny bit more cleanup, but it'll be a small separate PR to avoid further distraction here.

Copy link
Member

@cliffhall cliffhall left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! 👍

@cliffhall cliffhall merged commit 8023ca6 into modelcontextprotocol:main Jul 29, 2025
@richardkmichael richardkmichael deleted the add-structured-content-tool branch July 30, 2025 23:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request server-everything Reference implementation for the Everything MCP server - src/everything

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants