Skip to main content
Glama

blah-mcp

by thomasdavis

極限のPOCモードのプロジェクト - 全く安定していない - ドキュメントとビジョンは単なるメモです

BLAH - ほとんど論理的ではないエージェントホスト - アップデート #1

(ツール用のnpmjsと考えてください)

このリストが完全に完了すると、BLAH JSON スキーマが完成します。

  • [ ] ツール
    • [x] ローカル関数
    • [x] ホストされた関数
    • [ ] レジストリ
      • [ ] 公開
      • [ ] 閲覧
    • [x] McPサポート
      • [x] ローカルStdio
      • [x] ローカルSSE
      • [ ] ホスト型SSE
    • [x] スロップサポート
      • [x] ローカルスロップ
      • [x] ホストされたスロップ
    • [ ] ツールの構成可能性
      • [ ] グループ化
      • [ ] フロー
      • [ ] トリガー / タグ
    • [ ] 延長
      • [x] ローカル blah.json
      • [ ] ホストされたblah.json
    • [ ] デバッグ
      • [ ] 遊び場
      • [ ] ログ記録

注記:

  • フローはagnt.ggのフロースキーマのサブセットを使用します。
  • 拡張とは、blah.json を好きなように構成できることを意味します。(デザイナーが使用するツールだけを含めたい場合はどうなるか考えてみてください)
  • レジストリは、関数(ツール)をプッシュしたりプルしたりする便利な方法を意味します。

BLAH - ほとんど論理的ではないエージェントホスト

BLAHは、モデルコンテキストプロトコル(MCP)を用いてAIエージェントツールを管理、配布、実行するためのオープンソースエコシステムです。MCPサーバー用の分散型レジストリを提供することで、透明性、セキュリティ、そしてコミュニティ主導の開発を促進します。

プロジェクト構造

このプロジェクトは、Turborepo を使用してモノレポとして構成されています。

  • packages/cli - MCP を操作するためのメインの BLAH CLI ツール
  • apps/web - BLAH の Web インターフェース
  • apps/docs - ドキュメントサイト

はじめる

前提条件

  • Node.js >= 18.18.0 (Node 20以上を推奨)
  • pnpm

インストール

# Clone the repository git clone https://github.com/thomasdavis/blah.git cd blah # Install dependencies pnpm install # Build the project pnpm run build

CLI によるクイックスタート

BLAH CLI の使用に関する詳細な手順については、 CLI README を参照してください。

# Navigate to the CLI package cd packages/cli # Set up your environment variables (.env file) echo "OPENAI_API_KEY=your_openai_api_key_here" > .env echo "BLAH_HOST=https://ajax-blah.web.val.run" >> .env # Run a simulation pnpm run simulate

現在作業中

  • [ ] 任意のモデル/IDEを使用してMCPサーバーをデバッグする方法が必要です
  • [ ] ポータルについて考える
  • [ ] リサ・ワッツが「オートン」を思いついた。おそらく私が提案しようとしているのはそれだ

無関係なアイデア

  • [ ] アイデアの状態を保存して、コミットしなかった場合の損失を防ぐ必要があります。
  • [ ] ソーシャルツールへの賛成票
  • [ ] 自動エラー率
  • [ ] ツールの組み合わせ結果を共有する

ローカルのblah.jsonを使用する

ホストされた blah.json (Valtown)

はじめに(ホスト型)

  1. Valtownアカウントを設定する
  2. blahという名前の新しいHTTP関数を作成します
export default async function server(request: Request): Promise<Response> { const tools = [ { name: "hello_name", description: `Says hello to the name`, inputSchema: { type: "object", properties: { name: { type: "string", description: `Name to say hello to`, }, }, }, }, ]; return new Response(JSON.stringify(tools), { headers: { "Content-Type": "application/json", }, status: 200, }); }

クライアントに追加する

  • クロード
    • デスクトップ
    • コード (CLI)
  • カーソル
  • クライン
  • ウィンドサーフィン
  • BLAHクライアント
  • 良いウェブクライアントはまだあるでしょうか

発達

私は開発を楽にするためのツールの開発に今も取り組んでいます。

