6 Commits

Author SHA1 Message Date
Enrico 11eb39a545 docs: remove prerelease guidance from stable v2 docs 2026-08-03 14:36:17 +02:00
Andrew Khadder 386dc8c3a5 v2 docs (#2038)
* docs: split TypeScript V1 and V2 documentation

* Rewrite v2 getting started docs

* docs: rewrite v2 server overview

* docs: refine v2 server overview

* docs: remove v2 session management

* docs: add v2 server migration checklist

* docs: refine v2 server migration checklist

* docs: audit v2 server migration checklist

* docs: complete TypeScript server guide migrations

* docs: remove oauth proxy factory references

* docs: simplify MCP terminology in descriptions

* docs: keep core API links in next steps

* docs: export view-bound tool reference

* docs: remove OAuth proxy warning

* docs: document tool-list notifications

* docs: simplify custom OAuth verifier example

* docs: restore full Hono middleware guide

* docs: remove custom provider proxy warning

* docs: hide server sampling guide from navigation

* docs: complete MCP client guide migration

* docs: align Inspector and tunnel guides

* docs: rewrite v2 MCP Apps overview

* docs: remove v2 response helpers guide

* rewrite TypeScript V2 MCP Agent guides (#2022)

* docs: add v2 server migration guide

* docs: add native TypeDoc API reference (#2032)

Add the unified native TypeDoc site, package TSDoc coverage, Vercel deployment configuration, and the V2-only Mintlify API reference link while preserving V1 navigation.

* docs: use declarative model context in v2 guidance (#2033)

* docs: fix V2 API reference link (#2034)

* docs: refine V2 header controls (#2035)

* docs: align migration page titles

* docs: preserve main v1 documentation

* docs: recover v2 MCP Apps rewrite
2026-07-28 11:35:50 -07:00
Andrew Khadder 01208e052a Revert "docs: split TypeScript V1 and V2 documentation (#2010)" (#2036)
This reverts commit 5b5fe96d28.
2026-07-28 10:23:24 -07:00
Andrew Khadder 5b5fe96d28 docs: split TypeScript V1 and V2 documentation (#2010)
Preserve the V1 TypeScript docs, add independently navigable V2 beta documentation, and align shared documentation. Rename both V2 migration guides to “Migrating to v2”.
2026-07-28 10:16:33 -07:00
Enrico Toniato 5a73b41355 Canary (#1062)
* fix(auth): resolve OAuth flow for WorkOS across client, server, and inspector (#1058)

* add proactive token refresh and credential invalidation to BrowserOAuthClientProvider

* fix OAuth token refresh by removing static Authorization header from transport config

* add changeset

* update refresh to use official mcp sdk methods

* update workos to always use proxy method since its an external provider

* update autoConnect to always include proxyAddress even without bearer tokens

* run format

* update changeset

* chore: update pnpm-lock.yaml after rebase onto main

---------

Co-authored-by: Enrico Toniato <2827496+tonxxd@users.noreply.github.com>

* chore: enter canary prerelease mode

* chore(typescript): version packages (canary)

* improvement(auth): accept full AuthKit domain in WorkOS subdomain config (#1057)

* change subdomain to include authkit.app

* add changeset

* chore(typescript): version packages (canary)

* Fix/inspector/first render (#1060)

* fix(tsconfig): include .mcp-use directory in TypeScript configuration for starter and blank templates

* fix(package.json): update postinstall script to remove fallback for generate-types in mcp-apps template

* fix(MessageList): enhance tool metadata retrieval by normalizing tool names for consistency with API responses

* feat(inspector): enhance MCPApps components with required props handling and improved UI feedback

- Added `requiredProps` to `MCPAppsDebugControls` to auto-open a popover when required props are missing, providing users with a clear indication of necessary inputs.
- Updated `MCPAppsRenderer` and `MessageList` to support cancellation state, allowing for better user experience during tool execution.
- Enhanced `PropsConfigDialog` to detect and display required props from widget schemas, improving the configuration process.
- Introduced utility functions in `usePropsLLM` for better JSON extraction from LLM responses, ensuring accurate prop generation.

* feat(inspector): enhance IframeConsole with expandable log entries and improved log formatting

- Added expandable functionality to log entries, allowing users to view detailed logs on click.
- Introduced a copy button for logs, enabling easy copying of log content to the clipboard.
- Improved log formatting and display, including inline previews and better handling of log levels.
- Updated UI elements with new icons and styles for a more intuitive user experience.

* feat(inspector): add clientOptions to InspectorDashboard for enhanced capabilities

- Introduced `clientOptions` with `capabilities` to support new extensions in the InspectorDashboard component.
- This enhancement allows for better integration with the MCP application protocol, improving overall functionality.

* feat(inspector): refine Layout component by updating validTabs and adding clientOptions

- Updated the `validTabs` array in the Layout component to remove the "playground" tab.
- Added `clientOptions` with specific capabilities to enhance integration with MCP application protocol, improving functionality.

* feat(types): enhance type definitions with detailed documentation and examples

- Updated `MCPServerClass` tool and prompt definitions to include more specific type constraints for better type safety.
- Enhanced `ServerConfig`, `InputDefinition`, and various resource and tool interfaces with comprehensive JSDoc comments, including examples for clarity.
- Improved overall type definitions for widgets and tools, ensuring better integration and usability within the MCP framework.
- Added missing descriptions and examples to several interfaces, improving developer experience and documentation quality.

* feat(mcp-apps): update server and widget integration for enhanced functionality

- Refactored the MCP server setup to improve integration with MCP Apps, including updated descriptions and documentation links.
- Introduced a new search tool for fruits, allowing users to filter results and display them in a visual widget.
- Enhanced the product search result widget with improved loading states and detail views for selected fruits.
- Removed unused dependencies and components to streamline the project structure.
- Updated README files to reflect changes and provide clearer guidance for users.

* feat(inspector): enhance MCPAppsRenderer and ui-resource-registration for improved widget re-initialization and metadata handling

- Added logic in MCPAppsRenderer to re-read `prefersBorder` from the server upon widget re-initialization, improving responsiveness to metadata changes.
- Implemented detection of widget re-initialization to ensure tool input is correctly sent to new widget instances after events like HMR page reloads.
- Refactored resource registration in ui-resource-registration to dynamically resolve the latest enriched definitions, ensuring accurate metadata is used during HMR updates.
- Updated read callbacks to handle dynamic URIs and maintain consistency in resource handling, enhancing overall widget functionality.

* feat(widget): enhance useWidget hook and documentation for improved functionality

- Updated the `useWidget` hook to support additional generic parameters for better type safety and flexibility.
- Introduced new props for real-time streaming and external link handling, enhancing widget capabilities.
- Improved documentation in SKILL.md and ui-widgets.mdx to clarify usage of new features, including partial argument streaming and external navigation.
- Removed deprecated dependencies from package.json files across templates to streamline project setup.
- Enhanced various components to utilize new props and improve user experience during tool interactions.

* feat(tsconfig): enhance TypeScript configuration and widget functionality

- Updated TypeScript configurations across multiple templates to include incremental builds and build info file paths, improving build performance and efficiency.
- Modified the `useWidget` hook to streamline state management and enhance type safety by refining generic parameters.
- Simplified the `ProductSearchResult` component by reducing unnecessary generic parameters, improving code clarity and maintainability.
- Adjusted helper functions to ensure consistent type handling across the widget framework.

* feat(update-check): implement update notification for mcp-use CLI

- Added a new utility to check for updates of the mcp-use package and notify users if a newer version is available.
- Integrated the update check into the CLI's pre-action hook, ensuring users are informed before executing commands.
- Created a caching mechanism to minimize unnecessary network requests and improve performance.

* feat(inspector): add file utilities for client file management

- Introduced a new `file-utils.ts` module containing functions to determine content types based on file extensions, check for the existence of client files, and retrieve the client distribution path.
- Updated the middleware to utilize these new utilities for improved handling of client files, including warnings when files are not found.

* feat(inspector): update TypeScript and MCPApps components for improved functionality

- Added TypeScript version 5.9.3 to the pnpm-lock.yaml for enhanced type safety and features.
- Enhanced MCPAppsDebugControls to prevent auto-application of localStorage presets in tool context.
- Refactored MCPAppsRenderer to optimize state management and prevent unnecessary re-renders, including the use of refs for tool input and output.
- Improved OpenAIComponentRenderer with better state handling and batching of updates to prevent double renders.
- Updated ToolsTab to streamline resource pre-fetching and reduce unnecessary renders during tool execution.
- Enhanced ToolResultRenderer and ToolResultDisplay for better memoization and performance.
- Introduced a new RelativeTimeDisplay component to manage time updates without affecting parent re-renders.

* chore: update pnpm-lock.yaml after rebase onto main

Co-authored-by: Cursor <cursoragent@cursor.com>

* fix: update postinstall script in package.json templates to prevent failure on type generation

* Potential fix for code scanning alert no. 81: Uncontrolled data used in path expression

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Signed-off-by: Enrico Toniato <2827496+tonxxd@users.noreply.github.com>

* feat(inspector): add HTML escaping function for safe user input handling

- Introduced a new `escapeHtml` function to sanitize user input in responses, preventing potential XSS vulnerabilities.
- Updated the CDN server response to utilize the `escapeHtml` function when returning 404 error messages.

* chore: update TypeScript version to 5.9.3 across multiple packages and enhance component functionality

- Added TypeScript version 5.9.3 to pnpm-lock.yaml and various package.json files for improved type safety.
- Enhanced OpenAIComponentRenderer to optimize state updates and prevent redundant dispatches.
- Updated ResourceResultDisplay to include a data-testid for better testing capabilities.
- Improved debugging tools to scope props dialog interactions to the correct resource widget preview.

* format

* refactor(tests): update widget integration and data flow tests to align with SEP-1865 specifications

- Adjusted tests to verify that widget metadata is now located on tool definitions rather than in tool call results, as per SEP-1865.
- Updated assertions to check for structured content in results instead of relying on metadata properties.
- Enhanced test coverage for tool invocation and output structure to ensure compliance with new standards.

* package

* test(widget-helper): enhance integration tests for tool metadata validation

- Updated assertions to ensure manual and auto tools are defined before checking metadata properties.
- Improved handling of auto tool metadata to account for potential absence of _meta.
- Enhanced regex checks for output templates to ensure proper formatting and compliance with widget standards.

* changeset

---------

Signed-off-by: Enrico Toniato <2827496+tonxxd@users.noreply.github.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

* chore(typescript): version packages (canary)

* feat(inspector): enhance MCPApps components and improve widget handling (#1063)

* feat(inspector): enhance MCPApps components and improve widget handling

- Added a new test_app configuration in pnpm-lock.yaml with updated dependencies for better development support.
- Updated InspectorDashboard to set a default MCP_URL when not provided.
- Refined ProductSearchResult and CarouselItem components to use a consistent text-danger class for better styling.
- Improved error handling in InspectorDashboard for connection retries.
- Streamlined MCPAppsRenderer to enhance widget re-initialization and metadata handling.
- Removed deprecated dev widget endpoints and related logic to simplify the codebase.
- Enhanced FormattedContentDisplay to allow toggling between formatted and plain text for better user experience.
- Updated PropsConfigDialog and ResourceResultDisplay to utilize standardized metadata paths for improved prop detection.

This commit focuses on enhancing the overall functionality and user experience of the MCPApps components and related widgets.

* feat(inspector): enhance ToolsTab and ToolExecutionPanel for improved field handling

- Introduced state management for tracking fields that should be sent as empty, allowing for explicit control over empty values in tool arguments.
- Updated ToolsTab to initialize and manage sets of fields, enhancing the handling of tool input schemas.
- Enhanced ToolExecutionPanel to accept and utilize the new payload structure, ensuring accurate representation of data sent during tool execution.
- Added toggle functionality in ToolInputForm for explicitly sending empty objects and arrays, improving user experience and flexibility in input handling.

This commit focuses on refining the input handling process within the inspector, providing users with better control over the data they send.

* feat(widget): enhance useWidget hook to unwrap CallToolResult envelope

- Updated the useWidget hook to unwrap the CallToolResult envelope when the OpenAI provider is used, allowing for direct access to structured content.
- Improved handling of toolOutput to ensure compatibility with hosts that pass the full tool-result parameters.
- Enhanced documentation comments to clarify the changes and improve understanding of the new logic.

This commit focuses on refining the output handling within the useWidget hook, improving type safety and usability for developers.

* feat(inspector): enhance CSP handling and widget re-execution logic

- Updated the Inspector components to improve handling of Content Security Policy (CSP) settings, ensuring that widget metadata is correctly enriched with CSP directives.
- Introduced logic to re-execute widgets when CSP mode changes, allowing for dynamic updates to the widget's execution context.
- Enhanced the MCPAppsDebugControls and MCPAppsRenderer to better manage CSP violations and provide clearer user feedback on required props.
- Refactored the PropsConfigDialog to utilize standardized metadata paths for improved prop detection and configuration.

This commit focuses on refining the CSP management and widget lifecycle within the inspector, enhancing overall functionality and user experience.

* refactor(tests): update weather-display widget tests for props handling

- Modified tests in `aaa-ui-widgets.test.ts` to check for visibility of props wall text instead of iframe visibility, ensuring that the widget's required props are correctly validated.
- Removed unnecessary iframe visibility checks in `debugger-tools.test.ts` to streamline the test flow and focus on props configuration.
- Updated `navigateToResourcesAndSelectWeather` helper function to wait for props wall text, enhancing clarity on widget requirements during testing.

This commit enhances the accuracy of widget tests by focusing on required props visibility, improving overall test reliability.

* chore(typescript): version packages (canary)

* refactor(docs): update documentation for MCP Apps and enhance content security policy (#1067)

* refactor(docs): update documentation for MCP Apps and enhance content security policy

- Changed "UI Widgets" group to "MCP Apps" in the documentation structure.
- Added a new section on Content Security Policy (CSP) for MCP Apps, detailing configuration and automatic settings.
- Updated references from "mcp-use Cloud" to "Manufact Cloud" across various documents for consistency.
- Introduced a deprecation notice for the Apps SDK in the ChatGPT Apps flow guide.
- Enhanced the inspector documentation to include CSP configuration and debugging tips.
- Updated various SVG icons to a consistent color scheme and added a new Keycloak icon.
- Refined CLI reference and quickstart guides to reflect changes in deployment terminology and commands.

* refactor(inspector): enhance MCPApps components and improve widget handling

- Updated Inspector components to refine handling of Content Security Policy (CSP) settings and widget re-execution logic.
- Improved error handling in InspectorDashboard and streamlined MCPAppsRenderer for better widget re-initialization.
- Enhanced PropsConfigDialog and ResourceResultDisplay to utilize standardized metadata paths for improved prop detection.
- Updated various components to ensure better user experience and functionality, including state management for tool input schemas and improved logging in IframeConsole.

* chore(typescript): version packages (canary)

* refactor(typescript): improve create-mcp-use-app CLI prompts, install order, branding, and project structure output (#1068)

* refactor: improve create-mcp-use-app CLI prompts, install order, branding, and project structure output

Co-authored-by: Cursor <cursoragent@cursor.com>

* add changeset

* run format

---------

Co-authored-by: Cursor <cursoragent@cursor.com>

* chore(typescript): version packages (canary)

---------

Signed-off-by: Enrico Toniato <2827496+tonxxd@users.noreply.github.com>
Co-authored-by: Joaquin Coromina <75667013+bjoaquinc@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
2026-02-20 10:24:32 -08:00
Luigi Pederzani 3ff31be303 move docs 2025-10-15 19:23:46 +02:00