Commit graph

1,390 commits

Author SHA1 Message Date
Alex Andru
dfbf10c575 test: elicitation handling 2025-06-19 17:39:24 +02:00
Alex Andru
124c781253 feat: add elicitation handling to App 2025-06-19 17:39:24 +02:00
Alex Andru
6c809bdab6 test: new elicitation format for jsonUtils 2025-06-19 17:39:24 +02:00
Alex Andru
fc939ebeb0 feat: add elicitation support to jsonUtils 2025-06-19 17:39:24 +02:00
Alex Andru
a058229fb6 feat: add ElicitationModal 2025-06-19 17:39:24 +02:00
Alex Andru
e6166a734e feat: add new schema requirements to DynamicJsonForm 2025-06-19 17:39:19 +02:00
Marc Abramowitz
1807542582 Cleanup client/e2e/test-results/ after test:e2e 2025-06-19 07:23:29 -07:00
Marc Abramowitz
8b3613e11a prettier fix 2025-06-19 07:02:06 -07:00
Alex Andru
e163aea0e0 feat: add elicitations to useConnection 2025-06-19 15:03:39 +02:00
Alex Andru
424b44966b chore: bump @modelcontextprotocol/sdk to version 1.13.0 2025-06-19 14:23:37 +02:00
Marc Abramowitz
08e4f6b4a8 outputDir: "./e2e/test-results" 2025-06-19 00:06:36 -07:00
Marc Abramowitz
2ca63cb161 Merge branch 'main' into playwright-test 2025-06-19 00:02:11 -07:00
Marc Abramowitz
db9ca3762a No playwright-report or results.json for non-CI 2025-06-19 00:00:32 -07:00
Cliff Hall
a7336cd00c
Merge pull request #513 from modelcontextprotocol/fweinberger/auto-open
Re-enable inspector auto-open & reloads post security fixes
2025-06-18 18:13:44 -04:00
Sebastian Ko
647d924e20
Merge branch 'main' into sebastian/patch-remove-addition-slash 2025-06-18 06:04:47 -04:00
Felix Weinberger
698d2458c0
docs: Update README to reflect auto-open now works with authentication
- Removed outdated statement about auto-open being disabled with authentication
- Clarified that browser automatically opens with token pre-filled in URL
- Updated MCP_AUTO_OPEN_ENABLED description to note it works with authentication

The README now accurately reflects the improved developer experience where
authentication no longer prevents the browser from auto-opening.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-18 10:23:03 +01:00
Felix Weinberger
9fec0aaf98
refactor: Extract server and client launch functions for better code organization
- Extracted 4 functions: startDevServer, startProdServer, startDevClient, startProdClient
- Eliminated deep nesting in main() function
- Each function has a single responsibility
- Main function now clearly shows the flow: parse args → start server → start client
- No functional changes, purely organizational refactoring

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-18 10:23:03 +01:00
Felix Weinberger
d06f3b5ebc
feat: Enable auto-open with authentication and unify start scripts
- Unified start.js to handle both dev and production modes with --dev flag
- Generate session token in parent process, pass via MCP_PROXY_TOKEN env var
- Enable browser auto-open even when authentication is enabled by including token in URL
- Auto-reloads now work seamlessly with persistent tokens across hot reloads
- Simplified npm scripts - dev and dev:windows now use the same unified script
- Better developer experience with consistent token handling

