Skip to main content
Adapters transforms MCP tools into framework-specific formats for seamless integration with AI frameworks.

Available Adapters

AdapterFrameworkImport PathDependencies
AI SDKVercel AI SDK@mcp-ts/sdk/adapters/aiai
LangChainLangChain@mcp-ts/sdk/adapters/langchain@langchain/core, zod
MastraMastra@mcp-ts/sdk/adapters/mastrazod
AG-UIAG-UI Protocol@mcp-ts/sdk/adapters/agui-adapter@ag-ui/client, rxjs

Common Patterns

Custom Prefix

Avoid tool name collisions by adding a custom prefix to all tools from a specific adapter:
const adapter = new AIAdapter(client, {
  prefix: 'myapp'  // Tools named: myapp_search, myapp_fetch, etc.
});

Single Client vs. Multi-Session

Adapters work with both individual MCPClient instances andaggregated MultiSessionClient.

Single Client

import { MCPClient } from '@mcp-ts/sdk/server';

const client = new MCPClient({
  identity: 'user_123',
  sessionId: 'session_abc',
  serverUrl: 'https://mcp-server.com',
  callbackUrl: 'https://myapp.com/callback'
});

await client.connect();
const adapter = new AIAdapter(client);

Multi-Session

const client = new MultiSessionClient('user_123');

// Connect to multiple servers
await client.connect();

// Get all tools from all currently connected servers
const adapter = new AIAdapter(client);
const tools = await adapter.getTools();

Error Handling

All adapters handle disconnected clients gracefully:
const adapter = new AIAdapter(client);
const tools = await adapter.getTools();
// Returns empty object/array if client is disconnected