Commit graph inspector/client/src/components
Author SHA1 Message Date
Cliff Hall
71aadf9652
Merge branch 'main' into tool-search 2025-09-22 16:23:04 -04:00
cliffhall
6b7c752684 * In Sidebar.tsx
- Add tooltip over the Connection Type field
2025-09-18 17:43:12 -04:00
cliffhall
5ef78470de * In App.tsx
- Add state for connectionType
  - Fetch connectionType from localstorage if present

* In Sidebar.tsx
  - Add dropdown for connectionType, only visible if transport type is not stdio

* In Sidebar.test.tsx
  - set connectionType to "proxy"

* In useConnection.ts
  - add connectionType param, defaulting to "proxy"
  - add state for mcpSessionId
  - Only check proxy health if the connection type is proxy
  - create a serverUrl variable which will either be the proxy url OR the server url depending upon the connection type
  - added captureResponseHeaders function to extract the protocol-related headers from a response.
  - when creating transport options and connectionType is "direct" and transportType is not "stdio",
    - add the appropriate `Accept` and `Content-Type` headers
    - capture the protocol related response headers and store them in the custom fetch handler
    - set serverUrl to be the server url, not the proxy url
  - if connection type is proxy set serverUrl to the mcpProxyUrl
  - use serverUrl instead of mcpProxyUrl for the  transport instantiation
* In useConnection.test.tsx
  - replaced test "sends X-MCP-Proxy-Auth header when proxy auth token is configured" with two tests:
    - "sends X-MCP-Proxy-Auth header when proxy auth token is configured for 'proxy' connectionType"
    - "does NOT send X-MCP-Proxy-Auth header when proxy auth token is configured for 'direct' connectionType"
   - added Connection URL Verification section with 2 tests
     - uses server URL directly when connectionType is 'direct'"
     - "uses proxy server URL when connectionType is 'proxy'"
2025-09-16 17:26:29 -04:00
Ola Hungerford
e0071a9889
Merge branch 'main' into tool-search 2025-09-15 20:33:20 -07:00
jeetul.samaiya
e08ce8cee9 feat: add default Authorization Bearer header and clean up legacy auth
- Provide "Authorization: Bearer " as default starting header
- Remove legacy auth props from components
- Centralize migration logic and fix localStorage cleanup
- Update tests for new auth architecture
2025-09-15 20:19:56 +05:30
Jeetul Samaiya
f36c649bb9
Merge branch 'main' into main 2025-09-15 19:30:18 +05:30
Ola Hungerford
0850de74d9
Merge branch 'main' into tool-search 2025-09-15 06:35:28 -07:00
Ola Hungerford
3075cbbf18
Merge branch 'main' into alejandro.borbolla/copy-input 2025-09-14 21:27:07 -07:00
Cameron Roberts
36c38e7b47
Update ListPane.tsx 2025-09-14 00:29:54 +01:00
Cameron Roberts
2e683f3322
Merge branch 'main' into tool-search 2025-09-13 11:47:24 +01:00
Cameron Roberts
79fe56237a feat: first pass at stlying fix and searching on name/description 2025-09-13 11:34:13 +01:00
Jeetul Samaiya
743bb52d92
Merge branch 'main' into main 2025-09-11 12:12:33 +05:30
jeetul.samaiya
90ab419d12 fix: enhance error handling for custom headers and improve test coverage for header management 2025-09-10 21:01:24 +05:30
jeetul.samaiya
6f727b6662 fix: update error handling in JSON parsing and add ESLint rule for unused variables 2025-09-09 13:44:57 +05:30
jeetul.samaiya
cb8c45456b refactor: improve code formatting and readability across multiple files 2025-09-09 13:44:57 +05:30
jeetul.samaiya
c5acc63129 Add support for custom headers and migrate from legacy auth
- Introduced CustomHeaders component for managing custom headers.
- Updated Sidebar to include CustomHeaders component.
- Enhanced useConnection hook to handle custom headers and legacy auth migration.
- Added tests for custom headers functionality.
- Updated package.json and package-lock.json for new dependencies.
2025-09-09 13:44:57 +05:30
Wei He
d728d54614
fix: toast message when copying server entry for a Streamable HTTP transport URL 2025-09-06 23:47:54 -04:00
Max Gerber
71583caf3b
fix: correct authState.authorizationUrl type to URL 2025-09-05 18:40:48 -07:00
lorenzo.neumann
801ae28ecb feat: add clear buttons for request history and server notifications
fixes #780
2025-09-04 13:37:19 +02:00
Alejandro Borbolla
2fd781ab81
fix: CI by removing unused useEffect 2025-09-01 18:32:16 +02:00
Alejandro Borbolla
16e0077090
fix: Assess PR comments (typo) 2025-09-01 18:31:52 +02:00
Ola Hungerford
6505468fbe
Merge branch 'main' into alejandro.borbolla/copy-input 2025-08-31 20:38:40 -07:00
Cameron Roberts
c782781eb9
Merge branch 'main' into tool-search 2025-08-22 08:24:52 +01:00
Ola Hungerford
f22aa1f5e2
Merge pull request #741 from cliffhall/stderr-handling
Handling of stderr on STDIO servers
2025-08-21 19:10:19 -07:00
Ola Hungerford
d48164aa09
Merge pull request #719 from richardkmichael/fix-704-trim-command-whitespace
fix: Trim whitespace from Command input to prevent ENOENT
2025-08-21 18:50:52 -07:00
cliffhall
9dbd5cc85b * Remove handling of out-of-spec 'notification/stderr' messages. It's not a thing. See https://github.com/modelcontextprotocol/servers/pull/2469
* Inspect the stderr output of STDIO servers and attempt to assign an appropriate RFC 5424 Syslog Protocol level before sending a leveled logging message to the client
2025-08-21 18:01:29 -04:00
Cameron Roberts
ee81c5aa0d
Merge branch 'main' into tool-search 2025-08-21 18:14:54 +01:00
Cliff Hall
8a5a4e5b6a
Merge pull request #740 from modelcontextprotocol/fix/validate-urls
Fix/validate urls for http/https scheme only in auth flow
2025-08-21 12:15:19 -04:00
Jenn Newton
a018a6d758
Apply Prettier formatting
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-21 15:41:33 +00:00
Jenn Newton
fa2e6b0c40
Fix to properly open in new tab for OAuth
🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-21 15:31:53 +00:00
Cameron Roberts
84fbcf2710
Merge branch 'main' into tool-search 2025-08-21 10:09:46 +01:00
Ola Hungerford
acc0530988
Merge branch 'main' into fix-704-trim-command-whitespace 2025-08-20 20:47:37 -07:00
Jenn Newton
650f3090d2
fix: add validation for OAuth redirect URLs
- Create shared validateRedirectUrl utility to centralize URL validation
- Only allow HTTP and HTTPS protocols in OAuth authorization URLs
- Fix three vulnerable redirect paths that bypassed validation:
  - AuthDebugger.tsx: Direct window.location.href redirect
  - OAuthFlowProgress.tsx: window.open() without validation
  - OAuthFlowProgress.tsx: Direct anchor href attribute
