MCP Stdio Wrapper
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@MCP Stdio Wrapperlist tools from the node server at ./dist/index.js"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP Stdio Wrapper
MCP Stdio Wrapper is a small MCP server that lets one MCP client launch and inspect another stdio MCP server on demand.
Its job is to remove a painful MCP development loop: some mainstream MCP hosts cache the real server process, so after every code change you end up refreshing the window or restarting the extension host just to smoke-test the change. This wrapper sits in front of the real target server and gives your agent a stable bridge for repeated smoke tests while the target implementation keeps changing underneath it.
Why This Exists
Use this project when:
you are actively developing a stdio MCP server
your main MCP host does not reliably reload the target server after each change
you still want an agent to list tools, call tools, read resources, and inspect prompts throughout development
This project is intentionally narrow. It is for local development and smoke testing, not for production traffic proxying.
The wrapper also exposes built-in guidance that agents can discover directly:
resource:
wrapper://how-to-useprompt:
tool_usage_guide
How It Works
The wrapper exposes two modes.
Default one-shot tools:
stdio_mcp_list_toolsstdio_mcp_call_toolstdio_mcp_list_resourcesstdio_mcp_read_resourcestdio_mcp_list_promptsstdio_mcp_get_prompt
Each one-shot bridge call:
launches the target stdio MCP server
performs one MCP operation
returns the result
closes the target process
Optional session tools:
stdio_mcp_open_sessionstdio_mcp_get_sessionstdio_mcp_close_sessionstdio_mcp_session_list_toolsstdio_mcp_session_call_toolstdio_mcp_session_list_resourcesstdio_mcp_session_read_resourcestdio_mcp_session_list_promptsstdio_mcp_session_get_prompt
That means:
a clean target process per one-shot smoke test
an explicit short-lived session option for multi-step validation
no hidden caching behavior
easier debugging because target stderr is surfaced on failure
Quick Start
Clone the repo and install dependencies:
nvm use
npm installStart the wrapper:
npm startThe published package can also be run directly with:
npx mcp-stdio-wrapperThe package is published at https://www.npmjs.com/package/mcp-stdio-wrapper.
This repo is set up for npm trusted publishing from GitHub Actions. See Publishing checklist for the initial publish sequence and the OIDC trusted-publishing handoff.
Point your main MCP client at this wrapper, then use one of the bridge tools with launch input like:
{
"command": "node",
"args": ["C:\\path\\to\\your-mcp\\dist\\index.js"],
"cwd": "C:\\path\\to\\your-mcp",
"inheritParentEnv": true,
"env": {
"EXAMPLE_ENV": "value"
},
"startupTimeoutMs": 30000,
"operationTimeoutMs": 30000
}Then ask your agent to:
list tools from the real target server
call one target tool after each code change
verify resource reads or prompts
Use one-shot mode for initial inspection and small stateless calls. If the target returns jobId-style handles, expects in-memory state between calls, or simply has expensive startup, open an explicit session first and then use the stdio_mcp_session_* tools before closing it.
Tool Surface
Common launch fields:
command: target executableargs: target command argumentscwd: optional target working directoryinheritParentEnv: whentrue, merge the wrapper process environment into the target launchenv: additional target environment variablesstartupTimeoutMs: optional one-shot startup and MCP initialize timeoutoperationTimeoutMs: optional one-shot operation timeouttimeoutMs: legacy one-shot shortcut for both phases; session tools still usetimeoutMs
Bridge operations:
stdio_mcp_list_tools: inspect target toolsstdio_mcp_call_tool: call one target toolstdio_mcp_list_resources: inspect target resourcesstdio_mcp_read_resource: read one target resourcestdio_mcp_list_prompts: inspect target promptsstdio_mcp_get_prompt: fetch one target prompt definition
Session operations:
stdio_mcp_open_session: launch one target process and keep it alive for multiple operationsstdio_mcp_get_session: inspect session diagnostics like status, timestamps, pid, exit code, and stderr tailstdio_mcp_close_session: close a live or terminal session and remove its recordstdio_mcp_session_list_tools: inspect tools through an existing sessionstdio_mcp_session_call_tool: call one target tool through an existing sessionstdio_mcp_session_list_resources: inspect resources through an existing sessionstdio_mcp_session_read_resource: read one target resource through an existing sessionstdio_mcp_session_list_prompts: inspect prompts through an existing sessionstdio_mcp_session_get_prompt: fetch one target prompt definition through an existing session
Wrapper guidance surfaces:
wrapper://how-to-use: plain-text usage guidetool_usage_guide: prompt form of the same instructions
Session mode is the better fit when:
the target returns deferred handles like
jobIdfollow-up calls must hit the same live target process
target startup is expensive enough that repeating it obscures the real feedback loop
Safety Notes
This wrapper launches arbitrary commands supplied by the caller.
Treat launch arguments and env vars as sensitive.
Only use it with trusted target commands and trusted local projects.
Do not expose this as a public multi-tenant service.
Documentation
Star History
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/JoshuaGreeff/mcp-stdio-wrapper'
If you have feedback or need assistance with the MCP directory API, please join our Discord server