# How to integrate Claid ai MCP with Mastra AI

```json
{
  "title": "How to integrate Claid ai MCP with Mastra AI",
  "toolkit": "Claid ai",
  "toolkit_slug": "claid_ai",
  "framework": "Mastra AI",
  "framework_slug": "mastra-ai",
  "url": "https://composio.dev/toolkits/claid_ai/framework/mastra-ai",
  "markdown_url": "https://composio.dev/toolkits/claid_ai/framework/mastra-ai.md",
  "updated_at": "2026-05-12T10:06:17.693Z"
}
```

## Introduction

This guide walks you through connecting Claid ai to Mastra AI using the Composio tool router. By the end, you'll have a working Claid ai agent that can remove background from all product images, generate lifestyle backgrounds for shoe photos, blur license plates in uploaded car images through natural language commands.
This guide will help you understand how to give your Mastra AI agent real control over a Claid ai account through Composio's Claid ai MCP server.
Before we dive in, let's take a quick look at the key ideas and tools involved.

## Also integrate Claid ai with

- [OpenAI Agents SDK](https://composio.dev/toolkits/claid_ai/framework/open-ai-agents-sdk)
- [Claude Agent SDK](https://composio.dev/toolkits/claid_ai/framework/claude-agents-sdk)
- [Claude Code](https://composio.dev/toolkits/claid_ai/framework/claude-code)
- [Claude Cowork](https://composio.dev/toolkits/claid_ai/framework/claude-cowork)
- [Codex](https://composio.dev/toolkits/claid_ai/framework/codex)
- [OpenClaw](https://composio.dev/toolkits/claid_ai/framework/openclaw)
- [Hermes](https://composio.dev/toolkits/claid_ai/framework/hermes-agent)
- [CLI](https://composio.dev/toolkits/claid_ai/framework/cli)
- [Google ADK](https://composio.dev/toolkits/claid_ai/framework/google-adk)
- [LangChain](https://composio.dev/toolkits/claid_ai/framework/langchain)
- [Vercel AI SDK](https://composio.dev/toolkits/claid_ai/framework/ai-sdk)
- [LlamaIndex](https://composio.dev/toolkits/claid_ai/framework/llama-index)
- [CrewAI](https://composio.dev/toolkits/claid_ai/framework/crew-ai)

## TL;DR

Here's what you'll learn:
- Set up your environment so Mastra, OpenAI, and Composio work together
- Create a Tool Router session in Composio that exposes Claid ai tools
- Connect Mastra's MCP client to the Composio generated MCP URL
- Fetch Claid ai tool definitions and attach them as a toolset
- Build a Mastra agent that can reason, call tools, and return structured results
- Run an interactive CLI where you can chat with your Claid ai agent

## What is Mastra AI?

Mastra AI is a TypeScript framework for building AI agents with tool support. It provides a clean API for creating agents that can use external services through MCP.
Key features include:
- MCP Client: Built-in support for Model Context Protocol servers
- Toolsets: Organize tools into logical groups
- Step Callbacks: Monitor and debug agent execution
- OpenAI Integration: Works with OpenAI models via @ai-sdk/openai

## What is the Claid ai MCP server, and what's possible with it?

The Claid ai MCP server is an implementation of the Model Context Protocol that connects your AI agent and assistants like Claude, Cursor, etc directly to your Claid ai account. It provides structured and secure access to powerful AI image editing features, so your agent can perform actions like removing backgrounds, generating AI photoshoots, upscaling, and editing images in bulk on your behalf.
- AI-powered background removal: Instantly have your agent isolate subjects from any image by removing backgrounds with a single command.
- Automated product photoshoots: Let your agent transform plain product images into professional model photoshoots, complete with realistic AI-generated backgrounds.
- Batch and async image editing: Direct your agent to process multiple images at once or submit complex, text-driven edits for asynchronous processing—perfect for large workflows.
- Generative resizing and enhancement: Ask your agent to resize images using outpainting or upscale and enhance visuals to meet any platform’s requirements.
- Privacy and compliance automation: Have your agent blur license plates in images or apply other privacy-preserving edits before sharing or publishing assets.

## Supported Tools

| Tool slug | Name | Description |
|---|---|---|
| `CLAID_AI_BACKGROUND_GENERATE` | Generate AI Backgrounds | Generate AI-powered backgrounds for product images. Creates professional scenes with customizable backgrounds, lighting, and composition. Use cases: - E-commerce product photography enhancement - Creating lifestyle scenes for product marketing - Generating consistent backgrounds across product catalogs - Adding realistic shadows and reflections Supports three generation modes: 1. Prompt-based: Describe the background in text (e.g., "minimalist white studio") 2. Template-based: Use a reference image to guide the style 3. Shadow/effect mode: Add shadows to transparent product images Returns temporary URLs (valid 24 hours) or saves to connected storage. |
| `CLAID_AI_BACKGROUND_REMOVE` | CLAID Background Remove | Remove the background from images using Claid.ai's AI-powered background removal. Supports category hints (general, products, cars) for optimized removal, selective removal to keep specific objects, and optional clipping to crop to subject bounds. Returns a temporary URL to download the processed image with transparent or colored background. |
| `CLAID_AI_CLAID_STORAGE_DETAILS` | Get Storage Details | Tool to retrieve details of a connected storage resource. Use when you have a storage ID and need to inspect its configuration before performing further operations. |
| `CLAID_AI_CREATE_STORAGE` | Connect New Storage | Tool to connect a storage resource. Use after you have bucket/folder details and credentials. E.g., to add a new AWS S3, GCS bucket, or public web folder for your image assets. |
| `CLAID_AI_GENERATIVE_RESIZE` | Generative Resize (Outpaint) | Expand image canvas using AI-powered generative outpainting. This tool adjusts image aspect ratios by generating coherent background content to fill new canvas areas. Use it when you need to: - Change image aspect ratio for different platforms (e.g., square to landscape) - Extend an image's borders while maintaining visual consistency - Create zoom-out effects by expanding the scene in all directions The AI generates photorealistic content that matches the original image's style, lighting, and composition. Maximum output size is 16.78 MP. |
| `CLAID_AI_IMAGE_AI_EDIT` | Image AI Edit Async | Tool to submit an asynchronous AI-based image editing task. Use when you need text-driven edits on existing images and will poll for completion. |
| `CLAID_AI_IMAGE_EDIT_BATCH` | CLAID Image Edit Batch | Tool to process multiple images in batch asynchronously. Use when applying the same edits (resize, enhance, background removal, etc.) to many images at once. Accepts input from: - Cloud storage folders (with optional recursive processing) - Lists of public image URLs - Single public image URL Returns a batch job ID and result_url to poll for completion status and processed images. Requires billing capabilities on the Claid.ai account. |
| `CLAID_AI_IMAGE_GENERATE` | Generate AI Images from Text Prompt | Generate AI images from text prompts using Claid.ai. Creates 1024x1024 pixel images. Use when you need to create custom visuals, product mockups, or creative imagery from a description. Supports generating 1-4 images per request. Returns temporary URLs (valid 24h) or saves to connected cloud storage. |
| `CLAID_AI_LICENSE_PLATE_BLUR` | CLAID License Plate Blur | Automatically detect and blur license plates in images for privacy compliance. Use this tool when you need to obscure vehicle registration plates in photos (e.g., for car marketplaces, real estate listings, or street photography). The AI automatically identifies and blurs all license plates in the image. |
| `CLAID_AI_PATCH_STORAGE` | Update Connected Storage | Tool to update a connected storage's settings. Use when you need to change name, type, or parameters of an existing storage. Use after confirming the storage exists. |
| `CLAID_AI_POLISH_IMAGE` | Polish Image | Applies AI-powered polish restoration to an image, sharpening and cleaning up while preserving the original structure. Ideal for enhancing upscaled images or removing AI artifacts. Note: Target image must not exceed 16 MP (megapixels). |
| `CLAID_AI_SMART_FRAME` | CLAID Smart Frame | Place images on a canvas with specified dimensions and padding for consistent product photography framing. Ideal for e-commerce: standardizes product photos with uniform spacing and background colors. Use this when you need to add white space or colored borders around product images for marketplace listings. |
| `CLAID_AI_STORAGE_LIST` | List Connected Storages | Tool to list connected storage resources. Use when you need to retrieve all storage connectors for your account. |
| `CLAID_AI_STORAGE_TYPES` | List Storage Types | Tool to retrieve available storage types. Use when you need to list supported storage connectors before uploading files. |

## Supported Triggers

None listed.

## Creating MCP Server - Stand-alone vs Composio SDK

The Claid ai MCP server is an implementation of the Model Context Protocol that connects your AI agent to Claid ai. It provides structured and secure access so your agent can perform Claid ai operations on your behalf through a secure, permission-based interface.
With Composio's managed implementation, you don't have to create your own developer app. For production, if you're building an end product, we recommend using your own credentials. The managed server helps you prototype fast and go from 0-1 faster.

## Step-by-step Guide

### 1. Prerequisites

Before starting, make sure you have:
- Node.js 18 or higher
- A Composio account with an active API key
- An OpenAI API key
- Basic familiarity with TypeScript

### 1. Getting API Keys for OpenAI and Composio

OpenAI API Key
- Go to the [OpenAI dashboard](https://platform.openai.com/settings/organization/api-keys) and create an API key.
- You need credits or a connected billing setup to use the models.
- Store the key somewhere safe.
Composio API Key
- Log in to the [Composio dashboard](https://dashboard.composio.dev?utm_source=toolkits&utm_medium=framework_docs).
- Go to Settings and copy your API key.
- This key lets your Mastra agent talk to Composio and reach Claid ai through MCP.

### 2. Install dependencies

Install the required packages.
What's happening:
- @composio/core is the Composio SDK for creating MCP sessions
- @mastra/core provides the Agent class
- @mastra/mcp is Mastra's MCP client
- @ai-sdk/openai is the model wrapper for OpenAI
- dotenv loads environment variables from .env
```bash
npm install @composio/core @mastra/core @mastra/mcp @ai-sdk/openai dotenv
```

### 3. Set up environment variables

Create a .env file in your project root.
What's happening:
- COMPOSIO_API_KEY authenticates your requests to Composio
- COMPOSIO_USER_ID tells Composio which user this session belongs to
- OPENAI_API_KEY lets the Mastra agent call OpenAI models
```bash
COMPOSIO_API_KEY=your_composio_api_key_here
COMPOSIO_USER_ID=your_user_id_here
OPENAI_API_KEY=your_openai_api_key_here
```

### 4. Import libraries and validate environment

What's happening:
- dotenv/config auto loads your .env so process.env.* is available
- openai gives you a Mastra compatible model wrapper
- Agent is the Mastra agent that will call tools and produce answers
- MCPClient connects Mastra to your Composio MCP server
- Composio is used to create a Tool Router session
```typescript
import "dotenv/config";
import { openai } from "@ai-sdk/openai";
import { Agent } from "@mastra/core/agent";
import { MCPClient } from "@mastra/mcp";
import { Composio } from "@composio/core";
import * as readline from "readline";

import type { AiMessageType } from "@mastra/core/agent";

const openaiAPIKey = process.env.OPENAI_API_KEY;
const composioAPIKey = process.env.COMPOSIO_API_KEY;
const composioUserID = process.env.COMPOSIO_USER_ID;

if (!openaiAPIKey) throw new Error("OPENAI_API_KEY is not set");
if (!composioAPIKey) throw new Error("COMPOSIO_API_KEY is not set");
if (!composioUserID) throw new Error("COMPOSIO_USER_ID is not set");

const composio = new Composio({
  apiKey: composioAPIKey as string,
});
```

### 5. Create a Tool Router session for Claid ai

What's happening:
- create spins up a short-lived MCP HTTP endpoint for this user
- The toolkits array contains "claid_ai" for Claid ai access
- session.mcp.url is the MCP URL that Mastra's MCPClient will connect to
```typescript
async function main() {
  const session = await composio.create(
    composioUserID as string,
    {
      toolkits: ["claid_ai"],
    },
  );

  const composioMCPUrl = session.mcp.url;
  console.log("Claid ai MCP URL:", composioMCPUrl);
```

### 6. Configure Mastra MCP client and fetch tools

What's happening:
- MCPClient takes an id for this client and a list of MCP servers
- The headers property includes the x-api-key for authentication
- getTools fetches the tool definitions exposed by the Claid ai toolkit
```typescript
const mcpClient = new MCPClient({
    id: composioUserID as string,
    servers: {
      nasdaq: {
        url: new URL(composioMCPUrl),
        requestInit: {
          headers: session.mcp.headers,
        },
      },
    },
    timeout: 30_000,
  });

console.log("Fetching MCP tools from Composio...");
const composioTools = await mcpClient.getTools();
console.log("Number of tools:", Object.keys(composioTools).length);
```

### 7. Create the Mastra agent

What's happening:
- Agent is the core Mastra agent
- name is just an identifier for logging and debugging
- instructions guide the agent to use tools instead of only answering in natural language
- model uses openai("gpt-5") to configure the underlying LLM
```typescript
const agent = new Agent({
    name: "claid_ai-mastra-agent",
    instructions: "You are an AI agent with Claid ai tools via Composio.",
    model: "openai/gpt-5",
  });
```

### 8. Set up interactive chat interface

What's happening:
- messages keeps the full conversation history in Mastra's expected format
- agent.generate runs the agent with conversation history and Claid ai toolsets
- maxSteps limits how many tool calls the agent can take in a single run
- onStepFinish is a hook that prints intermediate steps for debugging
```typescript
let messages: AiMessageType[] = [];

console.log("Chat started! Type 'exit' or 'quit' to end.\n");

const rl = readline.createInterface({
  input: process.stdin,
  output: process.stdout,
  prompt: "> ",
});

rl.prompt();

rl.on("line", async (userInput: string) => {
  const trimmedInput = userInput.trim();

  if (["exit", "quit", "bye"].includes(trimmedInput.toLowerCase())) {
    console.log("\nGoodbye!");
    rl.close();
    process.exit(0);
  }

  if (!trimmedInput) {
    rl.prompt();
    return;
  }

  messages.push({
    id: crypto.randomUUID(),
    role: "user",
    content: trimmedInput,
  });

  console.log("\nAgent is thinking...\n");

  try {
    const response = await agent.generate(messages, {
      toolsets: {
        claid_ai: composioTools,
      },
      maxSteps: 8,
    });

    const { text } = response;

    if (text && text.trim().length > 0) {
      console.log(`Agent: ${text}\n`);
        messages.push({
          id: crypto.randomUUID(),
          role: "assistant",
          content: text,
        });
      }
    } catch (error) {
      console.error("\nError:", error);
    }

    rl.prompt();
  });

  rl.on("close", async () => {
    console.log("\nSession ended.");
    await mcpClient.disconnect();
    process.exit(0);
  });
}

main().catch((err) => {
  console.error("Fatal error:", err);
  process.exit(1);
});
```

## Complete Code

```typescript
import "dotenv/config";
import { openai } from "@ai-sdk/openai";
import { Agent } from "@mastra/core/agent";
import { MCPClient } from "@mastra/mcp";
import { Composio } from "@composio/core";
import * as readline from "readline";

import type { AiMessageType } from "@mastra/core/agent";

const openaiAPIKey = process.env.OPENAI_API_KEY;
const composioAPIKey = process.env.COMPOSIO_API_KEY;
const composioUserID = process.env.COMPOSIO_USER_ID;

if (!openaiAPIKey) throw new Error("OPENAI_API_KEY is not set");
if (!composioAPIKey) throw new Error("COMPOSIO_API_KEY is not set");
if (!composioUserID) throw new Error("COMPOSIO_USER_ID is not set");

const composio = new Composio({ apiKey: composioAPIKey as string });

async function main() {
  const session = await composio.create(composioUserID as string, {
    toolkits: ["claid_ai"],
  });

  const composioMCPUrl = session.mcp.url;

  const mcpClient = new MCPClient({
    id: composioUserID as string,
    servers: {
      claid_ai: {
        url: new URL(composioMCPUrl),
        requestInit: {
          headers: session.mcp.headers,
        },
      },
    },
    timeout: 30_000,
  });

  const composioTools = await mcpClient.getTools();

  const agent = new Agent({
    name: "claid_ai-mastra-agent",
    instructions: "You are an AI agent with Claid ai tools via Composio.",
    model: "openai/gpt-5",
  });

  let messages: AiMessageType[] = [];

  const rl = readline.createInterface({
    input: process.stdin,
    output: process.stdout,
    prompt: "> ",
  });

  rl.prompt();

  rl.on("line", async (input: string) => {
    const trimmed = input.trim();
    if (["exit", "quit"].includes(trimmed.toLowerCase())) {
      rl.close();
      return;
    }

    messages.push({ id: crypto.randomUUID(), role: "user", content: trimmed });

    const { text } = await agent.generate(messages, {
      toolsets: { claid_ai: composioTools },
      maxSteps: 8,
    });

    if (text) {
      console.log(`Agent: ${text}\n`);
      messages.push({ id: crypto.randomUUID(), role: "assistant", content: text });
    }

    rl.prompt();
  });

  rl.on("close", async () => {
    await mcpClient.disconnect();
    process.exit(0);
  });
}

main();
```

## Conclusion

You've built a Mastra AI agent that can interact with Claid ai through Composio's Tool Router.
You can extend this further by:
- Adding other toolkits like Gmail, Slack, or GitHub
- Building a web-based chat interface around this agent
- Using multiple MCP endpoints to enable cross-app workflows

## How to build Claid ai MCP Agent with another framework

- [OpenAI Agents SDK](https://composio.dev/toolkits/claid_ai/framework/open-ai-agents-sdk)
- [Claude Agent SDK](https://composio.dev/toolkits/claid_ai/framework/claude-agents-sdk)
- [Claude Code](https://composio.dev/toolkits/claid_ai/framework/claude-code)
- [Claude Cowork](https://composio.dev/toolkits/claid_ai/framework/claude-cowork)
- [Codex](https://composio.dev/toolkits/claid_ai/framework/codex)
- [OpenClaw](https://composio.dev/toolkits/claid_ai/framework/openclaw)
- [Hermes](https://composio.dev/toolkits/claid_ai/framework/hermes-agent)
- [CLI](https://composio.dev/toolkits/claid_ai/framework/cli)
- [Google ADK](https://composio.dev/toolkits/claid_ai/framework/google-adk)
- [LangChain](https://composio.dev/toolkits/claid_ai/framework/langchain)
- [Vercel AI SDK](https://composio.dev/toolkits/claid_ai/framework/ai-sdk)
- [LlamaIndex](https://composio.dev/toolkits/claid_ai/framework/llama-index)
- [CrewAI](https://composio.dev/toolkits/claid_ai/framework/crew-ai)

## Related Toolkits

- [Figma](https://composio.dev/toolkits/figma) - Figma is a collaborative interface design tool for teams and individuals. It streamlines design workflows with real-time collaboration and easy sharing.
- [Abyssale](https://composio.dev/toolkits/abyssale) - Abyssale is a creative automation platform for generating images, videos, GIFs, PDFs, and HTML5 content programmatically. It streamlines and scales visual content production for marketing, design, and operations teams.
- [Alttext ai](https://composio.dev/toolkits/alttext_ai) - AltText.ai is a service that generates alt text for images automatically. It helps boost accessibility and SEO for your visual content.
- [Bannerbear](https://composio.dev/toolkits/bannerbear) - Bannerbear is an API-driven platform for generating images and videos automatically at scale. It helps businesses create custom graphics, social visuals, and marketing assets using powerful templates.
- [Canva](https://composio.dev/toolkits/canva) - Canva is a drag-and-drop design suite for creating professional graphics, presentations, and marketing materials. It makes it easy for anyone to design with beautiful templates and a vast library of elements.
- [Cloudinary](https://composio.dev/toolkits/cloudinary) - Cloudinary is a cloud-based platform for managing, uploading, and transforming images and videos. It streamlines media workflows and delivers optimized assets globally.
- [Cults](https://composio.dev/toolkits/cults) - Cults is a digital marketplace for 3D printing models, connecting designers and makers. It lets creators share, sell, and discover a huge variety of printable designs easily.
- [DeepImage](https://composio.dev/toolkits/deepimage) - DeepImage is an AI-powered image enhancer and upscaler. Get higher-quality images with just a few clicks.
- [Dreamstudio](https://composio.dev/toolkits/dreamstudio) - DreamStudio is Stability AI’s platform for generating and editing images with AI. It lets you easily turn ideas into stunning visuals, fast.
- [Dynapictures](https://composio.dev/toolkits/dynapictures) - Dynapictures is a cloud-based platform for generating personalized images at scale. Instantly create hundreds of custom visuals using your data sources, like Google Sheets.
- [Fal.ai](https://composio.dev/toolkits/fal_ai) - Fal.ai is a generative media platform offering 600+ AI models for images, video, voice, and audio. Developers use Fal.ai for fast, scalable access to cutting-edge generative AI tools.
- [Gamma](https://composio.dev/toolkits/gamma) - Gamma is an AI-powered platform for making beautiful, interactive presentations and documents. It lets anyone create and share engaging decks with minimal effort.
- [Html to image](https://composio.dev/toolkits/html_to_image) - Html to image converts HTML and CSS into images or captures web page screenshots. Instantly generate visuals from code or web content—no manual screenshots needed.
- [Imagior](https://composio.dev/toolkits/imagior) - Imagior is an AI-powered image generation platform that lets you create and customize images using dynamic templates and APIs. Perfect for businesses and creators needing fast, scalable visuals without design hassle.
- [Imejis io](https://composio.dev/toolkits/imejis_io) - Imejis io is an API-based image generation platform with powerful customization and template support. It lets you create and modify images in seconds, no manual design work required.
- [Imgix](https://composio.dev/toolkits/imgix) - Imgix is a real-time image processing and delivery service for developers. It helps you optimize, transform, and deliver images efficiently at any scale.
- [Kraken io](https://composio.dev/toolkits/kraken_io) - Kraken.io is an image optimization and compression platform. It helps you shrink image file sizes while keeping visual quality intact.
- [Logo dev](https://composio.dev/toolkits/logo_dev) - Logo.dev is an API and database for high-resolution company logos and brand metadata. Instantly fetch official logos from any domain without scraping or manual searching.
- [Miro](https://composio.dev/toolkits/miro) - Miro is a collaborative online whiteboard platform for teams to brainstorm, design, and manage projects visually. It streamlines teamwork by enabling real-time idea sharing, diagramming, and workflow planning in a single space.
- [Mural](https://composio.dev/toolkits/mural) - Mural is a digital whiteboard platform for distributed visual collaboration. It helps teams brainstorm, map ideas, and diagram together in real time.

## Frequently Asked Questions

### What are the differences in Tool Router MCP and Claid ai MCP?

With a standalone Claid ai MCP server, the agents and LLMs can only access a fixed set of Claid ai tools tied to that server. However, with the Composio Tool Router, agents can dynamically load tools from Claid ai and many other apps based on the task at hand, all through a single MCP endpoint.

### Can I use Tool Router MCP with Mastra AI?

Yes, you can. Mastra AI fully supports MCP integration. You get structured tool calling, message history handling, and model orchestration while Tool Router takes care of discovering and serving the right Claid ai tools.

### Can I manage the permissions and scopes for Claid ai while using Tool Router?

Yes, absolutely. You can configure which Claid ai scopes and actions are allowed when connecting your account to Composio. You can also bring your own OAuth credentials or API configuration so you keep full control over what the agent can do.

### How safe is my data with Composio Tool Router?

All sensitive data such as tokens, keys, and configuration is fully encrypted at rest and in transit. Composio is SOC 2 Type 2 compliant and follows strict security practices so your Claid ai data and credentials are handled as safely as possible.

---
[See all toolkits](https://composio.dev/toolkits) · [Composio docs](https://docs.composio.dev/llms.txt)
