Agent.getMetadata()
.getMetadata() メソッドは、Agent に設定されたメタデータを取得し、関数の場合は解決します。Agent の ID や名前へデータを組み込まずにクライアント上で Agent を分類するには、メタデータを使います。
使用例使用例への直接リンク
await agent.getMetadata()
パラメータパラメータへの直接リンク
options?:
{ requestContext?: RequestContext }
= {}
リクエストコンテキストを含む任意の設定オブジェクト。
{ requestContext?: RequestContext }
requestContext?:
RequestContext
動的なメタデータ関数へ渡される Request Context。メタデータが静的な場合は無視されます。
戻り値戻り値への直接リンク
metadata:
Record<string, unknown> | Promise<Record<string, unknown>>
Agent に設定されたメタデータ。メタデータが設定されていない場合は
undefined です。直接返されるか、関数として定義されている場合はメタデータへ解決される Promise として返されます。詳細な使用例詳細な使用例への直接リンク
静的なメタデータ:
src/mastra/agents/support-agent.ts
import { Agent } from '@mastra/core/agent'
export const supportAgent = new Agent({
id: 'support-agent',
name: 'Support Agent',
instructions: 'You help customers with support requests.',
model: 'openai/gpt-5.6-sol',
metadata: { type: 'support' },
})
const metadata = supportAgent.getMetadata()
リクエストコンテキストから解決される動的なメタデータ:
src/mastra/agents/support-agent.ts
import { Agent } from '@mastra/core/agent'
export const supportAgent = new Agent({
id: 'support-agent',
name: 'Support Agent',
instructions: 'You help customers with support requests.',
model: 'openai/gpt-5.6-sol',
metadata: ({ requestContext }) => ({
type: 'support',
tenant: requestContext.get('tenant'),
}),
})
const metadata = await supportAgent.getMetadata({ requestContext })