# Conecta tu asistente por MCP

> Conecta transcript1 por MCP a Claude, ChatGPT, Cursor, VS Code, Claude Code u otros clientes para transcribir grabaciones y leer el texto.

Canonical: https://transcript1.com/es/docs/mcp
Language: es
Last updated: 2026-10-15

Tu asistente de IA puede pedir y leer transcripciones si lo conectas al servidor remoto de [Model Context Protocol](https://modelcontextprotocol.io/) de transcript1. Puedes enviar enlaces de YouTube, X, TikTok, Instagram, Facebook y Bluesky, o subir archivos de audio y video. Consulta las demás grabaciones públicas admitidas y sus restricciones en [Fuentes y opciones](https://transcript1.com/es/docs/sources-and-options).

Usa publicaciones públicas; si tienen varios videos, solo se transcribe el primero. Además de YouTube y X, puedes obtener subtítulos en el idioma original de TikTok, Bluesky, Dailymotion y LinkedIn. Si no hay una pista que se pueda usar, el modo auto transcribe el audio con IA al mismo precio por minuto. Fuera de YouTube, los subtítulos solo incluyen marcas de tiempo por segmento (`words: null`), incluso en pistas automáticas.

El modo `captions` (solo subtítulos) nunca descarga audio ni usa STT. Si activas la identificación de hablantes o eliges `source=stt`, se transcribe directamente el audio. Revisa las opciones en [Fuentes y opciones](https://transcript1.com/es/docs/sources-and-options).

- **Endpoint:** `https://api.transcript1.com/mcp` (streamable HTTP).
- **Cómo autenticarte:** Claude y ChatGPT usan OAuth 2.1: inicias sesión en transcript1 y apruebas el acceso. Para Cursor, VS Code, Claude Code y agentes, envía una clave de API con `Authorization: Bearer t1_...`. Puedes crearla en [“API keys”](https://transcript1.com/dashboard/account/tokens).

Las herramientas llaman a la [API REST](https://transcript1.com/es/docs/api-reference) `/v1` con tu credencial. Las reglas de validación, cobro y errores son las mismas. MCP comparte los minutos y los límites de requests de tu cuenta con las demás llamadas.

## Qué puede hacer tu asistente

| Herramienta | Para qué sirve |
|---|---|
| `transcribe` | Envía un enlace de video admitido en `url`. Puedes añadir `platform`, `source`, `language`, `diarize`, `format` y `wait_seconds`. Reconoce la plataforma por el enlace, espera y devuelve la primera página del texto. Si aún no termina, devuelve el `id`. |
| `get_transcription` | Consulta el estado o lee el texto a partir de un `id`. Puedes añadir `wait_seconds`, `format`, `from_seconds` y `max_chars`. |
| `list_transcriptions` | Consulta las transcripciones recientes, empezando por la más nueva, sin incluir el texto. Puedes añadir `status`, `platform`, `limit` y `cursor`. |
| `create_upload` | Prepara la subida por partes de un archivo de tu computadora. Necesita `filename`, `size` y `request_id`, un UUID que generas tú. También acepta `mime_type`, `language` y `diarize`. |
| `get_upload_status` | Revisa qué partes del archivo ya llegaron para continuar la subida. |
| `complete_upload` | Comprueba las partes recibidas y pone la transcripción en cola. |
| `delete_transcription` | Si la transcripción sigue en curso, la cancela y devuelve los minutos. Si ya terminó, elimina el registro y el texto. |
| `get_account` | Consulta tu saldo de minutos, el plan y cuándo se renueva. |

### Formato, espera y páginas

- Por defecto, `format` es `text`: cada segmento ocupa una línea con su marca de tiempo. Si activaste la identificación de hablantes, también aparece la etiqueta, como en `[00:01:02] Speaker 1: Good morning.` Puedes elegir `srt`, `vtt` o `json`.
- `wait_seconds` admite de 0 a 55 y usa 50 por defecto. Si el texto no está listo al terminar la espera, la respuesta lo indica e incluye el `id`. Pásalo a `get_transcription` para seguir esperando.
- El texto largo se divide en páginas, siempre entre segmentos completos. `max_chars` define el tamaño: 60,000 por defecto, con un rango de 1,000 a 100,000. Usa el `next_from_seconds` de la respuesta como `from_seconds` en la siguiente consulta para continuar leyendo.
- La respuesta indica de dónde viene el texto en `transcript_source`: `youtube_captions`, `x_captions`, `tiktok_captions`, `bluesky_captions`, `dailymotion_captions`, `linkedin_captions` o `speech_to_text`. Si recibes `caption_kind: null`, el origen de la pista es desconocido; no significa que el creador la haya subido.

### Consulta la transcripción antes de volver a enviarla

`transcribe` siempre activa `reuse_recent`. Si usas el enlace completo y repites el mismo video con las mismas opciones dentro de 24 horas, recuperas la transcripción anterior sin pagar de nuevo. La respuesta avisa cuando la reutiliza. Esto no funciona con enlaces cortos. Para revisar algo que ya enviaste, usa `get_transcription` o `list_transcriptions` en lugar de crear otra transcripción.

### Cómo sube archivos el asistente

Los bytes del archivo no viajan por MCP. Al llamar a `create_upload`, el asistente recibe el `id` de la transcripción, la plantilla de URL para cada parte, un `X-Upload-Token` y la lista de partes. Después debe enviarlas por HTTP con `PUT`, fuera de MCP, y llamar a `complete_upload`. La respuesta también ofrece la página del panel para subir el archivo como alternativa. Consulta el protocolo en [Cómo subir archivos](https://transcript1.com/es/docs/uploads).

### Si necesitas webhooks

Para usar [webhooks](https://transcript1.com/es/docs/webhooks), llama a la API REST. Las herramientas MCP no tienen un parámetro para configurarlos.

## Claude

En Claude, agrega transcript1 como conector personalizado para conectarte al servidor MCP remoto.

1. Ve a los ajustes de conectores de Claude y crea uno personalizado.
2. Ponle el nombre `transcript1` e indica `https://api.transcript1.com/mcp` como URL del servidor.
3. Cuando se abra transcript1, inicia sesión y aprueba el acceso con los permisos `transcriptions:read` y `transcriptions:write`.

Ya puedes pedirle algo como “Transcribe https://www.youtube.com/watch?v=dQw4w9WgXcQ”. La disponibilidad de conectores personalizados depende de tu plan de Claude.

## ChatGPT

Para conectar ChatGPT, también necesitas un conector personalizado.

1. Ve a los ajustes de conectores de ChatGPT y crea un conector personalizado para MCP.
2. Usa la URL de servidor `https://api.transcript1.com/mcp`.
3. Completa el inicio de sesión en transcript1 y aprueba la conexión.

La opción depende de tu plan de ChatGPT y de los ajustes del espacio de trabajo. Puede ser necesario activar el modo de desarrollador.

## Conecta Cursor

Puedes [agregar transcript1 a Cursor con un clic](cursor://anysphere.cursor-deeplink/mcp/install?name=transcript1&config=eyJ1cmwiOiJodHRwczovL2FwaS50cmFuc2NyaXB0MS5jb20vbWNwIn0=).

Si prefieres configurarlo a mano, añade esto a `.cursor/mcp.json` y coloca tu clave de API en el header `Authorization`:

```json
{
  "mcpServers": {
    "transcript1": {
      "url": "https://api.transcript1.com/mcp",
      "headers": {
        "Authorization": "Bearer t1_YOURKEY"
      }
    }
  }
}
```

## VS Code

Puedes [agregar transcript1 a VS Code con un clic](vscode:mcp/install?%7B%22name%22%3A%22transcript1%22%2C%22type%22%3A%22http%22%2C%22url%22%3A%22https%3A%2F%2Fapi.transcript1.com%2Fmcp%22%7D).

Para hacerlo a mano, añade esta configuración a `.vscode/mcp.json` en tu espacio de trabajo:

```json
{
  "servers": {
    "transcript1": {
      "type": "http",
      "url": "https://api.transcript1.com/mcp",
      "headers": {
        "Authorization": "Bearer t1_YOURKEY"
      }
    }
  }
}
```

## Conecta Claude Code

Sustituye `t1_YOURKEY` por tu clave de API y ejecuta el comando:

```bash
claude mcp add --transport http transcript1 https://api.transcript1.com/mcp --header "Authorization: Bearer t1_YOURKEY"
```

## Usa otro cliente MCP

Si tu cliente admite servidores MCP remotos, conéctalo a `https://api.transcript1.com/mcp` con el header `Authorization: Bearer t1_...`.

## Conecta clientes que ejecutan un comando, como Claude Desktop

Si el cliente inicia el servidor MCP ejecutando un comando, usa `npx -y @transcript1/mcp` y configura `TRANSCRIPT1_API_KEY` con tu clave de API. Este paquete se conecta al servidor remoto de transcript1. Necesitas Node.js 18 o posterior.

En Claude Desktop, pega esta configuración en `claude_desktop_config.json`. Cambia `t1_YOURKEY` por una clave de [“API keys”](https://transcript1.com/dashboard/account/tokens).

```json
{
  "mcpServers": {
    "transcript1": {
      "command": "npx",
      "args": ["-y", "@transcript1/mcp"],
      "env": { "TRANSCRIPT1_API_KEY": "t1_YOURKEY" }
    }
  }
}
```

## Agent Skill

El Agent Skill de transcript1 es un archivo breve llamado `SKILL.md` con las instrucciones que necesita el agente para usar el servicio. Si tu agente admite skills, puedes añadirlo desde [https://transcript1.com/.well-known/agent-skills/transcript1/SKILL.md](https://transcript1.com/.well-known/agent-skills/transcript1/SKILL.md).

Si el agente descubre skills automáticamente, puede encontrarlo en el índice `https://transcript1.com/.well-known/agent-skills/index.json`.

## Cómo responde una herramienta cuando falla

Si una herramienta falla, devuelve el mismo `code` que la API REST, una explicación y una acción que el asistente puede seguir. La respuesta tiene el formato `<code>: <message>. <next step>`. Por ejemplo, si no te alcanzan los minutos:

```text
insufficient_minutes: 20 minutes needed, 3 remaining. Top up at https://transcript1.com/dashboard/billing
```

Consulta el significado de cada código en [Errores](https://transcript1.com/es/docs/errors). Si lo que falla es la transcripción, la respuesta usa el mismo formato con el código correspondiente, como `media_private` o `no_captions`.
