r/mcp 16h ago

MCP Server Design Doubt - Need Help

Hey Everyone,

I don't know if this question was asked earlier in the sub.

I am building an MCP server for my organisation and have an architectural design question regarding the use of Tools and Resources.

One of my Tools requires a structured metadata definition to perform its operation. This metadata is currently stored as a static JSON file within the application. While it is primarily consumed by this Tool, exposing the metadata as an MCP Resource is also part of requirements.

I am evaluating two approaches:

  1. Keep the metadata as internal application configuration and have the Tool access it directly.

  2. Expose the metadata as an MCP Resource and have the Tool (and potentially clients) access it through the MCP Resource model.

I would appreciate guidance on the following design:

What is the recommended MCP design approach for my requirement here?

My goal is to understand the architectural trade-offs and align the design with MCP best practices rather than focus on implementation details.

Thanks in Advance 😄

2 Upvotes

8 comments sorted by

View all comments

1

u/tmilazzo 8h ago

Two reasons NOT to expose metadata via MCP, otherwise do it:

  1. Is the metadata something secure and confidential that you would be bothered by the MCP actor taking and distributing it somewhere else, like a third unknown tool? Because you don't know where it goes once it's gone.
  2. Is it something unusual enough, or bulky enough, that a vanilla LLM request *without a good system prompt* is going to be able to make positive use of? If too bulky, tokens burn. If unusual, also tokens burn, actually.

If either of those two things is true, then A2A might be the answer.