* fix(docs): repair dead links flagged by link checker (#1855)
* fix(docs): repair dead links flagged by link checker
- Point CLI client docs links at docs.mcp-use.com/typescript/tooling/client-cli
(old typescript/client/cli path 404s) in the CLI example and skills
- Remove the inspector README self-hosting link; that docs page does not exist
- Point the python README 'what should we build next' link at GitHub issues
(old mcp-use.com page returns 410 Gone)
- Exclude generated package CHANGELOGs from lychee: historical release notes
reference docs URLs that were valid at release time
Closes#1838
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
* fix(ci): escape and anchor lychee exclude_path regex patterns
exclude_path values are regular expressions per lychee docs; escape the
dots and anchor the patterns to match the style of existing exclude entries.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
---------
Co-authored-by: ayaanmacmini3 <ayaanmacmini3@ayaanmacmini3s-Mac-mini.local>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
* chore: enter canary prerelease mode
* chore(typescript): version packages (canary)
* fix(react): point useMcp auto proxy fallback at live inspector host (#1798)
The default autoProxyFallback proxy address was inspector.mcp-use.com,
which now 301-redirects to inspector.manufact.com. Browsers treat a
redirect on a CORS preflight as a hard failure, so the automatic
direct→proxy fallback could never connect. Default now targets the live
inspector.manufact.com proxy.
* chore(typescript): version packages (canary)
* fix(typescript): remove leftover resourceCallbacks debug log (#1878)
Every resource template registration printed a bare
"resourceCallbacks undefined" line to the console (introduced with the
completion-callbacks work, #966/#970). With MCP Apps widgets this fires
on every dev boot and every HMR reload, and the stray output actively
misled a recent bug investigation (#1875, where it was flagged as a
suspect). Remove the debug line; the value is still exercised
immediately below when building the ResourceTemplate.
Co-authored-by: ayaangazali <ayaan.gazly@gmail.com>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
* fix: refresh OAuth tokens with resource
---------
Co-authored-by: Ayaan Gazali <ayaangazali.work@gmail.com>
Co-authored-by: ayaanmacmini3 <ayaanmacmini3@ayaanmacmini3s-Mac-mini.local>
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: ayaangazali <ayaan.gazly@gmail.com>
- Corrected the MCP Specification link in the TypeScript client documentation.
- Updated relative paths to the CONTRIBUTING.md file in Python and TypeScript README files.
- Adjusted links in various README files to ensure they point to the correct resources, including examples and specifications.
- Removed outdated deployment instructions from the Inspector package README.
* fix(python): expose client capabilities to MCP servers
Add list_roots_callback support to Python connectors to properly
advertise the roots capability during MCP initialization handshake.
Previously, the Python library was not exposing any client capabilities
because the list_roots_callback was not being passed to ClientSession.
This fix ensures the roots capability is always advertised, bringing
the Python library in line with the TypeScript implementation.
Changes:
- Add roots and list_roots_callback params to BaseConnector
- Add get_roots() and set_roots() methods for managing roots
- Pass list_roots_callback to ClientSession in all connectors
- Export Root type from connectors module
- Update unit tests to expect list_roots_callback parameter
Closes MCP-1063
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* feat(python): add roots and list_roots_callback params to connectors
- Add roots and list_roots_callback parameters to StdioConnector,
HttpConnector, and SandboxConnector constructors
- Add comprehensive unit tests for client capabilities exposure
- Tests verify roots capability, get_roots(), set_roots(), and
that all callbacks are correctly passed to ClientSession
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* chore: fix import sorting and update API documentation
- Fix import sorting in test_client_capabilities.py (ruff)
- Regenerate API documentation for updated connector classes
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* feat(python): add list_roots() method to server Context
Allow MCP servers to request the list of roots from connected clients
via ctx.list_roots(). This follows the same pattern as ctx.sample()
and ctx.elicit() for server-to-client requests.
* feat(python): add roots params to MCPClient and config
- Add roots and list_roots_callback parameters to MCPClient.__init__,
from_dict(), and from_config_file() methods
- Update create_connector_from_config() to pass roots params to all
connector types (Stdio, HTTP, Sandbox)
- Allows clients to configure roots at the MCPClient level and have
them propagate to all sessions
* test(python): add get_client_roots tool to primitive server
Add a tool that demonstrates the roots capability by requesting and
returning the list of roots from the connected client. Used for
integration testing of the roots feature.
* test(python): add integration tests for roots capability
Add comprehensive integration tests for the roots feature:
- test_roots_capability: Verify server can request/receive roots
- test_roots_empty_by_default: Verify empty roots when not provided
- test_roots_with_custom_callback: Verify custom callback precedence
- test_set_roots_updates_server_view: Verify dynamic root updates
* test(python): update unit tests for roots parameters
Update mock assertions in test_client.py to expect the new roots
and list_roots_callback parameters in create_connector_from_config
calls.
* ci(python): add roots to primitive tests and README badge
- Add roots to CI workflow primitive test matrix
- Add roots to PR comment report primitives list
- Add Roots badge to README Primitives row
* feat(docs): enhance MCP client and server documentation for roots feature
- Added `roots` and `list_roots_callback` parameters to MCP client initialization documentation.
- Updated `create_connector_from_config` documentation to include new parameters.
- Introduced `list_roots` method documentation in server context, detailing its usage and return values.
- Improved overall clarity and completeness of API reference for better developer guidance.
* feat(python): add get_client_roots tool to context example
- Introduced a new tool, `get_client_roots`, to the context example, demonstrating how to retrieve and display the list of roots exposed by the client.
- Updated documentation to include the new tool and its functionality, enhancing the example's coverage of context features.
* feat(docs): add roots documentation for client and server
- Introduced new documentation for the `roots` feature, detailing how clients can expose file system roots to MCP servers and how servers can access these roots.
- Added examples for configuring roots in the MCP client and using the `list_roots()` method in the server context.
- Enhanced overall clarity and usability of the documentation to support developers in implementing the roots functionality.
---------
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: pietrozullo <pietro.zullo@gmail.com>
- Renamed Python README title to "MCP-Use for Python" and added a description of its capabilities.
- Enhanced Python README with sections on MCP Agent, MCP Client, and upcoming MCP Server.
- Updated TypeScript README to include a new section on MCP-UI Resources for building interactive applications.
- Improved formatting and added quick links in both README files for better navigation.
- Ensured consistency in package descriptions and features across both implementations.
* Auth 1.0
* Defualt to DCR
* Fix client list server names
* Fix oauth problems with no oauth servers, enhance documentation and comments
* Add OAuth metadata provider and specific fixes
- Remove auth field to reduce API verbosity
- Add "auth" support for MCPClient's config
- Add "oauth_provider" key to MCPClient's config to provide metadata
- Fix no OAuth servers' errors
* Relocate authentication doc
* Fix ruff formatting as usual
* Fix http connectors tests with oauth support
* Fix test_config unit tests
* Final fix for tests
* Add integration for auth
- Add auth server for testing
- Add test for complete auth flow with mock on OAuth callback
- Add test for custom client auth
- Add test for bearer auth token
* Add further test and update README
- Add OAuth metadata provider (no discovery)
- Update README with new auth badge
* Format fixes
* Remove redefined exception
* Add auth test on GH action
* Update docs with correct example
* Apply suggestions from code review
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Pietro Zullo <62951181+pietrozullo@users.noreply.github.com>
* Update mcp_use/auth/oauth.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Pietro Zullo <62951181+pietrozullo@users.noreply.github.com>
* Add custom callback port feature
- Add customizable port for callback
- Remove dynamic port
- Fix bug of registration before checking port
* Add GitHub MCP support
* Update docs
* chore: highlight hack
* chore: change wording in docs
* Add authlib on project dependencies
* Remove useless example
* Fix formatting as usual
---------
Signed-off-by: Vincenzo Reina <vincenzoreinaa05@gmail.com>
Signed-off-by: Pietro Zullo <62951181+pietrozullo@users.noreply.github.com>
Co-authored-by: renvins <vincenzoreinaa05@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Extend HTTP connector to support newer streamable http transport
* Fix timeout since they should be timedelta objects
* Refactor http connector to use streamable http by default
This will fallback to SSE if there are any issues with the test
ping send.
* Added transport integration tests
* Fail fast removed
* add fastmcp deps
* system install
* Fixed tests
* Remove python 3.12 from tests
* Action and readme placehold
* test on push
* Update README with latest contributors and dependents
* Fix
* fix
* test
* Fix 3
* On push
* Update placholder
* chore: update dependents info (automated)
Updated GitHub dependents information
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* More info
* chore: update dependents info (automated)
Updated GitHub dependents information
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* Remove summary
* chore: update dependents info (automated)
Updated GitHub dependents information
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* Lets see avatars
* chore: update dependents info (automated)
Updated GitHub dependents information
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* table
* chore: update dependents info (automated)
Updated GitHub dependents information
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* Remove claude code
* Remove on push on all branches
* Reorder - license MIT
* Remove roadmap
* Update mcp_use/connectors/http.py
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Signed-off-by: Pietro Zullo <62951181+pietrozullo@users.noreply.github.com>
---------
Signed-off-by: Pietro Zullo <62951181+pietrozullo@users.noreply.github.com>
Co-authored-by: leonpham-mbh <leon.pham@maribelhealth.com>
Co-authored-by: GitHub Action <action@github.com>
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
* Add E2B optional dependency for sandboxed mcp servers
* Add types for sandbox options
* Add util to check if stdio server config
* Ignore B017
* Add sandbox connector to run MCP servers on e2b sandbox
* Add client options to set sandbox and sandbox options + use sandbox connector
* Add sandbox connector test + fix
* Add sandboxed stdio server example
* Add docs
* Set logger info
* Set debug in example
* Add install new optional dep