modelcontextprotocolOpen source & self-hosting

inspector

Developer tool for inspecting and testing MCP servers through Web, CLI, and TUI clients.

  • Web
  • CLI
  • Windows
  • macOS
  • Linux
  • Browser
  • Runs locally
  • Docker supported
inspector screenshot
Popularity
11.0k Stars
GitHub stars
Recent activity
10/2/2026
Updated in the last 30 days
License
NOASSERTION
Review the terms yourself

Why it matters

We look beyond stars: what problem it solves, whether it creates real utility, and what makes its approach worth noticing.

Last 90 days

Problem

Addresses the need for inspecting and testing Model Context Protocol (MCP) servers with a unified developer environment.

Practical value

Provides Web, CLI, and TUI client interfaces through a single package, covering local interaction, automation, and terminal debugging.

Innovation / differentiation

Consolidates core logic into a shared package, distributing multiple interfaces through a unified build alias and command entry point.

Leverage potential

Relies on root-level dependency management and core module abstraction to reduce multi-client maintenance complexity.

Why now

Iterates alongside the Model Context Protocol ecosystem, meeting current developer demands for server debugging tools.

Community activity

In the last 90 days there were 507 new issues and 438 pull requests; the bounded issue/PR samples include 9 issue authors and 18 PR contributors, with at least 16 releases.

Maintainer responsiveness

The 100-issue window sample had a 100% close rate, and the 100-pull-request sample had a 63% merge rate. Maintainer-comment observations covered only 23% of that issue sample, so response rate and first-response speed are not reported.

18 contributors in PR sampleAt least 16 releasesPR merge rate 63% · 100 sampled in window

Key highlights

  • Inspect MCP servers through a web UI, CLI, or interactive TUI
  • Single binary entry point with npx @modelcontextprotocol/inspector
  • Shared core logic (@inspector/core) ensures consistent behavior across clients

Quick start

How it is installed, how hard it is, and where to start.

Where it runs

Runs locally

Difficulty

To be confirmed

Docker supportedRuns locally
  1. 01After a fresh clone, run npm install at the repository root.
  2. 02After pulling changes that modify a client dependency, re-run npm install at the root to re-sync every client.

Best for

  • Developers who want to try it on their machine
  • People who prefer Docker deploys

More about it

MCP Inspector

A developer tool for inspecting Model Context Protocol (MCP) servers. It ships as a single package, @modelcontextprotocol/inspector, that provides three ways to inspect a server:

  • Web — a Vite + React + Mantine single-page app with a Node backend.
  • CLI — a scriptable command-line client for automation, CI, and fast agent feedback loops.
  • TUI — an interactive terminal UI built with Ink.

All three run through one global mcp-inspector binary:

npx @modelcontextprotocol/inspector          # web UI (default)
npx @modelcontextprotocol/inspector --cli    # CLI
npx @modelcontextprotocol/inspector --tui    # TUI

Upgrading from v1? Read the v1 → v2 migration guide — CLI flags, the new --config vs. --catalog split, the Node engine bump, and what no longer ships.

Repo status. This is the v2 line of the Inspector. Active development happens on v2/main (the develop branch — all v2 PRs target it), which is merged into main at milestone releases; main is the default branch and holds the latest released v2, published to the npm latest tag. The legacy v1 line lives on v1/main — security fixes only, published straight from that branch to the npm v1-latest tag (npx @modelcontextprotocol/inspector@v1-latest). See AGENTS.md for branch/board conventions.

Project layout

