# Studio By Ai21 Labs — how to use (mcp.ai)

Connect your Studio By Ai21 Labs account and use 57 tools for AI models straight from your AI agent. Connect with your own API key. AI21 Studio provides API access to Jurassic-1 large-language-models. Our models power text generation and comprehension features in thousands of live applications.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_studio_by_ai21_labs?ms=1787291400000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `studio_by_ai21_labs_check_can_iframe`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/studio_by_ai21_labs`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/studio_by_ai21_labs/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/check/can/iframe` — Tool to check if a URL can be embedded in an iframe. Use when you need to verify iframe compatibility before embedding external content.
  - body: { url: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/compare/text` — Tool to compare two text strings and identify differences. Use when you need to analyze changes between an original text and its modified version.
  - body: { modified_text: string, original_text: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/create/aftersales/parts/batch` — Tool to create a batch job for Fnac Aftersales parts classification. Use when you need to classify multiple aftersales cases to determine which parts are needed for repairs.
  - body: { cases: object[] }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/create/assistant/route` — Tool to create a new route for an AI21 Studio assistant. Use when you need to define a new conversational path or query pattern for an assistant.
  - body: { name: string, plan_id: string, examples: string[], description: string, assistant_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/create/assistants` — Tool to create a new AI assistant in AI21 Studio. Use when you need to set up a new assistant with custom configuration, tools, and behavior.
  - body: { name: string, tools?: object[], avatar?: string, budget?: string, models?: string[], description?: string, optimization?: string, requirements?: object[], system_prompt?: string, assistant_type?: string, workflow_config?: object, config_overrides?: object, starter_questions?: object[] }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/create/assistants/assistant/id/plans` — Tool to create a new plan for an AI21 Studio assistant. Use when you need to add a new plan with Python code to an assistant.
  - body: { code: string, schemas?: object[], assistant_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/create/demo` — Tool to create a new demo in AI21 Studio. Use when you need to set up a new demo with specified visibility and status.
  - body: { name: string, config?: object, status: string, visibility: string, ui_component_name: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/create/generation/requirements` — Tool to generate requirements from a query or task description. Use when you need to break down a high-level task into specific requirements.
  - body: { query: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/create/generation/thread/name` — Tool to generate a thread name from a query or conversation context. Use when you need to create a descriptive title for a conversation thread.
  - body: { query: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/create/kirsh/grant/compliance/preview` — Tool to preview grant compliance for Kirsh grants. Use when you need to check compliance status for specific grant IDs.
  - body: { grant_ids: integer[] }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/create/kirsh/grant/preview` — Tool to retrieve grant metadata from the Kirsh preview endpoint. Use when you need to fetch grant information including grant name and associated organization details.
  - body: { grant_id: integer }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/create/mcp/storage` — Tool to create MCP (Model Context Protocol) storage in AI21 Studio. Use when you need to register and configure an MCP server connection for your workspace.
  - body: { auth_value?: string, server_url: string, server_label: string, workspace_id?: string, allowed_tools?: string[], auth_header_name?: string, authentication_type?: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/create/secret` — Tool to save a secret in AI21 Studio. Use when you need to securely store sensitive information like API keys or passwords.
  - body: { secret_name: string, secret_value: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/create/solutions/kirsh/grant/compliance` — Tool to check compliance for Kirsh grant IDs. Use when you need to verify compliance status for one or more grants.
  - body: { grant_ids: integer[] }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/create/website/connector` — Tool to create a website connector in AI21 Studio. Use when you need to index website content via sitemap or specific URLs for RAG or grounding purposes.
  - body: { type: string, value: string|string[] }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/delete/assistant` — Tool to delete an assistant by its unique ID. Use when you need to permanently remove an assistant from the system.
  - body: { assistant_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/delete/assistant/route` — Tool to delete a route from an AI21 Studio assistant. Use when you need to remove a routing configuration from an assistant.
  - body: { route_id: string, assistant_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/delete/demo` — Tool to delete a demo by its unique ID. Use when removing a specific demo from AI21 Studio.
  - body: { demo_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/delete/mcp/storage` — Tool to delete an MCP (Model Context Protocol) storage configuration by its unique ID. Use when you need to permanently remove an MCP server configuration from AI21 Studio.
  - body: { mcp_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/delete/secret` — Tool to delete a secret by its unique ID. Use when you need to permanently remove a secret from AI21 Studio.
  - body: { secret_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/delete/website/connector` — Permanently delete a website connector by its unique identifier. Use when you need to remove a website connector that is no longer needed.
  - body: { connector_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/download/modified/document` — Tool to download a modified document from AI21 Labs Studio. Use when you need to generate and download a document with specific content and filename.
  - body: { content: string, filename: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/get/assistant` — Tool to retrieve an assistant by its unique identifier. Use when you need to get details about a specific assistant including its configuration, tools, and settings.
  - body: { assistant_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/get/assistant/route` — Tool to retrieve details of a specific route for an AI21 Studio assistant. Use when you need to get information about a particular route configuration.
  - body: { route_id: string, assistant_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/get/assistants/by/mcp` — Tool to retrieve all assistants associated with a specific MCP (Model Context Protocol) storage configuration. Use when you need to list assistants that are connected to a particular MCP server.
  - body: { mcp_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/get/batch/status` — Tool to check the status of a Fnac Aftersales parts classification batch prediction job. Use when you need to monitor the progress or retrieve results of a previously submitted batch.
  - body: { batch_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/get/demo` — Tool to retrieve a demo by its unique ID. Use when you need to fetch details about a specific demo including its name, status, visibility, and configuration.
  - body: { demo_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/get/kirsh/grant/metadata` — Tool to retrieve Kirsh grant metadata by grant ID. Use when you need to fetch grant information including grant name and organization details.
  - body: { grant_id: integer }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/get/library/batch/status` — Tool to get the ingestion status of a library batch. Use when you need to check the processing status of documents in a batch upload.
  - body: { batch_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/get/mcp/storage` — Tool to retrieve a specific MCP (Model Context Protocol) storage configuration by its unique ID. Use when you need to get details about a particular MCP server including its URL, label, authentication
  - body: { mcp_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/get/output/explanation` — Tool to get output explanation for an execution (cached or generated). Use when you need to retrieve or regenerate the explanation for a specific execution. Set force_regenerate to true to bypass cach
  - body: { execution_id: string, force_regenerate?: boolean }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/get/plan` — Tool to retrieve a specific plan from an AI21 Studio assistant. Use when you need to fetch details of a plan by its ID.
  - body: { plan_id: string, assistant_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/get/website/connector/by/id` — Tool to retrieve details of a specific website connector by its ID. Use when you need to fetch information about a website connector in AI21 Studio.
  - body: { connector_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/get/website/connector/status` — Tool to retrieve the status of a website connector ingestion. Use when you need to check the processing status of a website that was added to AI21 Studio.
  - body: { website_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/get/website/connector/url/status` — Tool to retrieve the status of a specific URL in the website connector. Use when you need to check the processing status of a URL that was previously ingested.
  - body: { url_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/ingest/website/connector` — Tool to ingest website content via sitemap URL in AI21 Studio. Use when you need to process and index website pages from a sitemap for RAG, grounding, or document analysis purposes.
  - body: { labels?: string[], sitemap_url: string, client_config?: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/ingest/website/connector/url` — Tool to ingest a website URL into AI21 Studio's website connector. Use when you need to add a specific URL to be processed and indexed by the website connector for RAG or grounding.
  - body: { url: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/list/assistants` — Tool to retrieve all assistants from AI21 Studio. Use when you need to list available assistants, optionally filtered by workspace IDs.
  - body: { workspace_ids?: string[] }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/list/connectors/website` — Tool to retrieve website connector information from AI21 Studio. Use when you need to get details about configured website connectors.
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/list/demos` — Tool to retrieve all demos from AI21 Studio. Use when you need to list all available demos including their names, statuses, visibility settings, and configurations.
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/list/library/files` — Tool to list files in the workspace library with optional filtering. Use to retrieve file metadata, search by name/path/status/labels, or paginate through library contents.
  - body: { name?: string, path?: string, label?: string[], limit?: integer, offset?: integer, status?: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/list/mcp/storage` — Tool to retrieve all MCP (Model Context Protocol) storage configurations from AI21 Studio. Use when you need to list available MCP servers and their configurations, optionally filtered by workspace ID
  - body: { workspace_id?: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/list/models` — Tool to retrieve information about all available AI21 models. Use when you need to list models with their specifications, pricing, and capabilities.
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/list/plans` — Tool to list all plans for a specific assistant. Use when you need to retrieve the plans associated with an assistant ID.
  - body: { assistant_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/list/secrets` — Tool to retrieve all secrets from AI21 Studio secret storage. Use when you need to list stored secrets and their metadata.
  - body: { limit?: integer, offset?: integer }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/list/settings/models` — Tool to retrieve all workspace models by organization from AI21 Studio. Use when you need to list available models for the workspace.
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/list/settings/models/available` — Tool to retrieve all available models from AI21 Studio settings. Use when you need to list models that are available for use in the workspace.
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/modify/assistant` — Tool to modify an existing AI21 Studio assistant. Use when you need to update assistant properties like name, description, models, system prompt, or configuration. At least one field must be provided 
  - body: { name?: string, tools?: object[], avatar?: string, budget?: string, models?: string[], visibility?: string, description?: string, is_archived?: boolean, assistant_id: string, optimization?: string, requirements?: object[], system_prompt?: string, workflow_config?: object, config_overrides?: object, response_language?: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/modify/assistant/route` — Tool to modify an existing route within an assistant. Use when you need to update the description or examples of a specific route in an AI21 Studio assistant.
  - body: { examples: string[], route_id: string, description: string, assistant_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/modify/plan` — Tool to modify an existing assistant plan in AI21 Studio. Use when you need to update the code or schemas of a plan.
  - body: { code: string, plan_id: string, schemas?: object[], assistant_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/retry/ingest/website` — Tool to retry ingestion of a website in AI21 Studio. Use when a website ingestion has failed and you need to trigger another attempt to ingest the content.
  - body: { website_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/run/assistant` — Tool to run an AI21 Studio assistant with conversational input. Use when you need to interact with a configured AI21 assistant by providing messages and receiving responses. The assistant processes th
  - body: { input: object[], include?: string[], verbose?: boolean, output_type?: object, assistant_id: string, system_prompt?: string, response_language?: string, structured_rag_enabled?: boolean, dynamic_planning_enabled?: boolean }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/sync/website/connector` — Tool to sync a website connector in AI21 Studio. Use when you need to trigger a synchronization of website content for a specific connector.
  - body: { connector_id: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/update/demo` — Tool to update an existing demo in Studio by AI21 Labs. Use when you need to modify demo properties such as name, status, visibility, or configuration.
  - body: { name?: string, config?: object, status?: string, demo_id: string, visibility?: string, ui_component_name?: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/update/mcp/storage` — Tool to update an existing MCP (Model Context Protocol) storage configuration in AI21 Studio. Use when you need to modify the server label of an MCP storage configuration.
  - body: { mcp_id: string, server_label: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/update/secret` — Tool to update an existing secret in AI21 Studio. Use when you need to modify secret properties such as name or value.
  - body: { secret_id: string, secret_name?: string, secret_value?: string }
- `POST https://api.mcp.ai/api/studio_by_ai21_labs/validate/plan` — Tool to validate Python code for an AI21 Studio assistant plan. Use when you need to verify that code is syntactically correct and executable before using it in an assistant.
  - body: { code: string, schemas?: object[], assistant_id: string }

## Example prompts
- "What can I do in Studio By Ai21 Labs?"
- "Show me a summary of my Studio By Ai21 Labs account"

## More
- Page: https://mcp.ai/studio_by_ai21_labs
- Agent spec (llms.txt): https://mcp.ai/studio_by_ai21_labs/llms.txt
- Postman collection: https://mcp.ai/studio_by_ai21_labs/postman.json
