MM

muthuishere/mcp-server-bash-sdk

Analytics & monitoring

Эта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал

516 stars 49 forks Качество 67 Тренд 28MIT

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)
  • jq for JSON processing (brew install jq / apt install jq / apk add jq)
  • (HTTP transport only) socat preferred, or netcat — 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

  1. Clone the repo
git clone https://github.com/muthuishere/mcp-server-bash-sdk
cd mcp-server-bash-sdk
  1. Make scripts executable
chmod +x mcpserver_core.sh moviemcpserver.sh
Открыть полный README на GitHub

Установка

This server does not publish a one-line install command.

Open the repository installation guide Новичок в MCP? Начните с руководства на mcpskill.org →