Skip to main content

CLI tool for exploring MCP servers

Project description

mcp-explorer

PyPI Changelog Tests License

CLI tool for exploring MCP servers

Installation

Install this tool using pip:

pip install mcp-explorer

Usage

List the tools exposed by a streamable HTTP MCP server:

mcp-explorer list https://agentic-mermaid.dev/mcp

The default output is deliberately compact: each tool is shown as a signature and a one-line description. Use -N or --no-truncate for full descriptions and detailed parameter metadata:

mcp-explorer list -N https://agentic-mermaid.dev/mcp

This forces the current MCP 2 stateless protocol by default. Use --legacy to force the older initialize-handshake protocol instead:

mcp-explorer --legacy list https://agentic-mermaid.dev/mcp

Use --json to output the complete tool definitions, including their input schemas:

mcp-explorer --json list https://agentic-mermaid.dev/mcp

Inspect a single tool in detail:

mcp-explorer inspect https://agentic-mermaid.dev/mcp render_svg

This displays the tool's complete description, nested input and output schemas, annotations, execution metadata, icons, and _meta. Use --json for the complete tool definition as a single JSON object:

mcp-explorer --json inspect https://agentic-mermaid.dev/mcp render_svg

Call a tool by passing its arguments as a JSON object:

mcp-explorer call \
  https://agentic-mermaid.dev/mcp \
  verify \
  '{"source":"graph TD; A-->B"}'

Alternatively, use repeatable -a/--argument NAME VALUE options:

mcp-explorer call \
  https://agentic-mermaid.dev/mcp \
  render_svg \
  -a source 'graph TD; A-->B' \
  -a options '{"padding":24}'

Use - to read the raw JSON object from standard input:

mcp-explorer call URL TOOL - < arguments.json

When raw JSON and -a are combined, individual arguments override matching top-level keys in the JSON object and later -a values win. Values are interpreted using the tool's input schema: strings remain literal, while numbers, booleans, arrays, objects, and null are parsed as JSON. The assembled arguments are validated against the input schema before the tool is called.

Use the shared --json option for the complete MCP CallToolResult:

mcp-explorer --json call URL TOOL -a name value

List every prompt exposed by a server:

mcp-explorer prompts URL
mcp-explorer prompts --json URL
mcp-explorer prompts --legacy URL

The human-readable output includes prompt arguments and whether each is required. JSON output contains the complete prompt definitions.

List every directly-addressable resource exposed by a server:

mcp-explorer resources URL
mcp-explorer resources --json URL
mcp-explorer resources --legacy URL

The human-readable output includes each resource URI, MIME type, size, and description when available. Both commands follow pagination until all results have been collected. The shared root-level --json and --legacy forms are also supported.

Use info to show the selected protocol, negotiation mechanism, supported versions, server identity, capabilities, and instructions:

mcp-explorer info https://agentic-mermaid.dev/mcp
mcp-explorer info --json https://agentic-mermaid.dev/mcp

Use doctor to check both stateless and legacy compatibility. The selected mode is checked first and determines the exit status:

mcp-explorer doctor https://agentic-mermaid.dev/mcp
mcp-explorer --legacy doctor https://agentic-mermaid.dev/mcp

The shared --json form is still accepted before any command. The --stateless/--legacy option is shared and must appear before the command name.

For help, run:

mcp-explorer --help

You can also use:

python -m mcp_explorer --help

Development

To contribute to this tool, first checkout the code. Run the tests like this:

cd mcp-explorer
uv run pytest

And the development version of the tool like this:

uv run mcp-explorer --help

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_explorer-0.1.tar.gz (19.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_explorer-0.1-py3-none-any.whl (13.6 kB view details)

Uploaded Python 3

File details

Details for the file mcp_explorer-0.1.tar.gz.

File metadata

  • Download URL: mcp_explorer-0.1.tar.gz
  • Upload date:
  • Size: 19.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for mcp_explorer-0.1.tar.gz
Algorithm Hash digest
SHA256 d99ee0f8eb460451bce5f46375c2aff4a1862dc50505d765148762bfec21dc00
MD5 510c3993fb2c8d5888966c7e4a34cb47
BLAKE2b-256 509bcc52020d479bc821fda40a326d4258c1a77dea1c2bf864a09c12d6622246

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcp_explorer-0.1.tar.gz:

Publisher: publish.yml on simonw/mcp-explorer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mcp_explorer-0.1-py3-none-any.whl.

File metadata

  • Download URL: mcp_explorer-0.1-py3-none-any.whl
  • Upload date:
  • Size: 13.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for mcp_explorer-0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 be350ff12e4824bd9b2b2995ad8f4cdacbeebe12e4134724ffff99498123da9b
MD5 0de361616803d67886523149ba27af29
BLAKE2b-256 7e8e3bbf3ae85f68423c7218e3538f0c341c30238a4355dcddc5e0062e85bc25

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcp_explorer-0.1-py3-none-any.whl:

Publisher: publish.yml on simonw/mcp-explorer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page