About mcp-cli
mcp-cli is a command line inspector for the Model Context Protocol, used to connect to and examine MCP servers. It suits developers who want to test servers interactively or from scripts.
Key features
- 01Runs MCP servers from several sources
- 02Lists tools, resources and prompts
- 03Calls tools and reads resources and prompts
- 04OAuth support for SSE and Streamable HTTP
- 05Non-interactive mode for scripting
Use cases
- 01Debugging a locally developed MCP server from the terminal
- 02Calling tools in batch through automation scripts
- 03Purging stored OAuth tokens and other local data
MCP support
This project acts as an MCP client and inspector, connecting to MCP servers over stdio, SSE or Streamable HTTP to browse their tools, resources and prompts.
Details
From the project READMEmcp-cli
A CLI inspector for the Model Context Protocol
https://github.com/user-attachments/assets/4cd113e9-f097-4c9d-b391-045c5f213183
Features
- Run MCP servers from various sources
- List Tools, Resources, Prompts
- Call Tools, Read Resources, Read Prompts
- OAuth support for SSE and Streamable HTTP servers
Usage
Run without arguments
npx @wong2/mcp-cli
This will use the config file of Claude Desktop.
Run with a config file
npx @wong2/mcp-cli -c config.json
The config file has the same format as the Claude Desktop config file.
Run servers from NPM
npx @wong2/mcp-cli npx <package-name> <args>
Add --pass-env if the server needs environment variables from your current shell.
Run locally developed server
npx @wong2/mcp-cli node path/to/server/index.js args...
Add --pass-env if the server needs environment variables from your current shell.
Connect to a running server over Streamable HTTP
npx @wong2/mcp-cli --url http://localhost:8000/mcp
Connect to a running server over SSE
npx @wong2/mcp-cli --sse http://localhost:8000/sse
Non-interactive mode
Run a specific tool, resource, or prompt without interactive prompts:
npx @wong2/mcp-cli [--config config.json] <command> <server-name>:<target> [--args '{}']
Examples:
# Call a tool without arguments
npx @wong2/mcp-cli -c config.json call-tool filesystem:list_files
# Call a tool with arguments
npx @wong2/mcp-cli -c config.json call-tool filesystem:read_file --args '{"path": "package.json"}'
# Read a resource
npx @wong2/mcp-cli -c config.json read-resource filesystem:file://system/etc/hosts
# Use a prompt
npx @wong2/mcp-cli -c config.json get-prompt filesystem:create_summary --args '{"text": "Hello world"}'
This mode is useful for scripting and automation, as it bypasses all interactive prompts and executes the specified primitive directly.
Purge stored data (OAuth tokens, etc.)
npx @wong2/mcp-cli purge
Related
- mcpservers.org - A curated list of MCP servers
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.