
muthuishere/mcp-server-bash-sdk
Analytics & monitoringЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
SDK/пример сервера MCP, полностью реализованный в bash — создание сервера Model Context Protocol без зависимости во время выполнения, кроме POSIX shell.
Обзор
Лёгкая реализация сервера Model Context Protocol (MCP) с нулевыми накладными расходами на чистом Bash. Большинство MCP-серверов — это просто обёртки API с конвертацией схемы. Эта реализация предоставляет нулевую накладную альтернативу Node.js, Python или другим сложным временам выполнения. ✅ * Полный протокол JSON-RPC 2.0 по stdio * ✅ Полная реализация протокола MCP * ✅ Динамическое обнаружение инструментов с помощью наименования функций * ✅ Внешняя конфигурация через JSON-файлы * ✅ Легко расширять с помощью пользовательских инструментов - Bash shell — jq для JSON-обработки (brew install jq на macOS) - : Обрабатывает протоколы JSON-RPC и MCP - : Содержит функции бизнес-логики - : Конфигурационные файлы JSON При реализации функций инструментов для MCP-сервера следуйте следующим рекомендациям: 1. : Все функции инструментов должны иметь префикс tool_ с тем же именем, определённым в tools_list.json 2. : Каждая функция должна принимать один параметр $1, содержащий JSON-аргументы 3. : Для успешных операций повторяйте результат и возвращайте 0 4.
Обзор (машинный перевод)
Легкая реализация сервера Model Context Protocol (MCP) с нулевыми накладными расходами в чистом Bash — ориентированная на текущую версию 2026-07-28.
📖 Сайт документации · 🧩 Примеры · 🧠 Архитектурные решения · 🔬 Шипы
Почему? Большинство MCP-серверов — это просто обёртки API с конвертацией схем. Эта реализация предоставляет нулевую накладную альтернативу Node.js, Python или другим интенсивным режимам выполнения.
Почему именно сейчас? Редакция 2026-07-28 сделала MCP безсостоятельным: без initialize рукопожатия, без сессий, без серверных запросов. Одна строка входа, одна строка выхода — что точно соответствует форме shell-цикла чтения. Bash перешёл из неудобного подхода к естественному.
📋 Особенности
- ✅ MCP 2026-07-28 — согласование версии без состояния, по запросу
- ✅ Оба стандартных транспорта: stdio и Streamable HTTP, из одного серверного файла
- ✅
server/discover,tools/list,tools/call✅ * Динамическое обнаружение инструментов с помощью конвенции наименования функций ✅ * Внешняя конфигурация через JSON-файлы ✅ * Вывод проверен по официально опубликованной схеме JSON
🔧 Требования
- Bash 3.2 или новее (3.2 — это версия macOS под названием
/bin/bash)
Эта страница переведена автоматически. Технические детали смотрите в оригинале.
README
Показан фрагмент оригинального README. Открыть оригинал.
🐚 MCP Server in Bash
A lightweight, zero-overhead implementation of the Model Context Protocol (MCP) server in pure Bash — targeting the current 2026-07-28 revision.
📖 Documentation site · 🧩 Examples · 🧠 Architecture decisions · 🔬 Spikes
Why? Most MCP servers are just API wrappers with schema conversion. This implementation provides a zero-overhead alternative to Node.js, Python, or other heavy runtimes.
Why now? The 2026-07-28 revision made MCP stateless: no initialize handshake, no sessions, no server-initiated requests. One line in, one line out — which is exactly the shape of a shell read loop. Bash went from an awkward fit to a natural one.
📋 Features
- ✅ MCP 2026-07-28 — stateless, per-request version negotiation
- ✅ Both standard transports: stdio and Streamable HTTP, from the same server file
- ✅
server/discover,tools/list,tools/call - ✅ Dynamic tool discovery via function naming convention
- ✅ External configuration via JSON files
- ✅ Output validated against the official published JSON Schema
🔧 Requirements
- Bash 3.2 or newer (3.2 is what macOS ships as
/bin/bash) jqfor JSON processing (brew install jq/apt install jq/apk add jq)- (HTTP transport only)
socatpreferred, ornetcat— see the note under Transports - (optional) Python with
jsonschema, only to run the schema conformance test
Supported platforms
Verified by running the real test suites on each, not by inspection —
./scripts/test-linux.sh all reproduces the Linux rows on any machine with Docker.
| Platform | Shell | Unit | HTTP |
|---|---|---|---|
| macOS | bash 3.2 (/bin/bash) and 5.x |
31/31 | 19/19 |
| Debian / Ubuntu | bash 5.2 | 31/31 | 19/19 |
| Alpine (musl + busybox) | bash 5.3 | 31/31 | 19/19 |
Docker is needed only to verify other platforms — never to run a server.
🚀 Quick Start
- Clone the repo
git clone https://github.com/muthuishere/mcp-server-bash-sdk
cd mcp-server-bash-sdk
- Make scripts executable
chmod +x mcpserver_core.sh moviemcpserver.sh
Установка
This server does not publish a one-line install command.
Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →