Skip to main content

MutagenT SDK

The MutagenT SDK provides type-safe, async-first access to the MutagenT Platform.
CLI First: For most use cases, start with the CLI. Use mutagent integrate to generate SDK integration code for your framework.

Available SDKs

LanguageStatusPackage
TypeScriptAvailable@mutagent/sdk
PythonComing Soonmutagent

Design Principles

Type-Safe

Full TypeScript support with typed responses

Async-First

All operations return Promises for modern async/await patterns

REST-Aligned

Method names mirror REST API endpoints for predictability

Minimal

Small bundle size, no unnecessary dependencies

Quick Example

import { Mutagent } from '@mutagent/sdk';

const client = new Mutagent({
  bearerAuth: process.env.MUTAGENT_API_KEY,
});

// List prompts
const { prompts } = await client.prompt.getApiPrompt();

// Get a specific prompt
const prompt = await client.prompt.getApiPromptById({ id: 123 });

// Create a new prompt
const newPrompt = await client.prompt.postApiPrompt({
  name: 'My Prompt',
  humanPrompt: 'You are a helpful assistant.',
});

SDK Architecture

The SDK organizes operations by resource:
  • client.prompt - Prompt CRUD operations
  • client.promptDatasets - Dataset management
  • client.promptDatasetItems - Dataset item operations
  • client.promptEvaluations - Evaluation runs
  • client.optimization - Optimization jobs

Error Handling

import { Mutagent, MutagentError } from '@mutagent/sdk';

const client = new Mutagent({
  bearerAuth: process.env.MUTAGENT_API_KEY,
});

try {
  const prompt = await client.prompt.getApiPromptById({ id: 999 });
} catch (error) {
  if (error instanceof MutagentError) {
    console.error('API Error:', error.message);
    console.error('Status:', error.statusCode);
    console.error('Body:', error.body);
  }
}

Next Steps