ログ記録

これを開発している間、私はすべてのクライアントからログを送信して、さまざまな構成が原因でクライアントがスローしているすべてのエラーを把握したいと考えています。

遊び場

今のところは、プロンプト、リソース、ツールを一覧表示するだけの基本的なクライアントです。将来的には対話型クライアントも追加される予定で、テストも実行できるようになります。

npm run playground

改善が必要

  • [ ] Valtown が現在のラッパーですが、Vercel 関数などを使用した代替手段が必要です。
  • [ ] 構成可能性のための優れた戦略が必要

クレジット

  • リサ・ワッツ
  • トラヴィス
  • ウォンバット

AIが生成したデタラメ(上記は本物です)

  • mcp サーバーバージョンバッジ
  • レジストリの稼働状況

BLAH とは何ですか?

BLAHは、モデルコンテキストプロトコル(MCP)を用いてAIエージェントツールを管理、配布、実行するためのオープンソースエコシステムです。MCPサーバー用の分散型レジストリを提供することで、インセンティブの不一致を防ぎ、透明性、セキュリティ、そしてコミュニティ主導の開発を促進します。

主な機能:

  • あらゆるシステム(IDE、AIプラットフォームなど)が接続できるオープンソースインフラストラクチャ
  • 無制限のツール選択をサポートする言語に依存しないツールレジストリ
  • MCP サーバーのオプションの署名と検証による強力なセキュリティ
  • ツールの公開、検出、管理のための包括的な CLI
  • さまざまなツール タイプのサポート: 関数、REST エンドポイント、ローカル ファイル、標準マニフェスト

🔍 ビジョン

BLAHは、簡単に共有、発見、そして構成できる新世代のAIツールの基盤となることを目指しています。私たちは、次のような未来を思い描いています。

  1. 誰でもAIの機能を拡張するツールを作成し共有できる
  2. 技術的なバックグラウンドに関係なく、誰もが豊富なツールのエコシステムにアクセスできます。
  3. すべてのシステムは標準プロトコルを通じてこのエコシステムと統合できる

🚀 はじめに

インストール

npm install -g blah-mcp

基本的な使い方

# Search for tools blah search "image generation" # Install a tool blah install awesome-image-generator # List installed tools blah list # Get info about a tool blah info awesome-image-generator

📖 コアコンセプト

レジストリ

BLAH のレジストリは、npm などのパッケージ マネージャーから学んだ教訓に基づいて設計されており、次の点に重点を置いています。

  • 透明性: すべてのインフラストラクチャコードはオープンソースです
  • 分散化: ストレージオプションには、ローカル、クラウド、IPFS、GIST が含まれます。
  • セキュリティ: MCP サーバーの検証付き署名 (オプション)
  • ガバナンス: 単一の組織がエコシステムを管理することなく、コミュニティ主導で運営される

エージェントの行動

BLAH はさまざまなエージェントインタラクションパターンをサポートしています。

  • 並列実行
  • 再帰的なツール呼び出し
  • 分岐ワークフロー
  • 順次処理
  • 複雑なグラフベースのワークフロー

ツール定義

BLAH のツールは基本的に関数ですが、次のように表すことができます。

  • コードスニペット
  • RESTfulエンドポイント
  • ローカル実行ファイル
  • 標準マニフェスト(SLOP、agents.json)

すべてのツールは、それがどのように呼び出されるかについて明示的に文書化する必要がありますが、これは必須ではありません。

🛠️ CLI コマンド

BLAH には包括的な CLI が付属しています。

blah publish - Publish a tool to the registry blah search - Search for tools by name, tag, or description blah install - Install a tool blah remove - Remove an installed tool blah update - Update tools to latest versions blah list - List installed tools blah info - Display information about a tool blah config - Configure BLAH settings blah login - Authenticate with registry blah logout - End authentication session blah whoami - Show current authenticated user blah version - Display version information blah help - Show help information

📋 マニフェスト

BLAH はマニフェストファイル( blah.json )を使用してツールとその依存関係を定義します。このマニフェストは、以下の場所に配置できます。

  • プロジェクトワークスペース
  • ホームディレクトリ内
  • クラウドでホスト
  • GistまたはIPFSで

