Skip to content

MCP Server in Bash

Bash로 구현한 MCP 서버

About

  • MCP Server in Bash는 MCP 서버를 Node.js, Python 없이 오직 Bash와 jq만으로 구현한 초경량 오픈소스
  • 복잡한 러닝타임 없이, 완벽한 JSON-RPC 2.0 기반의 MCP 프로토콜을 stdio로 처리하며, 함수 네이밍 규칙을 이용해 동적으로 툴(기능) 확장이 가능
    • 설정 및 기능 정의를 모두 JSON 파일로 관리할 수 있어, 간단하게 각종 커스텀 MCP 서버를 빠르게 만들 수 있음
  • VS Code, GitHub Copilot Chat 등에서 별도 언어 환경 없이 연동 가능
  • 대부분의 MCP 서버가 무거운 API wrapper에 불과한 반면, 이 프로젝트는 로컬 자동화/AI 에이전트 도구로 적합한 실용적 접근 제공
  • 한계 :
    • Bash 기반으로 동시성, 메모리 관리, 스트리밍 응답 미지원
    • 대량 요청/고성능 실시간 처리에는 부적합, 하지만 AI 보조/로컬 도구 목적에는 충분

📋 Features

  • ✅ Full JSON-RPC 2.0 protocol over stdio
  • ✅ Complete MCP protocol implementation
  • ✅ Dynamic tool discovery via function naming convention
  • ✅ External configuration via JSON files
  • ✅ Easy to extend with custom tools

커스텀 MCP 서버 제작 방법

  • 비즈니스 로직 쉘 스크립트 생성(weatherserver.sh 등)
    • 예: tool_get_weather, tool_get_forecast 함수 구현
    • 외부 API 호출, 결과 JSON으로 반환
  • assets/tools_list.json에서 각 툴 파라미터, 설명 정의
  • mcpserverconfig.json에서 버전, 서버명, 기능 정의
  • 파일 실행 권한 부여 후, stdio 통해 명령 송수신

See also

Favorite site