例: MCPServer のデプロイ
この例では、stdio トランスポートを使用した基本的な Mastra MCPServer のセットアップ方法、ビルド方法、そして NPM への公開などのデプロイ準備について説明します。
依存関係のインストール
必要なパッケージをインストールします:
pnpm add @mastra/mcp @mastra/core tsupMCP Server のセットアップ
- 
stdio サーバー用のファイルを作成します。例えば、 /src/mastra/stdio.tsです。
- 
次のコードをファイルに追加します。実際の Mastra ツールをインポートし、サーバー名を適切に設定することを忘れないでください。 src/mastra/stdio.ts#!/usr/bin/env node import { MCPServer } from "@mastra/mcp"; import { weatherTool } from "./tools"; const server = new MCPServer({ name: "my-mcp-server", version: "1.0.0", tools: { weatherTool }, }); server.startStdio().catch((error) => { console.error("Error running MCP server:", error); process.exit(1); });
- 
package.jsonを更新し、binエントリでビルド済みサーバーファイルを指定し、サーバーをビルドするスクリプトを追加します。
{
  "bin": "dist/stdio.js",
  "scripts": {
    "build:mcp": "tsup src/mastra/stdio.ts --format esm --no-splitting --dts && chmod +x dist/stdio.js"
  }
}- 
ビルドコマンドを実行します。 pnpm run build:mcpこれにより、サーバーコードがコンパイルされ、出力ファイルが実行可能になります。 
NPM へのデプロイ
自分や他の人が npx や依存関係として MCP サーバーを利用できるようにするには、NPM に公開することができます。
- 
NPM アカウントを持ち、ログインしていることを確認します( npm login)。
- 
package.jsonのパッケージ名がユニークで利用可能であることを確認します。
- 
プロジェクトのルートディレクトリでビルド後、以下のコマンドを実行して公開します: npm publish --access publicパッケージの公開に関する詳細は、NPM のドキュメント を参照してください。 
デプロイ済みのMCPサーバーを利用する
公開が完了すると、MCPClient でコマンドを指定してあなたのパッケージを実行することで、MCPサーバーを利用できます。また、Claude desktop、Cursor、Windsurfなど、他のMCPクライアントも使用可能です。
import { MCPClient } from "@mastra/mcp";
 
const mcp = new MCPClient({
  servers: {
    // Give this MCP server instance a name
    yourServerName: {
      command: "npx",
      args: ["-y", "@your-org-name/your-package-name@latest"], // Replace with your package name
    },
  },
});
 
// You can then get tools or toolsets from this configuration to use in your agent
const tools = await mcp.getTools();
const toolsets = await mcp.getToolsets();注意: 組織スコープなしで公開した場合、args は ["-y", "your-package-name@latest"] となる場合があります。