Skip to Content
ReferenceClient SDKMastraClient

Mastra Client SDK

The Mastra Client SDK provides a simple and type-safe interface for interacting with your Mastra Server from your client environment.

Usage example

lib/mastra/mastra-client.ts
import { MastraClient } from "@mastra/client-js"; export const mastraClient = new MastraClient({ baseUrl: "http://localhost:4111/", });

Parameters

baseUrl:

string
The base URL for the Mastra API. All requests will be sent relative to this URL.

retries?:

number
= 3
The number of times a request will be retried on failure before throwing an error.

backoffMs?:

number
= 300
The initial delay in milliseconds before retrying a failed request. This value is doubled with each retry (exponential backoff).

maxBackoffMs?:

number
= 5000
The maximum backoff time in milliseconds. Prevents retries from waiting too long between attempts.

headers?:

Record<string, string>
An object containing custom HTTP headers to include with every request.

Methods

getAgents():

Promise<Record<string, GetAgentResponse>>
Returns all available agent instances.

getAgent(agentId):

Agent
Retrieves a specific agent instance by ID.

getMemoryThreads(params):

Promise<StorageThreadType[]>
Retrieves memory threads for the specified resource and agent. Requires a `resourceId` and an `agentId`.

createMemoryThread(params):

Promise<MemoryThread>
Creates a new memory thread with the given parameters.

getMemoryThread(threadId):

Promise<MemoryThread>
Fetches a specific memory thread by ID.

saveMessageToMemory(params):

Promise<void>
Saves one or more messages to the memory system.

getMemoryStatus():

Promise<MemoryStatus>
Returns the current status of the memory system.

getTools():

Record<string, Tool>
Returns all available tools.

getTool(toolId):

Tool
Retrieves a specific tool instance by ID.

getWorkflows():

Record<string, Workflow>
Returns all available workflow instances.

getWorkflow(workflowId):

Workflow
Retrieves a specific workflow instance by ID.

getVector(vectorName):

MastraVector
Returns a vector store instance by name.

getLogs(params):

Promise<LogEntry[]>
Fetches system logs matching the provided filters.

getLog(params):

Promise<LogEntry>
Retrieves a specific log entry by ID or filter.

getLogTransports():

string[]
Returns the list of configured log transport types.