Project Structure
Where things live in the Inspector repo, which client owns which surface, what is in...
Install
npx skills add modelcontextprotocol/inspector --skill project-structure -g -a claude-code -y- Repository
- modelcontextprotocol/inspector11.2k
- Category
- Engineering
- Updated
- 6d ago
- License
- See repository
- Context cost
- Mediumabout 1,844 tokens
- Runs scripts
- No, instructions only
What it does
Where things live in the Inspector repo, which client owns which surface, what is in core/ versus clients/web, and what each top-level directory is for. Use when locating code, deciding where a new module belongs, or answering which package owns or contains a given area of the codebase.
Project structure
The Inspector is one npm package, @modelcontextprotocol/inspector, with three
clients (Web, TUI, CLI) over a shared core/. It is not an npm workspace, each client under clients/* keeps its own package.json and node_modules
(see /local-dev).
inspector/
├── clients/
│ ├── web/ Vite + React + Mantine SPA with a Node backend
│ │ ├── src/ Browser app: components, hooks, lib/, utils/, theme/
│ │ ├── server/ Node-only dev/prod backend wiring (see below)
│ │ └── static/ sandbox_proxy.html, served for the MCP Apps tab
│ ├── cli/ Scriptable CLI (tsdown bundle, @inspector/core alias)
│ ├── tui/ Ink + React terminal UI (tsdown bundle)
│ └── launcher/ The `mcp-inspector` bin; dispatches to web/cli/tui in-process
├── core/ Shared code, consumed via the `@inspector/core` alias (no package.json)
├── test-servers/ Composable MCP test servers + JSON configs used by tests and by hand
├── scripts/ Root build/verify tooling (install cascade, smokes, the verify:* guards)
│ and maintainer-workflow helpers (the pr:*, board:*, advisory:*,
│ release:notes, release:tag and action:resolve-pin aliases)
├── docs/ Task-oriented guides (see docs/README-style index in the root README)
├── specification/ Design/build specifications
└── AGENTS.md The rules contract, read this before changing anything
core/, the shared runtime
Its entry point is the InspectorClient class, which owns the connection to
an MCP server, the request/response lifecycle, and a set of state stores.