The token is generated once per session and remains stable through server/client
reloads, making development smoother while maintaining security.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-18 10:23:03 +01:00
Marc Abramowitz
b783b50f7f Make "npm run clean" remove Playwright files 2025-06-17 23:56:18 -07:00
Marc Abramowitz
0b31ce7454 .gitignore: Add playwright artifacts 2025-06-17 23:44:49 -07:00
Marc Abramowitz
0f1cc19926 prettier fix playwright.config.ts 2025-06-17 20:26:22 -07:00
Marc Abramowitz
4ef6bdb1b8 e2e_tests.yml: Remove start dev server
since now we are doing that in `playwright.config.ts`
2025-06-17 20:19:41 -07:00
Marc Abramowitz
8b1faf110c playwright.config.ts: Start dev server automatically 2025-06-17 20:18:32 -07:00
Ola Hungerford
21b85cdc40
Merge pull request #522 from cliffhall/main 0.14.3
Bump version to 0.14.3
2025-06-17 18:52:25 -07:00
Richard Michael
78eaa177a4 Rename History file to HistoryAndNotifications
Rename History.tsx to HistoryAndNotifications.tsx for consistency
with component name and update imports.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-17 17:16:05 -07:00
Richard Michael
7eaa948e98 Add tests for HistoryAndNotifications component
Tests cover basic rendering, numbering, expansion functionality, and
expansion state persistence when new items are added. Includes
regression test for notification expansion state tracking bug.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-17 17:16:05 -07:00
Richard Michael
6034ea36dc Fix expansion state tracking in Server Notifications 2025-06-17 17:16:05 -07:00
cliffhall
1c75f88760 Bump version to 0.14.3
- Need to do a patch level release in order to test the ghcr docker container publishing feature added to main.yml in #257
2025-06-17 16:38:29 -04:00
Cliff Hall
21fd2f9da3
Merge pull request #511 from modelcontextprotocol/jerome/feature/version-update-and-check-scripts
feat: add version management scripts and CI check
2025-06-17 16:31:21 -04:00
Cliff Hall
dc77327c65
Merge branch 'main' into jerome/feature/version-update-and-check-scripts 2025-06-17 15:58:39 -04:00
Marc Abramowitz
6e5ccf679a Remove commented out stuff in playwright.config.ts 2025-06-16 20:55:45 -07:00
Kent C. Dodds
0f3d34bc9a docs: add note in readme 2025-06-16 18:58:51 -06:00
Kent C. Dodds
c4b3b3f763
make auth token configurable via env var 2025-06-16 18:48:22 -06:00
David Soria Parra
90517273a4
Merge pull request #257 from aaronpowell/dockerfile
Containerising inspector
2025-06-16 18:32:59 +01:00
Aaron Powell
e9036627ff
Merge branch 'main' into dockerfile 2025-06-16 15:37:35 +10:00
Sebastian Ko
5710318f45
Merge branch 'main' into sebastian/patch-remove-addition-slash 2025-06-15 21:25:34 -04:00
Sebastian Ko
03e21bd3e4
Move remove slashes logic to getMCPProxyAddress 2025-06-15 21:25:01 -04:00
Jerome
a30a3fbe8d
Lint 2025-06-14 19:56:58 +01:00
Jerome
b70cf563a8
feat: add version management scripts and CI check
- Added update-version.js script to automate version bumps across all packages
- Added check-version-consistency.js script to verify version consistency
- Integrated version check into CI workflow
- Scripts check package.json versions AND package-lock.json sync
- Added npm scripts: `npm run update-version` and `npm run check-version`
- Added documentation in scripts/README.md

This ensures version consistency across the monorepo and prevents
accidental version mismatches or outdated lock files.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-14 19:52:36 +01:00
Jerome
1859e56950
Merge pull request #510 from modelcontextprotocol/jerome/version/0.14.2 0.14.2
Bumped all versions to 0.14.2
2025-06-14 19:51:21 +01:00
Jerome
eb27b954e5
Bumped all versions to 0.14.2 2025-06-14 19:48:59 +01:00
Jerome
752a41522f
Merge pull request #509 from modelcontextprotocol/jerome/fix/proxy-token-mixup
fix: use X-MCP-Proxy-Auth header for proxy authentication
2025-06-14 19:31:10 +01:00
Jerome
ef90c58882
Lint 2025-06-14 18:45:14 +01:00
Jerome
ba7b35cbf3
Filling out other required args for FetchLike invocation 2025-06-14 18:43:28 +01:00
Jerome
349e23f992
Fixing signature of eventSourceInit fetch signature 2025-06-14 18:25:16 +01:00
Jerome
760c7e4056
fix: replace require() imports with ES modules in tests
- Replaced all require() imports with proper ES module imports
- Fixed ESLint @typescript-eslint/no-require-imports errors
- Removed unused variable mockGetMCPProxyAddress
- Added proper TypeScript types instead of 'any'
- All tests passing and linting clean

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-14 18:11:16 +01:00
Jerome
62402b49c4
test: add tests for proxy auth header in config endpoint
- Added tests for App.tsx config endpoint to verify X-MCP-Proxy-Auth header usage
- Added tests for getMCPProxyAuthToken utility function
- Tests cover:
  - Sending correct proxy auth header when token is configured
  - Not sending header when token is empty
  - Using custom header names (for future flexibility)
  - Handling config endpoint errors gracefully
- All tests passing

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-14 18:01:10 +01:00
Jerome
37cff101b1
test: add tests for X-MCP-Proxy-Auth header implementation
- Added comprehensive test coverage for proxy authentication using X-MCP-Proxy-Auth header
- Tests verify proper header separation between proxy and server authentication
- Fixed transport mocks to properly capture options and headers
- Updated config structure in tests to match production code
- All proxy auth tests now passing

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-14 17:20:30 +01:00
Jerome
fdae89ecbf
fix: use X-MCP-Proxy-Auth header for proxy authentication
Changed proxy authentication to use a custom header (X-MCP-Proxy-Auth) instead of the standard Authorization header. This prevents conflicts when the proxy needs to forward the client's Authorization header to upstream MCP servers.

- Updated client to send proxy auth token in X-MCP-Proxy-Auth header
- Updated server auth middleware to check X-MCP-Proxy-Auth header
- Applies to all transport types (SSE, stdio, streamable-http)

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-06-14 13:07:02 +01:00
Jerome
65910ebc4c
Merge pull request #505 from modelcontextprotocol/jerome/fix/remaining-version-bumps 0.14.1
fix: update remaining version references to 0.14.1
2025-06-13 18:41:05 +01:00