mcp-server-bash-sdk  by muthuishere

MCP server SDK in Bash

Created 3 months ago
485 stars

Top 63.4% on SourcePulse

GitHubView on GitHub
Project Summary

This project provides a lightweight, zero-overhead implementation of the Model Context Protocol (MCP) server entirely in Bash. It's designed for developers and AI researchers who need a simple, self-contained way to expose custom tools and logic to AI systems like GitHub Copilot Chat, without the overhead of heavier runtimes like Node.js or Python. The primary benefit is extreme simplicity and portability for AI-driven tool integration.

How It Works

The server operates by leveraging Bash scripting and jq for JSON processing. It implements the JSON-RPC 2.0 protocol over standard input/output (stdio) for communication with an MCP host. Business logic is implemented as individual Bash functions prefixed with tool_, which are dynamically discovered and exposed based on a tools_list.json configuration. This approach avoids external dependencies beyond Bash and jq, making it highly portable and easy to extend.

Quick Start & Requirements

  • Install: git clone https://github.com/muthuishere/mcp-server-bash-sdk
  • Requirements: Bash shell, jq (install via brew install jq on macOS).
  • Setup: Clone the repository and make scripts executable (chmod +x *.sh).
  • Example: echo '{"jsonrpc": "2.0", "method": "tools/call", "params": {"name": "get_movies"}, "id": 1}' | ./moviemcpserver.sh
  • Documentation: Blog Post

Highlighted Details

  • Full JSON-RPC 2.0 and MCP protocol implementation in pure Bash.
  • Dynamic tool discovery via function naming convention (tool_*).
  • External configuration support via JSON files.
  • Designed for integration with AI assistants like GitHub Copilot Chat.

Maintenance & Community

The project appears to be a personal project by muthuishere. No specific community channels (Discord/Slack) or roadmap are mentioned in the README.

Licensing & Compatibility

  • License: MIT License.
  • Compatibility: Permissive MIT license allows for commercial use and integration into closed-source projects.

Limitations & Caveats

The implementation lacks concurrency and parallel processing capabilities, has limited memory management, and does not support streaming responses, making it unsuitable for high-throughput scenarios.

Health Check
Last Commit

3 months ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
6 stars in the last 30 days

Explore Similar Projects

Feedback? Help us improve.