MCP Inspector

A lean MCP server enabling LLMs to inspect and test other MCP servers through direct SDK integration and persistent sessions.
  • typescript

0

GitHub Stars

typescript

Language

6 months ago

First Indexed

3 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "esinecan-mcp-inspector-as-mcp-server": {
      "command": "node",
      "args": [
        "/path/to/mcp-inspector-as-mcp-server/dist/server.js"
      ]
    }
  }
}

You can run a lean MCP server that lets LLMs inspect and test other MCP servers directly through the MCP SDK. This inspector exposes tools to list and call MCP endpoints, manage sessions, and buffer events for debugging, all in a single, lightweight package.

How to use

You use this MCP Inspector as an MCP server by configuring it in your MCP client setup. The inspector supports creating a persistent session to interact with target MCP servers, listing available tools and resources, calling tools, reading resources, and observing events. You can steer the interaction in real time and observe the flow of traffic, notifications, and errors.

How to install

npm install
npm run build

Configuration and usage notes

Create an MCP configuration entry for the inspector as a local (stdio) MCP server. This makes it possible to run the inspector in-process alongside other MCP servers or from a separate process, depending on your environment.

{
  "mcpServers": {
    "mcp_inspector": {
      "command": "node",
      "args": ["/path/to/mcp-inspector-as-mcp-server/dist/server.js"]
    }
  }
}

Tools supported by the inspector

The inspector exposes a set of tools to manage sessions, inspect and invoke other MCP servers, and read resources and prompts. These tools are designed to help you test and observe the behavior of MCP servers in a controlled environment.

Notes on transport and sessions

The inspector can operate over multiple transport types, including stdio (local commands) and HTTP/SSE transports for remote servers. You can establish persistent sessions to preserve state across multiple tool calls, with automatic garbage collection after 30 minutes of inactivity.

Human steering and observability

Use the inspector to observe MCP interactions in real time and optionally inject steering messages to guide LLM-driven testing. You can read buffered events to understand traffic, notifications, and errors, and you can push steering messages to influence subsequent tool responses.

Example workflow

  1. Start the inspector as an MCP server using the stdio configuration above. 2) Establish a persistent session with a target MCP server. 3) List available tools on the target server. 4) Call a tool and observe results. 5) Read events to monitor activity. 6) Close the session when finished.

Troubleshooting

If you encounter connection issues, verify the stdio command path to the inspector server, ensure the server has permissions to run, and check that your MCP client is configured to use the correct transport type. Review event buffers for any errors reported during tool calls.

Available tools

insp_connect

Establish a persistent connection to an MCP server and obtain a session_id.

insp_disconnect

Close a persistent session and release resources.

insp_list_sessions

List all active sessions with status and idle time.

insp_read_events

Read buffered events such as notifications, traffic, and errors from a session.

insp_inject_steering

Inject a steering message into a session's queue to guide testing.

insp_tools_list

List all tools exposed by an MCP server.

insp_tools_call

Call a tool on an MCP server.

insp_resources_list

List all resources exposed by an MCP server.

insp_resources_read

Read a specific resource from an MCP server.

insp_resources_templates

List resource templates.

insp_prompts_list

List all prompts available on the MCP server.

insp_prompts_get

Get a specific prompt by name or id.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational