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

- 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.
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.
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
- 01After a fresh clone, run
npm installat the repository root. - 02After pulling changes that modify a client dependency, re-run
npm installat 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
--configvs.--catalogsplit, 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 intomainat milestone releases;mainis the default branch and holds the latest released v2, published to the npmlatesttag. The legacy v1 line lives onv1/main— security fixes only, published straight from that branch to the npmv1-latesttag (npx @modelcontextprotocol/inspector@v1-latest). SeeAGENTS.mdfor 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,
--configvs.--catalogsemantics 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:
--catalogvs.--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-infoprobe → 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 installat the repo root. - After a pull that changes a client's dependencies: re-run
npm installat 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
Sources
Each field shows its status and source — expand to review.
Latest release
Verified2.9.0
Source: GitHub API · latest_release=2.9.0 · 10/3/2026
License
VerifiedNOASSERTION
Source: GitHub API · license.spdx_id=NOASSERTION · 10/3/2026
needs api key
VerifiedNo
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
Verifiedwindows, macos, linux, browser
Source: admin_cms · cms editor · 8/12/2026
Category hint
Inferred from materialsoss-self-host
Source: Project README · hint=oss-self-host · 8/12/2026
product forms
Verifiedweb, cli
Source: admin_cms · cms editor · 8/13/2026
supports docker
VerifiedYes
Source: Repository file · dockerfile=true; compose=false · 10/3/2026
supports local
VerifiedYes
Source: admin_cms · cms editor · 8/12/2026
supports self host
VerifiedNo
Source: admin_cms · cms editor · 8/12/2026
Related projects
Other verified projects matched by category, capabilities, and intended roles.
immich
High performance self-hosted photo and video management solution.
plane
Open-source project management and issue tracking platform as an alternative to Jira and Linear.
omarchy
A beautiful, modern, and opinionated Linux distribution created by DHH.
foundation-sunshine
An enhanced Sunshine fork for Windows game streaming, featuring HDR10/HDR Vivid, virtual displays, and advanced audio.
bookorbit
Self-hosted library for ebooks, PDFs, audiobooks, and comics with progress sync across web, Kobo, and KOReader.
autobase
Self-hosted DBaaS platform for PostgreSQL cluster management
