Uh oh!
There was an error while loading. Please reload this page.
feat: export method names as consts - #192
Conversation
commit: |
There was a problem hiding this comment.
Pull request overview
This PR exports method name constants to provide a type-safe, stable API for checking MCP UI protocol message methods, replacing the need for brittle Zod schema introspection patterns.
- Adds 14 method name constants (e.g.,
MCP_UI_OPEN_LINK_METHOD,MCP_UI_INITIALIZE_METHOD) for all MCP UI protocol messages - Exports all constants through the main types module for public API access
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| src/spec.types.ts | Defines 14 method name string constants with comprehensive JSDoc documentation explaining their purpose and usage |
| src/types.ts | Re-exports all method name constants from spec.types.ts to make them available in the public API |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 2 out of 2 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Uh oh!
There was an error while loading. Please reload this page.
Merge latest changes from main including: - Vue, Svelte, Preact, and Solid basic server examples (#141) - safeAreaInsets support (#202) - E2E test fixes (#206) - npm publishing for examples (#184) - ui.resourceUri optional (#210) - Method names as consts (#192) - toolInfo.id optional (#216) - PostMessageTransport security fixes (#207, #208) - Server-utils.ts refactoring
External libraries that want to adhere to the spec (through the official bridge SDK) have to use brittle JS tricks like
event.data.method === McpUiSandboxProxyReadyNotificationSchema.shape.method._def.values[0]. Exporting the method names as constants makes it much easier to extend the spec without fragmentation.