Christopher Hertel
d150772e24
[Schema][Server] Add MCP Apps extension (io.modelcontextprotocol/ui) support ( #281 )
...
* feat: add MCP Apps extension (io.modelcontextprotocol/ui) support
Adds support for the MCP Apps protocol extension, which lets servers
expose interactive HTML UIs as resources rendered by spec-conforming
clients (e.g. Goose) in sandboxed iframes.
- Generic extension plumbing: ServerExtensionInterface and
Builder::enableExtension(), with extensions advertised under
capabilities.extensions during the initialize handshake.
ClientCapabilities/ServerCapabilities gain an extensions field.
- Schema DTOs under Mcp\Schema\Extension\Apps: the McpApps marker,
UiToolMeta, ToolVisibility enum, UiResourceContentMeta,
UiResourceCsp, and UiResourcePermissions (with empty-object
presence markers per spec).
- A worked weather example under examples/server/mcp-apps/ with a
minimal spec-conforming view (ui/initialize handshake, postMessage
JSONRPCMessage objects, and ResizeObserver-driven size reporting).
- docs/extensions.md guide with pointers from index.md and
examples.md to the ext-apps repository for the TypeScript SDK and
richer view-side patterns.
- Unit and inspector snapshot test coverage.
Spec: https://github.com/modelcontextprotocol/ext-apps
* Type UiToolMeta visibility as ToolVisibility enum
Also fix UiResourceContentMeta::jsonSerialize() return phpdoc.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* Address review nitpicks for MCP Apps extension
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* Apply PR review feedback for MCP Apps extension
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
* Add regression tests and CHANGELOG entry for capabilities extensions
- Pin the is_array() guards on extensions in ServerCapabilities and
ClientCapabilities::fromArray() with explicit non-array payload tests.
- Pin the isset()-rejects-null contract in UiResourcePermissions::fromArray().
- Surface the new extensions field on both capability classes in CHANGELOG.
- Inline the ?: idiom in Builder::build() to match the surrounding style.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-06-01 09:35:54 +01:00
..
StdioCachedDiscoveryTest-prompts_list.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioCachedDiscoveryTest-resources_list.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioCachedDiscoveryTest-resources_templates_list.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioCachedDiscoveryTest-tools_call-add_numbers.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioCachedDiscoveryTest-tools_call-add_numbers_negative.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioCachedDiscoveryTest-tools_call-divide_numbers.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioCachedDiscoveryTest-tools_call-divide_numbers_decimal.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioCachedDiscoveryTest-tools_call-multiply_numbers.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioCachedDiscoveryTest-tools_call-multiply_numbers_zero.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioCachedDiscoveryTest-tools_call-power.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioCachedDiscoveryTest-tools_call-power_zero_exponent.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioCachedDiscoveryTest-tools_list.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioCustomDependenciesTest-prompts_list.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioCustomDependenciesTest-resources_list.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioCustomDependenciesTest-resources_read-read_system_stats.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioCustomDependenciesTest-resources_templates_list.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioCustomDependenciesTest-tools_call-add_task.json
feat: Add output schema support to MCP tools ( #153 )
2026-01-11 21:14:48 +01:00
StdioCustomDependenciesTest-tools_call-complete_task.json
feat: Add output schema support to MCP tools ( #153 )
2026-01-11 21:14:48 +01:00
StdioCustomDependenciesTest-tools_call-list_user_tasks.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioCustomDependenciesTest-tools_list.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioDiscoveryCalculatorTest-prompts_list.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioDiscoveryCalculatorTest-resources_list.json
[Server] Add support for icons on explicit builder registration and attributes ( #142 )
2025-11-13 22:39:18 +01:00
StdioDiscoveryCalculatorTest-resources_read-read_config.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioDiscoveryCalculatorTest-resources_read.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioDiscoveryCalculatorTest-resources_templates_list.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioDiscoveryCalculatorTest-tools_call-calculate_sum.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioDiscoveryCalculatorTest-tools_call-update_setting.json
feat: Add output schema support to MCP tools ( #153 )
2026-01-11 21:14:48 +01:00
StdioDiscoveryCalculatorTest-tools_call.json
feat: Add output schema support to MCP tools ( #153 )
2026-01-11 21:14:48 +01:00
StdioDiscoveryCalculatorTest-tools_list.json
[Server] Use getDescription to get all descriptions. ( #188 )
2026-01-11 22:08:05 +01:00
StdioEnvVariablesTest-prompts_list.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioEnvVariablesTest-resources_list.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioEnvVariablesTest-resources_templates_list.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioEnvVariablesTest-tools_call-process_data_debug.json
feat: Add output schema support to MCP tools ( #153 )
2026-01-11 21:14:48 +01:00
StdioEnvVariablesTest-tools_call-process_data_default.json
feat: Add output schema support to MCP tools ( #153 )
2026-01-11 21:14:48 +01:00
StdioEnvVariablesTest-tools_call-process_data_production.json
feat: Add output schema support to MCP tools ( #153 )
2026-01-11 21:14:48 +01:00
StdioEnvVariablesTest-tools_list.json
[Server] Use getDescription to get all descriptions. ( #188 )
2026-01-11 22:08:05 +01:00
StdioExplicitRegistrationTest-prompts_get-personalized_greeting_alice.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioExplicitRegistrationTest-prompts_get-personalized_greeting_bob.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioExplicitRegistrationTest-prompts_list.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioExplicitRegistrationTest-resources_list.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioExplicitRegistrationTest-resources_read-read_app_version.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioExplicitRegistrationTest-resources_read-read_item_123_details.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioExplicitRegistrationTest-resources_read-read_item_ABC_details.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioExplicitRegistrationTest-resources_templates_list.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioExplicitRegistrationTest-tools_call-echo_text.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioExplicitRegistrationTest-tools_call-echo_text_special_chars.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioExplicitRegistrationTest-tools_list.json
[Server] Feat: Add comprehensive HTTP inspector tests with improved framework ( #125 )
2025-10-30 17:47:53 +01:00
StdioMcpAppsTest-prompts_list.json
[Schema][Server] Add MCP Apps extension (io.modelcontextprotocol/ui) support ( #281 )
2026-06-01 09:35:54 +01:00
StdioMcpAppsTest-resources_list.json
[Schema][Server] Add MCP Apps extension (io.modelcontextprotocol/ui) support ( #281 )
2026-06-01 09:35:54 +01:00
StdioMcpAppsTest-resources_read-read_weather_ui.json
[Schema][Server] Add MCP Apps extension (io.modelcontextprotocol/ui) support ( #281 )
2026-06-01 09:35:54 +01:00
StdioMcpAppsTest-resources_templates_list.json
[Schema][Server] Add MCP Apps extension (io.modelcontextprotocol/ui) support ( #281 )
2026-06-01 09:35:54 +01:00
StdioMcpAppsTest-tools_call-get_weather_london.json
[Schema][Server] Add MCP Apps extension (io.modelcontextprotocol/ui) support ( #281 )
2026-06-01 09:35:54 +01:00
StdioMcpAppsTest-tools_call-get_weather_tokyo.json
[Schema][Server] Add MCP Apps extension (io.modelcontextprotocol/ui) support ( #281 )
2026-06-01 09:35:54 +01:00
StdioMcpAppsTest-tools_list.json
[Schema][Server] Add MCP Apps extension (io.modelcontextprotocol/ui) support ( #281 )
2026-06-01 09:35:54 +01:00