- Add comprehensive test coverage for URL validation
- Update existing auth.ts to use shared validation utility

This prevents malicious MCP servers from injecting javascript: or data:
protocol URLs that would execute XSS attacks when users are redirected
to the authorization endpoint.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-20 10:08:20 -03:00
Stephen Halter
36a30fa3db prettier --write client/src/components/OAuthDebugCallback.tsx 2025-08-18 13:01:13 -07:00
Cameron Roberts
842d710235 feat: added aria-label so no longer need this comment 2025-08-17 23:47:07 +01:00
Cameron Roberts
c25f84e6bb feat: adjust UT to have better test case 2025-08-17 23:46:16 +01:00
Cameron Roberts
a733b239a6 feat: Add UT for the added search functionality to the ListPane component 2025-08-17 23:13:00 +01:00
Cameron Roberts
fbce75aba0 feat: Add search functionality to the ListPane component which exposes it for
- Resources
- Prompts
- Tools
2025-08-17 23:10:35 +01:00
Ola Hungerford
f2865a36e3
Merge branch 'main' into halter73/restore-resource 2025-08-15 14:34:48 -07:00
Richard Michael
410f792d29 Remove redundant mock and timer clear 2025-08-14 14:25:51 -07:00
Richard Michael
34938b72d3 Tidy test descriptions and titles 2025-08-14 14:25:51 -07:00
Richard Michael
399e16afa4 Re-organize Sidebar tests
- Tests were mistakenly grouped in Environment Variables block
- Tests follow UI order, top-to-bottom
2025-08-14 14:25:51 -07:00
Richard Michael
8d8af870ba Trim whitespace from command on blur 2025-08-14 14:25:51 -07:00
Bobby Tiernay
34b39530d1
fix: failing test from SDK update 2025-08-14 14:02:29 -04:00
Bobby Tiernay
74900fca5d
feat: unify OAuth scope discovery between automatic and manual flows
- Add shared discoverScopes function in auth.ts with resource metadata preference
- Update automatic flow (handleAuthError) to use dynamic scope discovery
- Update manual flow (OAuth state machine) to use shared scope discovery logic
- Add comprehensive test suite for discoverScopes function (11 test cases)
- Fix empty array handling to return undefined instead of empty string
- Maintain backward compatibility with existing oauthScope parameter
- All quality gates pass: TypeScript, linting, formatting, and tests

Resolves OAuth scope discovery inconsistency where automatic flow used static
scopes while manual flow used metadata scopes. Both flows now use identical
shared logic with proper resource metadata preference.
2025-08-14 14:02:29 -04:00
Stephen Halter
10b4681e3c Also fix authorizationUrl type 2025-08-14 10:47:15 -07:00
Stephen Halter
fc4aeb392f Restore AuthDebuggerState.resource as URL
Not doing so prevents the resource URI from getting sent to the
OAuth server's token endpoint during the "Quick OAuth flow"
2025-08-13 14:00:08 -07:00
Ola Hungerford
ddd06c207c
Merge branch 'main' into dcr-fallback-fix 2025-08-13 05:34:14 -07:00
2underscores
9ef2a6c22d Use new auth svr discovery method from latest auth SDK 2025-08-12 14:13:31 +10:00
2underscores
e9f1da383e Tests for client discovery 2025-08-12 13:22:09 +10:00