はじめに
AI技術の進化が加速するなか、「AIエージェント」に注目が集まっています。
AIエージェントとは、必要なタスクを自律的にこなし、業務やサービスを効率化する仕組みです。
本記事では、そのAIエージェント構築のためのオープンソースフレームワーク「Mastra」を取り上げ、その概要や特長、具体的な使い方について解説します。
Mastraとは?
Mastraは、TypeScriptベースで開発されたオープンソースのAIエージェント構築フレームワークです。

LLMを活用して、対話型のAIアプリケーションや業務の自動化を比較的手軽に実装できます。
主な特長として、以下の点が挙げられます。
多彩な機能を標準提供
エージェント、ワークフロー、RAG、評価機能といったAIアプリ構築に必要な要素がまとまっています。複数のLLMに対応
GPT、Claude、Geminiなど、さまざまなAIモデルを簡単に切り替えられます。設定の変更だけで、複数のプロバイダを活用できます。TypeScript環境との親和性
Node.js上で動作するためWebサービスとの連携がしやすく、既存のJavaScriptライブラリやAPIと組み合わせる事例も増えています。直感的なCLIセットアップ
コマンドを使うと、プロジェクトの雛形が対話形式で生成されます。APIキーの設定やサンプルエージェントの起動まで、短時間で試せる点が初心者に向いています。

Mastraを導入することで、プログラミングの専門知識がなくても、比較的少ないステップでAIエージェントを開発できます。
Mastraの機能
Mastraには、AIエージェント開発を支援する複数の機能がまとめられています。主な機能は次のとおりです。
① エージェント(Agents)
テキスト生成モデルへの指示(プロンプト)や外部ツールとの連携を一元管理する仕組みです。ユーザーからの入力に対して、適切な回答やアクションを起こす役割を担います。
② ツール(Tools)
外部のAPIやサービスを呼び出すための拡張機能です。例えば、計算処理ツールやデータベースアクセス機能などを用意し、必要に応じてエージェントに持たせることができます。
③ ワークフロー(Workflows)
複数ステップで構成される業務の流れをあらかじめ定義し、エージェントが自動で実行できるようにします。RPA(ロボティック・プロセス・オートメーション)のように、一連の作業を効率化できます。
④ RAG(Retrieval Augmented Generation)
社内FAQやドキュメントなどの情報源を検索し、回答文を生成するときに参照させる機能です。エージェントが自社独自の知識を活用する際に役立ちます。
⑤ Evals(評価機能)
エージェントの回答や動作を客観的に評価する仕組みです。改善点を見つけたり、品質を一定水準に保つ目的で利用します。
これらの機能を組み合わせることで、Mastraはチャットボットや業務支援AIなど、さまざまな分野に対応するAIエージェントを開発しやすくしています。
AIモデルの能力を引き出すうえで、無理なく必要な機能を追加できる点が特長です。
Mastraの特徴
以下では、他のフレームワークと比較しながら、Mastraの特長を4つの視点でまとめてみました。比較対象は「Vercel AI SDK」「OpenAI Agents SDK」「LangChain」です。

ポイントのまとめ
Mastra は TypeScript を使った開発体験のしやすさと機能のまとまりが特長で、Webサービスとの相性が良いです。
Vercel AI SDK はフロントエンドを中心とするWeb開発者に好まれ、UI構築やサーバーレス連携がスムーズです。
OpenAI Agents SDK はOpenAIの機能を最大限活用したい場合に向いています。Pythonを基盤に手軽にエージェントを組めます。
LangChain は機能数が多く、幅広いサービスとの統合がしやすい反面、全体像を理解するのにやや学習時間を要します。
導入時の目的や既存の開発環境に合わせて、最適なフレームワークを選ぶとよいでしょう。Mastraの場合、プロジェクトの規模が大きくない段階から試しやすい点が魅力です。
Mastraの使い方
Mastraを使ってAIエージェントを開発する際、基本的には以下の流れを踏みます。ここでは主な手順を4つに絞って紹介します。
1. 前提条件
Node.js(v20以上)のインストール
あらかじめパソコンにNode.jsを入れておいてください。利用するAIモデルのAPIキー
例:OpenAIやAnthropicなど。事前にアカウントを作り、APIキーを取得しておく必要があります。
2. プロジェクトの作成
npx create-mastra@latest の実行
ターミナルでコマンドを打つと、対話形式で設定を確認しながらプロジェクトの雛形を自動生成できます。
npx create-mastra@latest最初にプロジェクトフォルダの名前を設定します。

設定すると、プロジェクトの作成と必要なツールのインストールが行われます。

Mastraのテンプレートファイルの格納場所を聞かれるので、特にこだわりがない場合は、デフォルトのsrc/を入力します。

途中、選択が必要な箇所では、矢印キーで移動して、スペースキーをクリックすることで選択することができます。今回はAgentsを選択します。

Add tools?もYesと回答します。

ご自身が使いたいLLMプロバイダを選択します。

APIキーの入力では、後から環境変数として設定することも可能なので、ご自身の状況に合わせて選択して下さい。
環境変数としてAPIキーを設定する手順も後述しますので、Skip for nowを選択された方もご安心ください。

こちらはサンプルを見ながら実装したい方はYes、サンプルは必要ないよという方はNoを選択します。

CursorかWindsurfにMastra docs MCPサーバーをインストールするか質問されますが、ご自身の状況に合わせて選択ください。今回はデフォルトのSkip for nowを選択してインストールせず進みます。

上記まで質問に答えると、Mastraのインストールが完了します。

雛形に含まれるファイルの確認
生成されたフォルダを開くと、src/mastra/agents/ などのディレクトリがあり、エージェントのコードを書きやすい構成になっています。

3. APIキーの設定
.env ファイルの編集
プロジェクト直下にある(あるいは新規作成した).env.development に、取得したAPIキーを書き込みます。今回はGoogleのGeminiを使っていきます。

※他のモデルを使う場合
AnthropicやOpenAIなどを使うなら、対応するキーや設定値を追記します。
4. 開発サーバーの起動とテスト
npm run dev の実行
コマンドを打つと、Mastra専用のサーバーが起動します。コンソールに表示されるURLがエージェントとの通信窓口です。
cd "あなたが設定したプロジェクトフォルダ"
npm run dev写真のように先ほどのターミナルに記載されています。

コマンドを実行すると、サーバーが起動します。

上記の写真に記載されている、http://localhost:4111を開くと、サンプルでインストールされたWeather Agentsのチャットインターフェースが開きます。

以上の4つのステップを踏めば、基本的なAIエージェント開発環境は整います。
実際の業務に合わせてエージェントのコードやワークフローをカスタマイズし、必要なら外部のAPIツールを組み込むことで、より複雑な処理も自動化できます。







