MCP Stdio Wrapper
MCP Stdio Wrapper
MCP Stdio Wrapper — это небольшой MCP-сервер, который позволяет одному MCP-клиенту запускать и проверять другой stdio MCP-сервер по требованию.
Его задача — устранить болезненный цикл разработки MCP: некоторые популярные MCP-хосты кэшируют процесс реального сервера, поэтому после каждого изменения кода вам приходится обновлять окно или перезапускать хост расширений только для того, чтобы провести дымовое тестирование изменений. Эта обертка располагается перед реальным целевым сервером и предоставляет вашему агенту стабильный мост для повторных дымовых тестов, пока целевая реализация продолжает меняться под ним.
Зачем это нужно
Используйте этот проект, если:
вы активно разрабатываете stdio MCP-сервер
ваш основной MCP-хост не выполняет надежную перезагрузку целевого сервера после каждого изменения
вы все еще хотите, чтобы агент перечислял инструменты, вызывал их, читал ресурсы и проверял промпты в процессе разработки
Этот проект намеренно ограничен. Он предназначен для локальной разработки и дымового тестирования, а не для проксирования производственного трафика.
Обертка также предоставляет встроенные руководства, которые агенты могут обнаружить напрямую:
ресурс:
wrapper://how-to-useпромпт:
tool_usage_guide
Related MCP server: Multi MCP
Как это работает
Обертка поддерживает два режима.
Инструменты для разовых операций (one-shot):
stdio_mcp_list_toolsstdio_mcp_call_toolstdio_mcp_list_resourcesstdio_mcp_read_resourcestdio_mcp_list_promptsstdio_mcp_get_prompt
Каждый вызов моста для разовой операции:
запускает целевой stdio MCP-сервер
выполняет одну MCP-операцию
возвращает результат
закрывает целевой процесс
Дополнительные инструменты сессии:
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
Это означает:
чистый целевой процесс для каждого дымового теста
возможность явной кратковременной сессии для многошаговой проверки
отсутствие скрытого кэширования
упрощенная отладка, так как stderr целевого процесса выводится при сбое
Быстрый старт
Клонируйте репозиторий и установите зависимости:
nvm use
npm installЗапустите обертку:
npm startОпубликованный пакет также можно запустить напрямую с помощью:
npx mcp-stdio-wrapperПакет опубликован по адресу https://www.npmjs.com/package/mcp-stdio-wrapper.
Этот репозиторий настроен для доверенной публикации npm из GitHub Actions. См. Контрольный список публикации для последовательности начальной публикации и передачи OIDC доверенной публикации.
Направьте ваш основной MCP-клиент на эту обертку, затем используйте один из инструментов моста с входными данными запуска, например:
{
"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
}Затем попросите вашего агента:
перечислить инструменты с реального целевого сервера
вызывать один целевой инструмент после каждого изменения кода
проверять чтение ресурсов или промпты
Используйте режим разовых операций для начальной проверки и небольших вызовов без сохранения состояния. Если цель возвращает дескрипторы в стиле jobId, ожидает сохранения состояния в памяти между вызовами или просто имеет долгий запуск, сначала откройте явную сессию, а затем используйте инструменты stdio_mcp_session_* перед ее закрытием.
Поверхность инструментов
Общие поля запуска:
command: целевой исполняемый файлargs: аргументы целевой командыcwd: необязательная рабочая директория целиinheritParentEnv: еслиtrue, объединяет переменные окружения процесса обертки с запуском целиenv: дополнительные переменные окружения целиstartupTimeoutMs: необязательный таймаут запуска и инициализации MCP для разовой операцииoperationTimeoutMs: необязательный таймаут операции для разовой операцииtimeoutMs: устаревший ярлык для обоих этапов разовой операции; инструменты сессии все еще используютtimeoutMs
Операции моста:
stdio_mcp_list_tools: проверка целевых инструментовstdio_mcp_call_tool: вызов одного целевого инструментаstdio_mcp_list_resources: проверка целевых ресурсовstdio_mcp_read_resource: чтение одного целевого ресурсаstdio_mcp_list_prompts: проверка целевых промптовstdio_mcp_get_prompt: получение определения одного целевого промпта
Операции сессии:
stdio_mcp_open_session: запуск одного целевого процесса и поддержание его работы для нескольких операцийstdio_mcp_get_session: проверка диагностики сессии, такой как статус, временные метки, pid, код выхода и хвост stderrstdio_mcp_close_session: закрытие активной или завершенной сессии и удаление ее записиstdio_mcp_session_list_tools: проверка инструментов через существующую сессиюstdio_mcp_session_call_tool: вызов одного целевого инструмента через существующую сессиюstdio_mcp_session_list_resources: проверка ресурсов через существующую сессиюstdio_mcp_session_read_resource: чтение одного целевого ресурса через существующую сессиюstdio_mcp_session_list_prompts: проверка промптов через существующую сессиюstdio_mcp_session_get_prompt: получение определения одного целевого промпта через существующую сессию
Руководства обертки:
wrapper://how-to-use: текстовое руководство по использованиюtool_usage_guide: форма промпта с теми же инструкциями
Режим сессии лучше подходит, когда:
цель возвращает отложенные дескрипторы, такие как
jobIdпоследующие вызовы должны попадать в тот же активный целевой процесс
запуск цели достаточно затратен, чтобы его повторение скрывало реальный цикл обратной связи
Заметки о безопасности
Эта обертка запускает произвольные команды, предоставленные вызывающей стороной.
Относитесь к аргументам запуска и переменным окружения как к конфиденциальным данным.
Используйте только с доверенными целевыми командами и доверенными локальными проектами.
Не выставляйте это как общедоступный многопользовательский сервис.
Документация
История звезд
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.
Related MCP Servers
- AlicenseNot gradedqualityFmaintenanceAn MCP server that enables programmatic management and monitoring of development servers through a unified interface and interactive TUI. It provides tools for process control, log streaming, and experimental browser automation via Playwright.1MIT
- AlicenseBqualityDmaintenanceA flexible proxy server that aggregates multiple backend MCP servers into a single interface using STDIO or SSE transports. It supports dynamic server management via an HTTP API and utilizes namespacing to prevent tool conflicts across connected services.31MIT
- FlicenseNot gradedqualityNot gradedmaintenanceA dynamic server that automatically discovers and executes scripts from a tools directory as isolated processes using the MCP protocol. It enables users to easily extend server capabilities by adding new tool scripts that communicate via JSON.
- AlicenseNot gradedqualityCmaintenanceA flexible MCP proxy server that connects to and routes between multiple backend MCP servers over STDIO or SSE, enabling dynamic management and namespacing of tools.111MIT
Related MCP Connectors
A MCP server built for developers enabling Git based project management with project and personal…
MCP Server for JFrog, providing tools for development and artifact management.
The MCP server for Azure DevOps, bringing the power of Azure DevOps directly to your agents.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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