Skip to main content
Glama

ババシュカ MCP サーバー

スクリプト用のネイティブ Clojure インタープリターであるBabashkaと対話するためのモデル コンテキスト プロトコル サーバー。

特徴

  • MCPツールを通じてBabashkaコードを実行する

  • 最近のコマンド結果をキャッシュする

  • MCP リソースを通じてコマンド履歴にアクセスする

  • 設定可能なコマンドタイムアウト

Related MCP server: Akash MCP Server

前提条件

Babashkaをインストールする

Babashka はいくつかの方法でインストールできます。

macOS

brew install borkdude/brew/babashka

リナックス

bash < <(curl -s https://raw.githubusercontent.com/babashka/babashka/master/install)

ウィンドウズ

# Using scoop scoop install babashka

その他のインストール方法については、公式の Babashka インストール ガイドを参照してください。

インストールの確認

インストール後、Babashka が動作することを確認します。

# Check version bb --version # Try a simple expression bb -e '(+ 1 2 3)' # Run a script from string bb -e '(defn hello [x] (str "Hello, " x "!")) (hello "World")' # Use -i flag to process lines of input ls | bb -i '(take 2 *input*)'

インストール

# Install dependencies npm install # Build the MCP server npm run build

構成

サーバーは環境変数を通じて設定できます:

  • BABASHKA_PATH : Babashka 実行ファイルへのパス (デフォルト: "bb")

ツール

実行する

オプションのタイムアウト付きで Babashka コードを実行します。

{ name: "execute", arguments: { code: string; // Babashka code to execute timeout?: number; // Timeout in milliseconds (default: 30000) } }

例:

{ name: "execute", arguments: { code: "(+ 1 2 3)", timeout: 5000 } }

リソース

サーバーは、以下を通じてアクセスできる最近のコマンド実行のキャッシュを保持します。

  • babashka://commands/{index} - インデックスで特定のコマンド結果にアクセスします

ババシュカ語の特徴

末尾呼び出し最適化 (TCO)

Babashkaは、 recur特殊形式による明示的な末尾呼び出し最適化をサポートしていますが、自動TCOは実装していません。例えば、

;; This will cause stack overflow (defn countdown [n] (if (zero? n) :done (countdown (dec n)))) ;; This works with TCO using recur (defn countdown [n] (if (zero? n) :done (recur (dec n))))

役立つリソース

公式リソース

コミュニティツールとライブラリ

  • pod-babashka-buddy - Babashka 用の暗号化 API

  • bb-clis - 便利な Babashka CLI スクリプトのコレクション

  • bb-scripts - Babashka 用のさまざまなユーティリティ スクリプト

開発ツール

発達

このサーバーは最終的にセルフホスティングとなるように設計されており、Babashka 自体で書き換えられる予定です。現在の TypeScript 実装はリファレンスおよび出発点として機能します。

ロードマップ

  1. セルフホスト実装

    • BabashkaのMCPサーバーを書き換える

    • Babashka のネイティブ機能を活用してパフォーマンスを向上

    • Node.jsへの依存を削除する

    • MCPプロトコルとの完全な互換性を維持

    • 現在のすべての機能をサポートします:

      • コマンド実行

      • リソース管理

      • コマンド履歴

      • タイムアウト処理

  2. 強化された機能

    • Babashkaポッドのサポートを追加

    • ファイル監視機能を実装する

    • REPL統合を追加する

    • 複数の Babashka インスタンスのサポート

  3. パフォーマンスの最適化

    • キャッシュ戦略を実装する

    • リソース使用の最適化

    • 起動時間を短縮

  4. テストとドキュメント

    • 包括的なテストスイート

    • APIドキュメント

    • 使用例

    • パフォーマンスベンチマーク

One-click Deploy
A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

Tools

Latest Blog Posts

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/bmorphism/babashka-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server