blah.json :

{ "name": "awesome-image-generator", "version": "1.0.0", "description": "Tool for generating awesome images", "entry": "./dist/index.js", "tools": [ { "name": "generate_image", "description": "Generates an image from a text prompt", "parameters": { "prompt": { "type": "string", "description": "Text description of the desired image" }, "style": { "type": "string", "enum": ["realistic", "cartoon", "abstract"], "default": "realistic" } } } ], "dependencies": { "image-gen-lib": "^2.0.0" }, "tags": ["image", "generation", "creative"] }

🔄 標準サポート

BLAH は以下の製品をサポートし、互換性の確保を目指しています。

  • モデルコンテキストプロトコル(MCP)
  • SLOP (言語オペレータプロトコルの構造)
  • エージェント.json
  • [コンバーターを介した独自のカスタムプロトコル]

🌟 検出とメタデータ

BLAH のツールは次のように編成されます。

  • タグ(例:#TOOLBELT)
  • 直感的なナビゲーションのためのセマンティックメタデータ
  • 人気度に基づく推奨事項の使用状況分析
  • ユーザーベースの推奨事項(類似のユーザーが使用したツール)

🏗️ 建築

BLAH は 3 つの主要コンポーネントで構成されています。

  1. レジストリ: ツールの保存と検出用
  2. CLI : レジストリの操作やツールの管理に使用します
  3. MCP サーバー: エージェント ワークフロー内でツールを実行するため

現在、 ValTown はレジストリ ストレージとコンピューティングの主なバックエンドとして機能していますが、代替の実装も歓迎されます。

🔒 セキュリティとアカウンタビリティ

BLAH はセキュリティを重視しています。

  • MCP サーバーのオプション署名
  • サンドボックス環境でのコード実行
  • 説明責任のための包括的なログ記録
  • 現地の法律および規制の遵守

🚧 ロードマップ

  • [ ] MCPサーバーをクラウドプラットフォーム(例:Cloudflare Workers)でホストする
  • [ ] Webベースのツールエクスプローラーとドキュメントサイトを作成する
  • [ ] デバッグと開発者エクスペリエンスの向上
  • [ ] ツール作成ウィザード/ジェネレーターを開発する
  • [ ] ツール推奨システムを実装する

🧠 将来のアイデア

  • パーソナライズされたツールの推奨のためのユーザー行動の共有
  • cronのようなメカニズムによるエージェントのスケジュール実行
  • レジストリ管理のための分散型ガバナンスモデル
  • カスタムレジストリ実装のための拡張エコシステム

🤝 貢献する

貢献を歓迎します!貢献に関する詳しいガイドラインについては、近日中にご確認ください。

👏 クレジット

このプロジェクトに多大な貢献をしてくださった Lisa と Wombat に特に感謝します。

📄 ライセンス

BLAHはMITライセンスの下でリリースされています。詳細はLICENSEファイルをご覧ください。


Related MCP Servers

  • A
    security
    A
    license
    A
    quality
    Easily find MCP servers using our MCP registry. Search with natural language.
    Last updated -
    1
    3
    JavaScript
    MIT License
  • A
    security
    A
    license
    A
    quality
    A tool that dynamically generates and configures MCP servers by automatically creating necessary directories and files according to user specifications.
    Last updated -
    1
    9
    9
    JavaScript
    MIT License
  • A
    security
    A
    license
    A
    quality
    A tool that helps manage and synchronize MCP server configurations across different AI assistant clients (Cline, Roo Code, WindSurf, Claude), automating the process of retrieving, listing, adding, and removing server configurations from client configuration files.
    Last updated -
    6
    6
    1
    JavaScript
    MIT License
    • Apple
  • -
    security
    A
    license
    -
    quality
    An MCP server implementation that standardizes how AI applications access tools and context, providing a central hub that manages tool discovery, execution, and context management with a simplified configuration system.
    Last updated -
    9
    Python
    MIT License

View all related MCP servers

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/thomasdavis/blah'

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