modelcontextprotocol / modelcontextprotocol/ext-apps
Display mode negotiation is missing
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 2.9k
- Forks
- 387
- Avg merge
- 3h 21m
- Merged PRs (30d)
- 6
Description
Currently the spec has:
displayMode- host tells app the current modeavailableDisplayModes- host tells app what modes it supports
But there's no way for the app to declare what display modes it supports.
For example, if an app wants to say "hey I support fullscreen", there's no mechanism for that. The host just assumes all apps work in all modes?
We need some negotiation where:
- App declares its supported display modes (maybe in
ui/initializecapabilities?) - Host knows its own supported modes
- They intersect to determine what's actually available
- App can request a mode change (currently also missing)
Right now the display mode stuff is one-directional and incomplete.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the protocol definitions for displayMode, availableDisplayModes, and the ui/initialize capabilities mentioned in the issue. Trace how host-to-app display information is currently represented, then define the missing app declaration and mode-change request behavior. Done means the protocol specifies capability intersection and a complete negotiation flow.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- api, backend-api-design
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100