Yeoman について
Yeoman は、AI エージェントが npm 上の Yeoman テンプレートを検索し、ジェネレーターのオプションを確認して実行できる MCP サーバーです。テンプレートからプロジェクトを作成する開発に向いています。
主な機能
- 01npm 上の Yeoman テンプレート検索
- 02ジェネレーターのオプションと引数の確認
- 03ジェネレーターによるプロジェクト作成
- 04ジェネレーターの永続保存先の指定
活用シーン
- 01プロジェクト向けの Yeoman テンプレート探し
- 02ジェネレーターに必要な引数の確認
- 03指定ディレクトリでのアプリ生成
MCP 対応
テンプレート検索、ジェネレーターオプションの取得、ジェネレーター実行の MCP ツールをクライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
MCP Yeoman サーバー
Yeoman ジェネレーターとの連携を提供する Model Context Protocol(MCP)サーバーです。AI エージェントが Yeoman テンプレートをプログラムから検索して実行できます。
ツール
このサーバーは、次の MCP ツールを実装しています。
テンプレート検索メソッド
yeoman_search_templates- npm で Yeoman テンプレートを検索します- パラメーター:
query(string):カンマ区切りの検索キーワードpageSize(number、任意):返す結果の件数(デフォルト:20)
- パラメーター:
ジェネレーターメソッド
-
yeoman_get_generator_options- Yeoman ジェネレーターに必要なオプションと引数を取得します- パラメーター:
generatorName(string):ジェネレーター名(generator-プレフィックスを除く)
- パラメーター:
-
yeoman_generate- Yeoman ジェネレーターを実行します- パラメーター:
generatorName(string):ジェネレーター名(generator-プレフィックスを除く)cwd(string):ジェネレーターを実行する作業ディレクトリappName(string):作成するアプリケーション名version(string):作成するアプリケーションのバージョンoptions(object、任意):ジェネレーターに渡すオプションargs(array、任意):ジェネレーターに渡す追加の位置引数
- パラメーター:
インストール
Smithery 経由でインストールする
Smithery 経由で Claude Desktop に mcp-yeoman を自動インストールするには:
npx @smithery/cli@latest install mcp-yeoman --client claude
前提条件
- Node.js(v16 以降)
- npm または yarn
パッケージをインストールする
# Clone the repository
git clone https://github.com/thirdstrandstudio/mcp-yeoman.git
cd mcp-yeoman
# Install dependencies
npm install
# Build the package
npm run build
Claude Desktop での使用方法
次の内容を claude_desktop_config.json に追加します。
npx を使用する
{
"mcpServers": {
"yeoman": {
"command": "npx",
"args": ["@thirdstrandstudio/mcp-yeoman"]
}
}
}
Node.js を直接使用する
{
"mcpServers": {
"yeoman": {
"command": "node",
"args": ["/path/to/mcp-yeoman/dist/index.js"]
}
}
}
/path/to/mcp-yeoman をリポジトリの実際のパスに置き換えてください。
コマンドライン引数
サーバーは次のコマンドライン引数に対応しています。
--generator-dir <path>:Yeoman ジェネレーターをインストールする永続ディレクトリを指定します。デフォルトでは、ジェネレーターは一時ディレクトリにインストールされ、処理の完了時に削除されます。永続ディレクトリを使用すると、同じジェネレーターを繰り返し使用する際のパフォーマンスを向上できます。
例:
{
"mcpServers": {
"yeoman": {
"command": "node",
"args": ["/path/to/mcp-yeoman/dist/index.js", "--generator-dir", "/path/to/generator-storage"]
}
}
}
例
テンプレートを検索する
// Search for React-related templates
const templates = await callTool("yeoman_search_templates", {
query: "react,typescript",
pageSize: 10
});
ジェネレーターのオプションを取得する
// Get options for the React generator
const options = await callTool("yeoman_get_generator_options", {
generatorName: "react"
});
ジェネレーターを実行する
// Run the React generator
const result = await callTool("yeoman_generate", {
generatorName: "react",
cwd: "/path/to/project",
appName: "my-react-app",
version: "1.0.0",
options: {
typescript: true,
sass: true
}
});
開発
# Install dependencies
npm install
# Start the server in development mode
npm start
# Build the server
npm run build
エラー処理
このサーバーには、包括的なエラー処理が含まれています。
- 無効なパラメーターに対する検証エラー
- 対話型プロンプトの検出と、必須オプションに関する案内
- デバッグ用の詳細なエラーログ
- 一時ディレクトリの自動クリーンアップ(
--generator-dirを使用している場合を除く) - MCP プロトコルを介した安全なエラー伝播
ライセンス
この MCP サーバーは MIT License の下でライセンスされています。これは、MIT License の利用規約に従うことを条件として、ソフトウェアを自由に使用、変更、配布できることを意味します。詳細については、プロジェクトリポジトリの LICENSE ファイルをご覧ください。
貢献
貢献を歓迎します!お気軽にプルリクエストを送信してください。貢献する際は、次の点にご留意ください。
- リポジトリをフォークする
- 機能ブランチを作成する
- 変更内容を明確に説明したプルリクエストを送信する
- すべてのテストが成功し、コードスタイルが維持されていることを確認する
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。