v2 is not an npm workspace. Each client under clients/* keeps its own package.json and node_modules; shared code lives in core/ and is consumed via a @inspector/core build-time alias (no package.json of its own). A single npm install at the root cascades installs into every client (see Setup).

inspector/
├── clients/
│   ├── web/          # Web client (Vite + React + Mantine). src/ = browser app; server/ = Node dev/prod backend
│   ├── cli/          # CLI client (tsup bundle, @inspector/core alias)
│   ├── tui/          # TUI client (Ink + React, tsup bundle)
│   └── launcher/     # Shared launcher — provides the `mcp-inspector` bin, dispatches to web/cli/tui
├── core/             # Shared code consumed via the `@inspector/core` alias (no package.json)
│   ├── auth/         # OAuth: providers, discovery, storage, mid-session recovery (browser/node/remote backends)
│   ├── client/       # Install-level client config (`client.json`): browser-safe parse/validate + Node load/save, remote backend, secrets
│   ├── json/         # JSON + parameter/argument conversion utilities
│   ├── logging/      # Silent pino logger singleton
│   ├── mcp/          # InspectorClient runtime, state stores, transports, config import
│   ├── node/         # Node-only shared helpers: version reader, hostUrl (host normalize/canonicalize + all-interfaces/loopback detection)
│   ├── react/        # React hooks over the state stores
│   └── storage/      # File I/O helpers for the OAuth persist backends
├── test-servers/     # Composable MCP test servers + fixtures used by integration tests
├── scripts/          # Root build/verify tooling (install cascade, smokes, verify-build-gate, verify-format-coverage, verify-dep-lockstep, pack:verify)
├── docs/             # Task-oriented guides (v1→v2 migration, server configuration, MCP App review, launcher/config plan)
├── specification/    # Design/build specifications
├── AGENTS.md         # Contribution rules for agents AND humans (see below)
└── README.md         # You are here

Each client has its own README with client-specific detail:
web · cli · tui · launcher.

Task-oriented guides live under docs/:

  • Migrating from v1 to v2 — the v1 → v2 map: CLI flag mapping, --config vs. --catalog semantics with before/after examples, the Node engine bump (>=22.7.5 → >=22.19.0), env-var renames, and the sub-packages that no longer ship.
  • MCP server configuration — which server(s) the Inspector connects to: --catalog vs. --config, ad-hoc targets, the -- separator, the file format and its Inspector-specific per-server fields. Shared by all three clients; the cli and tui READMEs delegate their server-options sections to it.
  • Reviewing an MCP App — the CLI-first → one-shot-web recipe for automated App-tool review: --app-info probe → deep-link navigate → rendered widget, plus OAuth handoff and proxy support.
  • Launcher and config consolidation — why the launcher runs a client in-process rather than spawning it, and how the shared config processor fits in.

Setup

Requires Node >=22.19.0.

npm install     # root install; postinstall cascades into every client
  • Fresh clone: run npm install at the repo root.
  • After a pull that changes a client's dependencies: re-run npm install at the root to re-sync every client.

The cascade (scripts/install-clients.mjs) is dev-only — it exits early when the package is installed as a dependency, and the published tarball ships only each client's build/, so end users are unaffected. Set INSPECTOR_SKIP_CLIENT_INSTALL=1 to skip it.

Running during development

For day-to-day web iteration, run Vite directly from the web client (fast HMR, no launcher build needed):

cd clients/web && npm run dev

The launcher-driven scripts below run the built launcher, so build first (npm run build):

npm run web        # prod web launcher against clients/web/dist
npm run web:dev    # web launcher in --dev mode (Vite)

Sources

Each field shows its status and source — expand to review.

10 · Expand
  • Latest release

    Verified

    2.9.0

    Source: GitHub API · latest_release=2.9.0 · 10/3/2026

  • License

    Verified

    NOASSERTION

    Source: GitHub API · license.spdx_id=NOASSERTION · 10/3/2026

  • needs api key

    Verified

    No

    Source: admin_cms · cms editor · 8/12/2026

  • One-liner

    Verified

    {"en":"Developer tool for inspecting and testing MCP servers through Web, CLI, and TUI clients.","zh":"用于检查和测试 MCP 服务器的开发者工具,提供 Web、CLI 和 TUI 三种客户端。"}

    Source: admin_cms · cms editor · 8/12/2026

  • Platforms

    Verified

    windows, macos, linux, browser

    Source: admin_cms · cms editor · 8/12/2026

  • Category hint

    Inferred from materials

    oss-self-host

    Source: Project README · hint=oss-self-host · 8/12/2026

  • product forms

    Verified

    web, cli

    Source: admin_cms · cms editor · 8/13/2026

  • supports docker

    Verified

    Yes

    Source: Repository file · dockerfile=true; compose=false · 10/3/2026

  • supports local

    Verified

    Yes

    Source: admin_cms · cms editor · 8/12/2026

  • supports self host

    Verified

    No

    Source: admin_cms · cms editor · 8/12/2026

Other verified projects matched by category, capabilities, and intended roles.