Commit graph inspector/cli/src
Author SHA1 Message Date
Felix Weinberger
1263ffdf58
Simplify server auto-selection logic
Only auto-select when there's exactly one server in the config file.
Removes special handling for "default-server" naming convention.

Addresses review feedback from @ochafik on PR #661
2025-08-07 20:45:23 +01:00
Felix Weinberger
14b01815ad
prettier 2025-08-07 12:01:17 +01:00
Felix Weinberger
cf7c138958
Fix --server-url flag not being parsed by CLI
Add --server-url option to CLI parser so the flag is properly recognized
and passed through to the server process via the /config endpoint.
2025-08-07 11:58:08 +01:00
Felix Weinberger
98b7e63bb0 Add --transport flag support to CLI
- Add --transport option to command line parser
- Support --transport stdio/sse/http flags
- Convert 'http' to 'streamable-http' internally
- Fix transport type conversion for CLI mode
2025-08-06 19:50:23 +01:00
Felix Weinberger
195f79076e
Fix CLI test failures for SSE/HTTP transport configs
- Pass URL as command for SSE/HTTP configs instead of empty string
- Update runCli to pass transport type flag when needed
- Update tests to expect connection errors for non-existent SSE/HTTP servers
2025-08-05 14:22:16 +01:00
Felix Weinberger
1e399b7055
prettier 2025-08-05 14:08:57 +01:00
Felix Weinberger
0e2906c4c4
Implement default-server support
- Auto-select server when --config is used without --server
- Use 'default-server' if it exists in config
- Use single server if only one is defined
- Show helpful error if multiple servers exist without default
- Add tests for all default-server scenarios
2025-08-05 14:08:57 +01:00
Felix Weinberger
acf6c1e118
feat: Auto-detect transport type from config files
When launching the inspector with --config, automatically set the transport
dropdown and server URL based on the config file contents. This eliminates
the need to manually switch between stdio/sse/streamable-http in the UI.

- Use discriminated union for ServerConfig to properly type different transports
- Detect transport type and URL from config, pass via query params
- Maintain backwards compatibility for configs without explicit 'type' field
- Add comprehensive tests for the new functionality

Improves UX by making the config file the single source of truth for
server settings.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-05 14:08:57 +01:00
Ola Hungerford
1ed920297f
Merge branch 'main' into oleina/logging 2025-07-26 09:43:20 -07:00
Felix Weinberger
c7b90a1af9
Fix command-line argument passing to pre-fill UI
When running the inspector with command-line arguments (e.g.,
`npx @modelcontextprotocol/inspector node build/index.js arg1 arg2`),
the command and arguments were not being properly passed through to
the UI for pre-filling.

Changes:
- cli.ts now passes command and args to start.js
- start.js uses --command for the command and --args for arguments
- Server parses the new --command parameter
- /config endpoint returns correct values for UI pre-filling

This ensures the UI correctly displays the command and arguments
passed on the command line instead of showing old localStorage values.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-24 13:06:36 +01:00
Cliff Hall
efc8f32ad2
Merge branch 'main' into ci-test-cli 2025-07-15 16:04:47 -04:00
François Leblanc
b84e5271f4 Explicitly exit process for CI 2025-07-14 23:35:52 -04:00
François Leblanc
ff2d932904 Add await to runCli call 2025-07-14 23:27:58 -04:00
Ola Hungerford
824d5e1ec2
Merge branch 'main' into cli-remote-no-required-endpoint 2025-07-14 18:51:14 -07:00
oleina
f4d9bf6d5e initalize logging for cli mode 2025-07-11 17:34:14 -07:00
cliffhall
0eebd01ebe Remove environment-related startup vars. Those will be captured by start.js 2025-07-10 15:17:54 -04:00
cliffhall
6a66ca5b23 fix startup of webclient through cli 2025-07-10 13:51:15 -04:00
François Leblanc
7c2b761748 [cli] Don't force specific endpoints for remote servers
At the moment, the CLI tool expects that remote MCP servers, either
using SSE or streamable HTTP transport, have certain endpoints or
fragments -- `/sse` and `/mcp`, respectively. This is not part of the
MCP spec, nor should it be expected.

I also added a check to make sure a URL is provided if STDIO isn't
picked, erroring out if not.
2025-07-09 11:51:41 -04:00
Ryan Clark
daa863ddfc
feat: add transport option to cli 2025-06-01 13:27:16 -05:00
cliffhall
6a99feaf33 Refactor project components
* Remove bin folder, leaving cli, server, and client
* This fixes #315
* In .gitignore,
  - add .idea
  - remove bin/build
* Remove bin and bin/cli.js
* Remove bin/scripts/copy-cli.js
* Refactor/move bin/scripts to cli/scripts
* Refactor/move bin/src/index.ts to cli/src/cli.ts
* Refactor/renamed client/bin/cli.js to client/bin/client.js
* In .github/workflows/main.yml,
  - add run of cli tests
* In cli/pacakge.json
  - change main and bin/mcp-inspector-cli properties to build/cli.js
* In client/package.json,
  - change bin/mcp-inspector-client properties to build/start.js
* In pacakge.json
  - change bin/mcp-inspector property to ./cli/build/cli.js
  - removed bin and cli/bin from files list
  - removed @modelcontextprotocol/inspector-bin dependency
  - rearranged and corrected scripts
2025-04-15 17:59:26 -04:00
Nicolas Barraud
dae389034a Change --tool-args to --tool-arg for consistency 2025-03-11 12:40:39 -04:00
Nicolas Barraud
f4e6f4d4ea Removed package-info.ts 2025-03-10 20:40:06 -04:00
Nicolas Barraud
4c4c8a0884 Add CLI and config file support 2025-03-10 20:19:23 -04:00