メインコンテンツへ移動

Mastra client SDK

Mastra Client SDK は、クライアント環境から Mastra Server と連携するための型安全なインターフェースを提供します。

使用例
使用例への直接リンク

lib/mastra/mastra-client.ts
import { MastraClient } from '@mastra/client-js'

export const mastraClient = new MastraClient({
baseUrl: 'http://localhost:4111/',
})

RequestContext
requestcontextへの直接リンク

client SDK で RequestContext を使用する場合は、@mastra/client-js からインポートします。

import { MastraClient, RequestContext } from '@mastra/client-js'

const client = new MastraClient({
baseUrl: 'http://localhost:4111/',
})

const requestContext = new RequestContext()
requestContext.set('userId', 'user-123')

const agent = client.getAgent('support-agent')

const response = await agent.generate('Summarize this ticket', {
requestContext,
})

requestContextRecord<string, any> として渡すこともできます。

パラメーター
パラメーターへの直接リンク

baseUrl:

string
Mastra API のベース URL。すべてのリクエストはこの URL を基準に送信されます。

retries?:

number
= 3
リクエストが失敗した場合、エラーをスローするまでに再試行する回数。

backoffMs?:

number
= 300
失敗したリクエストを再試行するまでの初回待機時間(ミリ秒)。この値は再試行のたびに倍増します(指数バックオフ)。

maxBackoffMs?:

number
= 5000
バックオフ時間の上限(ミリ秒)。再試行間の待機時間が長くなりすぎるのを防ぎます。

headers?:

Record<string, string>
すべてのリクエストに含めるカスタム HTTP ヘッダーのオブジェクト。

credentials?:

"omit" | "same-origin" | "include"
リクエストの credentials モード。詳細は https://developer.mozilla.org/en-US/docs/Web/API/Request/credentials を参照してください。

メソッド
メソッドへの直接リンク

listAgents():

Promise<Record<string, GetAgentResponse>>
利用可能なすべての Agent インスタンスを返します。

getAgent(agentId):

Agent
ID を指定して特定の Agent インスタンスを取得します。

listMemoryThreads(params):

Promise<StorageThreadType[]>
指定したリソースと Agent のメモリスレッドを取得します。resourceIdagentId が必要です。

createMemoryThread(params):

Promise<MemoryThread>
指定したパラメーターで新しいメモリスレッドを作成します。

getMemoryThread({ threadId, agentId }):

MemoryThread
ID を指定して特定のメモリスレッドを取得します。

saveMessageToMemory(params):

Promise<{ messages: (MastraMessageV1 | MastraDBMessage)[] }>
1 件以上のメッセージをメモリシステムに保存します。保存したメッセージを返します。

getMemoryStatus():

Promise<MemoryStatus>
メモリシステムの現在の状態を返します。

listTools():

Record<string, Tool>
利用可能なすべての Tool を返します。

getTool(toolId):

Tool
ID を指定して特定の Tool インスタンスを取得します。

listWorkflows():

Record<string, Workflow>
利用可能なすべての Workflow インスタンスを返します。

getWorkflow(workflowId):

Workflow
ID を指定して特定の Workflow インスタンスを取得します。

getAgentBuilderActions():

Promise<Record<string, WorkflowInfo>>
利用可能なすべての Agent Builder アクションを返します。Agent Builder API を参照してください。

getAgentBuilderAction(actionId):

AgentBuilder
ID を指定して Agent Builder アクションを取得します。Agent Builder API を参照してください。

responses:

Responses
create()retrieve()stream()delete() を備えた OpenAI スタイルの Responses API ヘルパーを提供します。

conversations:

Conversations
create()retrieve()delete()items.list() を備えた会話ヘルパーを提供します。

getVector(vectorName):

MastraVector
名前を指定してベクトルストアのインスタンスを返します。

listLogs(params):

Promise<LogEntry[]>
指定したフィルターに一致するシステムログを取得します。

getLog(params):

Promise<LogEntry>
ID またはフィルターを指定して特定のログエントリを取得します。

listLogTransports():

string[]
設定済みのログトランスポート種別の一覧を返します。

getTrace(traceId):

Promise<TraceRecord>
すべての span と詳細を含む、特定の Trace を ID で取得します。

getTraces(params):

Promise<GetTracesResponse>
オプションのフィルタリングを使用して、Trace のルート span をページネーション付きで取得します。すべての span を含む完全な Trace を取得するには getTrace() を使用します。