Yokai について
Yokai は、シンプルさ、モジュール性、オブザーバビリティを重視したバックエンドアプリケーション向けの Go フレームワークです。依存関係の組み立てや設定管理、計装などを担い、開発者がアプリケーションロジックに集中できるようにします。
主な機能
- 01モジュール式の拡張システム
- 02ログ、トレース、メトリクスの組み込み
- 03依存性注入システム
- 04HTTP、gRPC、ワーカー向けの拡張モジュール
- 05MCP を含むアプリケーションテンプレート
活用シーン
- 01オブザーバビリティを備えた本番向け Go バックエンドの構築
- 02テンプレートからの gRPC または HTTP アプリケーションの作成
- 03提供テンプレートによる MCP アプリケーションの作成
MCP 対応
Yokai は、MCP サーバーを作成するための MCP アプリケーションテンプレートとデモアプリケーションを提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Yokai
バックエンドアプリケーション向けの、シンプルでモジュール式、かつオブザーバビリティを備えた Go フレームワークです。
目標
Go でバックエンドアプリケーションを構築するのは素晴らしいことです。
しかし、production-grade なアプリケーションを構築するには、アプリケーションのロジックとは無関係な複雑さ(依存関係の配線、設定管理、オブザーバビリティの計測など)を持ち込む、多くの作業やボイラープレートコードが必要になります。
これを解決するため、Yokai は以下の目標を念頭に置いて作られました。
Simple:使いやすく、設定やテストも簡単なため、素早く反復し、保守しやすいアプリケーションを迅速に提供できます。Modular:利用可能な Yokai モジュールや独自のモジュールで拡張でき、進化し続けるアプリケーションを構築できます。Observable:ロギング、トレーシング、メトリクスの計測機能が組み込まれており、信頼性の高いアプリケーションを構築できます。
つまり、Yokai がその他のことを担う一方で、アプリケーションのロジックに集中できます。
ドキュメント
Yokai のドキュメントは https://ankorstore.github.io/yokai でご覧いただけます。
概要
アーキテクチャ

- Yokai の
コアモジュールは、ロギング、トレーシング、メトリクス、ヘルスチェックの計測機能を事前に読み込み、インフラストラクチャやデバッグの用途にプライベート HTTP サーバーを公開します。 - Yokai の
拡張モジュールを追加して、パブリック HTTP/gRPC サーバー、ワーカー、ORM などのアプリケーション機能を強化できます。contrib モジュールや独自のモジュールも追加できます。 - これらは Yokai の
依存性注入システムで利用でき、このシステムを活用してアプリケーションのロジックを構築できます。
基盤
Yokai は、以下のような堅牢で広く知られた Go ライブラリを使用して構築されています。
拡張機能
Yokai の拡張システムを利用すると、以下によってアプリケーション機能を強化できます。
- Yokai の
組み込みモジュール - Yokai の contrib モジュール
- 独自のモジュール
はじめに
Yokai は、プロジェクトを始めるためにすぐ使えるアプリケーションテンプレートを提供しています。
ショールーム
Yokai では、動作を確認できる、すぐに実行可能なデモアプリケーションを含むショールームリポジトリを提供しています。
コントリビューション
このリポジトリでは、Yokai のモジュールのリリースプロセスを自動化するために、release-pleaseを使用しています。
重要
リリースプロセスでは、リリースするバージョンの決定とリリースノートの生成にコミットを使用するため、アトミックかつ規約に準拠したコミットを作成する必要があります。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。