Skip to content

Conversation

@andrewmcgivery
Copy link
Contributor

@andrewmcgivery andrewmcgivery commented Dec 11, 2025

  • When "app" query param is provided, only expose the tools appropriate for that app
  • Refactor list_tools to have a list_tools_impl method to make testing easier

The purpose of this change is to make it easier to expose multiple apps from the same MCP server but avoid having multiple apps tools exposed at the same time, confusing the LLM.

I chose a url param (/mcp?app=the-store) because it's the only universal thing all clients/platforms have, compared to a header which isn't universally supported (including ChatGPT NOT supporting it).

The result is that the app tools are only exposed when the url param is provided and only the tools for that app are provided (+ the execute tool).

Out of scope

I want to do the same thing for resources but I'll do that as a separate PR as to not blow this one up too big. :)

… for that app, refactor list_tools to have a list_tools_impl method to make testing easier
@apollo-librarian
Copy link

apollo-librarian bot commented Dec 11, 2025

✅ Docs preview has no changes

The preview was not built because there were no changes.

Build ID: 43b042cc95daf2e80a7895d1
Build Logs: View logs

@andrewmcgivery andrewmcgivery marked this pull request as ready for review December 11, 2025 23:17
@github-actions
Copy link

Changeset file missing for PR

All changes should include an associated changeset file.
Please refer to README for more information on generating changesets.

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.

2 participants