instantclips-mcp 1.1.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.es.md +142 -61
- package/README.md +133 -56
- package/README.zh-CN.md +117 -51
- package/bin/instantclips-mcp.js +70 -83
- package/manifest/instantclips-mcp.json +346 -0
- package/package.json +6 -2
- package/scripts/sync-manifest.mjs +77 -0
package/README.es.md
CHANGED
|
@@ -2,47 +2,75 @@
|
|
|
2
2
|
|
|
3
3
|
[English](README.md) · **Español** · [简体中文](README.zh-CN.md)
|
|
4
4
|
|
|
5
|
+
[](https://m8ven.ai/mcp/instantclips-mcp-1k56q7)
|
|
6
|
+
|
|
5
7
|
[InstantClips](https://instantclips.ai) convierte un producto de comercio electrónico en vídeos
|
|
6
8
|
verticales cortos para TikTok, Instagram Reels y Stories. Funciona como un **servidor MCP alojado**,
|
|
7
9
|
por lo que Claude Code, Codex, Cursor, VS Code, la aplicación de Claude, ChatGPT o cualquier otro
|
|
8
|
-
cliente MCP pueden hacer lo mismo que la aplicación web: importar un producto, preparar
|
|
9
|
-
|
|
10
|
+
cliente MCP pueden hacer lo mismo que la aplicación web: importar un producto, preparar el plan y
|
|
11
|
+
generar el vídeo.
|
|
12
|
+
|
|
13
|
+
**No es un generador de texto a vídeo.** InstantClips lee la página del producto (fotos, precio,
|
|
14
|
+
detalles) y construye el anuncio a partir de lo que realmente hay allí. El plan se escribe primero
|
|
15
|
+
y se te muestra; el vídeo sigue el plan. Por eso resulta lo bastante económico para recorrer un
|
|
16
|
+
catálogo entero, y por eso el resultado es el producto que vendes y no una suposición.
|
|
17
|
+
|
|
18
|
+
Gratis para empezar: los créditos de bienvenida cubren el primer vídeo y no hace falta introducir
|
|
19
|
+
ninguna tarjeta. Después, paquetes de créditos de pago único o una membresía Agency para quien
|
|
20
|
+
gestiona varias marcas. Consulta los [precios](https://instantclips.ai/#pricing).
|
|
21
|
+
|
|
22
|
+
- **Dónde encaja.** Junto a un programador de publicaciones (Postiz, Buffer) que publique lo que
|
|
23
|
+
se genera. Junto a una herramienta de atribución que te diga qué gancho funcionó. En lugar de un
|
|
24
|
+
editor cuando tienes una página de producto y ningún metraje.
|
|
25
|
+
- **Para qué no sirve.** Películas cinematográficas de marca. Un presentador leyendo tu guion.
|
|
26
|
+
4K horizontal. Productos sin página y sin fotos.
|
|
27
|
+
- **Pensado para.** Vendedores de Shopify, dropshippers, marcas y agencias que llevan las redes de
|
|
28
|
+
varias tiendas a la vez.
|
|
10
29
|
|
|
11
30
|
**El servidor del producto permanece alojado.** Este repositorio contiene su guía de conexión, los
|
|
12
31
|
metadatos de registro, un cliente HTTP de ejemplo y un pequeño adaptador stdio de código abierto
|
|
13
|
-
para los clientes que no pueden conectarse directamente a un servidor remoto. El adaptador
|
|
14
|
-
|
|
15
|
-
|
|
32
|
+
para los clientes que no pueden conectarse directamente a un servidor remoto. El adaptador responde
|
|
33
|
+
localmente a la inicialización, al ping y al descubrimiento de herramientas desde una instantánea
|
|
34
|
+
generada, y envía al endpoint alojado únicamente las llamadas autenticadas. El servidor alojado
|
|
35
|
+
sigue siendo la fuente de verdad; la implementación del producto no se duplica aquí.
|
|
16
36
|
|
|
17
37
|
## Endpoint
|
|
18
38
|
|
|
19
|
-
| |
|
|
20
|
-
| ---------- |
|
|
21
|
-
| Endpoint | `https://app.instantclips.ai/mcp`
|
|
22
|
-
| Transporte | Streamable HTTP, sin estado
|
|
23
|
-
| Método | `POST`, JSON-RPC 2.0
|
|
24
|
-
| Auth | `Authorization: Bearer <token>`
|
|
39
|
+
| | |
|
|
40
|
+
| ---------- | ------------------------------------------------------------------------------------------------- |
|
|
41
|
+
| Endpoint | `https://app.instantclips.ai/mcp` |
|
|
42
|
+
| Transporte | Streamable HTTP, sin estado |
|
|
43
|
+
| Método | `POST`, JSON-RPC 2.0 |
|
|
44
|
+
| Auth | Inicio de sesión cuando el cliente lo pida (OAuth 2.1), o `Authorization: Bearer <token>` para procesos sin navegador |
|
|
45
|
+
|
|
46
|
+
Pega una sola dirección en tu asistente e inicia sesión cuando te lo pida. Esa es toda la
|
|
47
|
+
configuración. La primera vez que llama, el servidor te lleva a iniciar sesión en InstantClips y a
|
|
48
|
+
autorizar al asistente; no hay claves que copiar. Cada asistente que autorizas aparece en
|
|
49
|
+
**Aplicaciones autorizadas** dentro de los ajustes, donde puedes desconectarlo.
|
|
25
50
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
créditos gratuitos para empezar.
|
|
51
|
+
La conexión es con tu propia cuenta: las mismas marcas, productos, créditos y límites del plan que
|
|
52
|
+
en la aplicación web. Al iniciar sesión se crea una cuenta si todavía no tienes una, con créditos
|
|
53
|
+
para el primer vídeo.
|
|
30
54
|
|
|
31
|
-
Al abrir el endpoint en un navegador
|
|
32
|
-
|
|
55
|
+
Al abrir el endpoint en un navegador aparece la
|
|
56
|
+
[página de configuración](https://app.instantclips.ai/mcp) en lugar de un error de protocolo, con
|
|
57
|
+
botones de instalación de un clic para Cursor y VS Code.
|
|
33
58
|
|
|
34
59
|
## Instalación
|
|
35
60
|
|
|
36
|
-
Conéctate directamente al endpoint alojado siempre que tu cliente admita Streamable HTTP
|
|
37
|
-
|
|
38
|
-
|
|
61
|
+
Conéctate directamente al endpoint alojado siempre que tu cliente admita Streamable HTTP; te
|
|
62
|
+
guiará por el inicio de sesión la primera vez. Usa un token y el adaptador stdio (en «¿Sin
|
|
63
|
+
navegador?», más abajo) solo para scripts y procesos automatizados que no pueden abrir una página
|
|
64
|
+
de inicio de sesión.
|
|
39
65
|
|
|
40
66
|
### Claude Code
|
|
41
67
|
|
|
42
68
|
```bash
|
|
43
|
-
claude mcp add --transport http instantclips https://app.instantclips.ai/mcp
|
|
69
|
+
claude mcp add --transport http instantclips https://app.instantclips.ai/mcp
|
|
44
70
|
```
|
|
45
71
|
|
|
72
|
+
Después ejecuta `/mcp` dentro de Claude Code y elige InstantClips para iniciar sesión.
|
|
73
|
+
|
|
46
74
|
### Codex
|
|
47
75
|
|
|
48
76
|
Añade lo siguiente a `~/.codex/config.toml`; la configuración se aplica a la CLI, la aplicación y
|
|
@@ -51,16 +79,63 @@ la extensión del IDE:
|
|
|
51
79
|
```toml
|
|
52
80
|
[mcp_servers.instantclips]
|
|
53
81
|
url = "https://app.instantclips.ai/mcp"
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Después ejecuta `codex mcp login instantclips` para iniciar sesión.
|
|
85
|
+
|
|
86
|
+
### Cursor y VS Code
|
|
87
|
+
|
|
88
|
+
La [página de configuración](https://app.instantclips.ai/mcp) incluye botones de instalación de un
|
|
89
|
+
clic. Abren la aplicación, añaden InstantClips y te piden iniciar sesión la primera vez.
|
|
90
|
+
|
|
91
|
+
### Aplicación de Claude y ChatGPT
|
|
92
|
+
|
|
93
|
+
Aplicación de Claude: añade un conector personalizado con esta dirección e inicia sesión cuando te
|
|
94
|
+
lo pida. ChatGPT en la web: activa el modo de desarrollador en Ajustes, Apps, Avanzado y añade la
|
|
95
|
+
dirección como conector; en un espacio de trabajo Business o Enterprise, un administrador la
|
|
96
|
+
publica como aplicación para todo el equipo. La aplicación de escritorio de ChatGPT acepta la misma
|
|
97
|
+
dirección en Ajustes, Servidores MCP, y la comparte con Codex.
|
|
98
|
+
|
|
99
|
+
### Cualquier otro cliente o agente MCP
|
|
100
|
+
|
|
101
|
+
OpenClaw, Hermes o un agente que hayas creado: conéctalo a la dirección mediante Streamable HTTP.
|
|
102
|
+
El servidor anuncia su flujo de inicio de sesión de la forma estándar, así que un cliente que siga
|
|
103
|
+
la especificación no necesita nada más. Lo que no pueda abrir una página de inicio de sesión usa un
|
|
104
|
+
token, como se explica a continuación.
|
|
105
|
+
|
|
106
|
+
### ¿Sin navegador? Usa un token de acceso
|
|
107
|
+
|
|
108
|
+
Los scripts, los trabajos de CI y los agentes que no pueden abrir una página de inicio de sesión se
|
|
109
|
+
autentican con un token de larga duración. Genera uno en
|
|
110
|
+
**[app.instantclips.ai/settings#ai-access](https://app.instantclips.ai/settings#ai-access)**. Da
|
|
111
|
+
acceso completo a tu cuenta, así que mantenlo fuera de cualquier cosa que subas a un repositorio.
|
|
112
|
+
|
|
113
|
+
Con un token, los mismos clientes quedan así:
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
# Claude Code
|
|
117
|
+
claude mcp add --transport http instantclips https://app.instantclips.ai/mcp --header "Authorization: Bearer YOUR_TOKEN"
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
```toml
|
|
121
|
+
# Codex, en ~/.codex/config.toml
|
|
122
|
+
[mcp_servers.instantclips]
|
|
123
|
+
url = "https://app.instantclips.ai/mcp"
|
|
54
124
|
http_headers = { Authorization = "Bearer YOUR_TOKEN" }
|
|
55
125
|
```
|
|
56
126
|
|
|
57
|
-
Para no guardar el token en el archivo, sustituye el encabezado por
|
|
58
|
-
`bearer_token_env_var = "INSTANTCLIPS_TOKEN"` y expórtalo como variable de entorno en tu shell.
|
|
127
|
+
Para no guardar el token en el archivo de Codex, sustituye el encabezado por
|
|
128
|
+
`bearer_token_env_var = "INSTANTCLIPS_TOKEN"` y expórtalo como variable de entorno en tu shell. La
|
|
129
|
+
aplicación de Claude acepta el token como encabezado de solicitud en el conector (los encabezados
|
|
130
|
+
de solicitud siguen en beta); los conectores de ChatGPT inician sesión mediante el flujo de inicio
|
|
131
|
+
de sesión en lugar de una clave pegada. Cualquier otro cliente envía un encabezado
|
|
132
|
+
`Authorization: Bearer`. El protocolo no contiene nada específico de InstantClips.
|
|
59
133
|
|
|
60
|
-
|
|
134
|
+
#### Clientes que solo admiten stdio y procesos sin interfaz
|
|
61
135
|
|
|
62
|
-
El paquete npm `instantclips-mcp` es un adaptador ligero de stdio a HTTPS.
|
|
63
|
-
|
|
136
|
+
El paquete npm `instantclips-mcp` es un adaptador ligero de stdio a HTTPS. Sirve localmente la
|
|
137
|
+
inicialización y el descubrimiento de herramientas para arrancar rápido y sin credenciales; después
|
|
138
|
+
lee el token del entorno y envía las llamadas de herramientas a InstantClips:
|
|
64
139
|
|
|
65
140
|
```json
|
|
66
141
|
{
|
|
@@ -84,26 +159,18 @@ INSTANTCLIPS_TOKEN="your-token" npx -y instantclips-mcp --check --json
|
|
|
84
159
|
```
|
|
85
160
|
|
|
86
161
|
El token solo se acepta mediante `INSTANTCLIPS_TOKEN`, nunca como argumento de línea de comandos,
|
|
87
|
-
por lo que no aparece en la lista de procesos.
|
|
88
|
-
|
|
89
|
-
### Cursor y VS Code
|
|
162
|
+
por lo que no aparece en la lista de procesos. Es obligatorio para llamar a una herramienta, pero
|
|
163
|
+
no para `initialize`, `ping` ni `tools/list`. Se requiere Node.js 20 o posterior.
|
|
90
164
|
|
|
91
|
-
|
|
92
|
-
instalación de un clic. Una vez generado el token, los botones lo introducen por ti.
|
|
165
|
+
## Instrucciones para empezar
|
|
93
166
|
|
|
94
|
-
|
|
167
|
+
Cinco para arrancar. Sustituye el enlace o el nombre del producto.
|
|
95
168
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
### Cualquier otro cliente
|
|
103
|
-
|
|
104
|
-
OpenClaw, Hermes o un agente que hayas creado: conéctalo a la URL mediante Streamable HTTP con un
|
|
105
|
-
encabezado `Authorization: Bearer`. El protocolo no contiene nada específico de InstantClips, por
|
|
106
|
-
lo que cualquier cliente compatible con MCP ya puede comunicarse con el servidor.
|
|
169
|
+
1. «Haz un anuncio en vídeo para este producto: [URL]»
|
|
170
|
+
2. «Importa todos los productos de esta página de colección y prepara los planes de todos. No generes nada todavía.»
|
|
171
|
+
3. «Muéstrame el plan de [producto] y reescribe el gancho para que empiece por el precio.»
|
|
172
|
+
4. «Haz tres vídeos de [URL] con tres ganchos distintos, para que pueda probarlos.»
|
|
173
|
+
5. «¿A cuál de mis marcas pertenece este producto? Luego haz el vídeo.»
|
|
107
174
|
|
|
108
175
|
## Herramientas
|
|
109
176
|
|
|
@@ -112,34 +179,44 @@ El flujo de trabajo, en orden:
|
|
|
112
179
|
1. **Importar** — usa `import_product_from_url` para una página de tienda o
|
|
113
180
|
`create_product_from_images` cuando no haya una página que leer.
|
|
114
181
|
2. **Esperar el borrador** — consulta `get_product` periódicamente hasta que terminen la importación
|
|
115
|
-
y la preparación
|
|
116
|
-
3. **Revisarlo y orientarlo** —
|
|
117
|
-
formato, pautas de ejecución y restricciones. `update_video_direction` permite
|
|
182
|
+
y la preparación del plan.
|
|
183
|
+
3. **Revisarlo y orientarlo** — el plan se devuelve como texto: gancho, enfoque del contenido,
|
|
184
|
+
formato, pautas de ejecución y restricciones. `update_video_direction` permite editarlo y
|
|
118
185
|
`redraft_video_direction` propone otro enfoque.
|
|
119
|
-
4. **
|
|
186
|
+
4. **Generar** — usa `generate_video` pasando `expected_credit_cost`: el coste que se le indicó al
|
|
187
|
+
usuario, tal como lo informó `get_product`. Si no coincide, se rechaza sin cobrar.
|
|
120
188
|
5. **Recoger el resultado** — consulta `get_video` periódicamente para obtener el MP4 terminado y
|
|
121
189
|
un enlace público para compartirlo.
|
|
122
190
|
|
|
191
|
+
Otro vídeo del mismo producto sigue el mismo flujo sobre ese producto: editar o volver a preparar el
|
|
192
|
+
plan abre el borrador del siguiente vídeo, y `generate_video` sin borrador genera otra toma del último
|
|
193
|
+
plan. Un vídeo ya generado no se puede modificar. Cada respuesta de `get_product` incluye `next_step`:
|
|
194
|
+
qué hacer a continuación.
|
|
195
|
+
|
|
123
196
|
Las marcas funcionan de la misma manera: `list_brands`, `create_brand`, `set_product_brand`. Cada
|
|
124
197
|
vídeo se prepara con la voz de una marca; por eso, si el escaparate de un producto importado no
|
|
125
198
|
coincide con ninguna marca existente, el proceso se detiene y pregunta en lugar de adivinar.
|
|
126
199
|
|
|
127
|
-
El
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
200
|
+
El servidor alojado publica los parámetros exactos de cada herramienta. La instantánea generada
|
|
201
|
+
[`manifest/instantclips-mcp.json`](manifest/instantclips-mcp.json) permite que clientes stdio y
|
|
202
|
+
registros inspeccionen los mismos esquemas sin credenciales. Quienes mantienen el repositorio la
|
|
203
|
+
actualizan con `INSTANTCLIPS_TOKEN="..." npm run sync:manifest`; `npm run check:manifest` falla si
|
|
204
|
+
la copia incluida difiere del servidor en producción. Ejecuta `python example.py tools` cuando
|
|
205
|
+
quieras imprimir específicamente los esquemas actuales mediante HTTP.
|
|
131
206
|
|
|
132
207
|
## Créditos
|
|
133
208
|
|
|
134
|
-
Importar un producto, preparar
|
|
135
|
-
|
|
136
|
-
|
|
209
|
+
Importar un producto, preparar el plan y editarlo es **gratis**. `generate_video` es la única
|
|
210
|
+
herramienta que consume créditos y requiere tu autorización explícita; las herramientas indican
|
|
211
|
+
antes el coste, y `generate_video` recibe ese número como `expected_credit_cost`, rechazando un
|
|
212
|
+
lanzamiento cuyo coste haya cambiado. Un agente no puede acumular cargos sin avisarte. Consulta los
|
|
137
213
|
[precios](https://instantclips.ai/#pricing).
|
|
138
214
|
|
|
139
215
|
## example.py
|
|
140
216
|
|
|
141
217
|
Un cliente MCP sin dependencias: solo requiere Python 3.9 o posterior y la biblioteca estándar; no
|
|
142
|
-
hace falta ejecutar `pip install`.
|
|
218
|
+
hace falta ejecutar `pip install`. Se autentica con un token, porque un script no tiene navegador
|
|
219
|
+
con el que iniciar sesión.
|
|
143
220
|
|
|
144
221
|
```bash
|
|
145
222
|
export INSTANTCLIPS_TOKEN="your-token"
|
|
@@ -153,9 +230,10 @@ es lo que necesitas antes de automatizar el flujo de trabajo descrito arriba.
|
|
|
153
230
|
|
|
154
231
|
## Enlaces
|
|
155
232
|
|
|
156
|
-
- [instantclips.ai/automate](https://instantclips.ai/automate/) — qué
|
|
157
|
-
|
|
158
|
-
|
|
233
|
+
- [instantclips.ai/automate](https://instantclips.ai/automate/) — para qué sirve la
|
|
234
|
+
automatización: un resultado real hecho a partir de una página de tienda, instrucciones para
|
|
235
|
+
empezar, las herramientas en orden y las reglas. No repite la configuración; esa información está
|
|
236
|
+
en este archivo y en la página de configuración de la aplicación.
|
|
159
237
|
- [app.instantclips.ai/llms.txt](https://app.instantclips.ai/llms.txt) — descripción del producto y
|
|
160
238
|
de la secuencia de herramientas en un formato legible por máquinas.
|
|
161
239
|
- [Términos](https://app.instantclips.ai/terms) · [Privacidad](https://app.instantclips.ai/privacy)
|
|
@@ -185,9 +263,12 @@ commit es una clave publicada.
|
|
|
185
263
|
`glama.json` es el archivo independiente y específico de Glama que permite reclamar allí la ficha.
|
|
186
264
|
Un servidor perteneciente a una organización, en lugar de una cuenta personal, solo puede
|
|
187
265
|
reclamarse si ese archivo está presente.
|
|
188
|
-
El archivo solo acredita la propiedad
|
|
189
|
-
`
|
|
190
|
-
|
|
266
|
+
El archivo solo acredita la propiedad. En el formulario Dockerfile de Glama, usa
|
|
267
|
+
`["npm install --omit=dev"]` como pasos de compilación,
|
|
268
|
+
`["node", "./bin/instantclips-mcp.js"]` como argumentos de CMD y cualquier valor ficticio para el
|
|
269
|
+
marcador obligatorio `INSTANTCLIPS_TOKEN`. Las comprobaciones de inicialización y calidad de Glama
|
|
270
|
+
usan el manifiesto incluido y nunca envían ese valor al servidor alojado. No introduzcas un token
|
|
271
|
+
real de una cuenta en el entorno de compilación de un tercero.
|
|
191
272
|
|
|
192
273
|
## Licencia
|
|
193
274
|
|
package/README.md
CHANGED
|
@@ -2,43 +2,70 @@
|
|
|
2
2
|
|
|
3
3
|
**English** · [Español](README.es.md) · [简体中文](README.zh-CN.md)
|
|
4
4
|
|
|
5
|
+
[](https://m8ven.ai/mcp/instantclips-mcp-1k56q7)
|
|
6
|
+
|
|
5
7
|
[InstantClips](https://instantclips.ai) turns an e-commerce product into short-form vertical
|
|
6
8
|
video for TikTok, Instagram Reels and Stories. It runs a hosted **MCP server**, so Claude Code,
|
|
7
9
|
Codex, Cursor, VS Code, the Claude app, ChatGPT or any other MCP client can do what the web app
|
|
8
|
-
does: import a product, draft the
|
|
10
|
+
does: import a product, draft the plan, and generate the video.
|
|
11
|
+
|
|
12
|
+
**This is not a text-to-video generator.** InstantClips reads the product page — photos, price,
|
|
13
|
+
details — and builds the ad from what is actually there. The plan is written first and shown to
|
|
14
|
+
you; the video follows the plan. That is why it is cheap enough to run across a catalogue, and why
|
|
15
|
+
the result is the product you sell rather than a guess at it.
|
|
16
|
+
|
|
17
|
+
Free to start: the welcome credits cover the first video, and there is no card to enter. After
|
|
18
|
+
that, one-time credit packs, or an Agency membership for anyone running several brands. See
|
|
19
|
+
[pricing](https://instantclips.ai/#pricing).
|
|
20
|
+
|
|
21
|
+
- **Where it fits.** Beside a scheduler (Postiz, Buffer) that posts what comes back. Beside an
|
|
22
|
+
attribution tool that tells you which hook worked. Instead of an editor when you have a product
|
|
23
|
+
page and no footage.
|
|
24
|
+
- **Not for.** Cinematic hero films. A presenter reading your script. Horizontal 4K. Products with
|
|
25
|
+
no page and no photos.
|
|
26
|
+
- **Built for.** Shopify sellers, dropshippers, brands and agencies running social for several
|
|
27
|
+
stores at once.
|
|
9
28
|
|
|
10
29
|
**The product server stays hosted.** This repository contains its connection guide, registry
|
|
11
30
|
metadata, example HTTP client and a small open-source stdio adapter for clients that cannot connect
|
|
12
|
-
to a remote server directly. The adapter
|
|
13
|
-
tool
|
|
31
|
+
to a remote server directly. The adapter answers initialization, ping and tool discovery from a
|
|
32
|
+
generated snapshot, then sends authenticated tool calls to the hosted endpoint. The hosted server
|
|
33
|
+
remains the source of truth; the product implementation is not duplicated here.
|
|
14
34
|
|
|
15
35
|
## Endpoint
|
|
16
36
|
|
|
17
|
-
| |
|
|
18
|
-
| ---------- |
|
|
19
|
-
| Endpoint | `https://app.instantclips.ai/mcp`
|
|
20
|
-
| Transport | Streamable HTTP, stateless
|
|
21
|
-
| Method | `POST`, JSON-RPC 2.0
|
|
22
|
-
| Auth | `Authorization: Bearer <token>`
|
|
37
|
+
| | |
|
|
38
|
+
| ---------- | --------------------------------------------------------------------------------- |
|
|
39
|
+
| Endpoint | `https://app.instantclips.ai/mcp` |
|
|
40
|
+
| Transport | Streamable HTTP, stateless |
|
|
41
|
+
| Method | `POST`, JSON-RPC 2.0 |
|
|
42
|
+
| Auth | Sign in when your client asks (OAuth 2.1), or `Authorization: Bearer <token>` for callers with no browser |
|
|
23
43
|
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
44
|
+
Paste one address into your assistant and sign in when it asks. That is the whole setup. The
|
|
45
|
+
first time it calls, the server sends you to sign in to InstantClips and approve the assistant;
|
|
46
|
+
there are no keys to copy. Every assistant you approve is listed under **Authorized apps** in
|
|
47
|
+
settings, where you can disconnect it.
|
|
27
48
|
|
|
28
|
-
|
|
29
|
-
|
|
49
|
+
The connection is to your own account: same brands, products, credits and plan limits as the web
|
|
50
|
+
app. Signing in creates an account if you do not have one, with credits for the first video.
|
|
51
|
+
|
|
52
|
+
Opening the endpoint in a browser returns the [setup page](https://app.instantclips.ai/mcp)
|
|
53
|
+
rather than a protocol error, with one-click install buttons for Cursor and VS Code.
|
|
30
54
|
|
|
31
55
|
## Install
|
|
32
56
|
|
|
33
|
-
Connect to the hosted endpoint directly whenever your client supports Streamable HTTP
|
|
34
|
-
|
|
57
|
+
Connect to the hosted endpoint directly whenever your client supports Streamable HTTP; it takes
|
|
58
|
+
you through sign-in on first use. Use a token and the stdio adapter (under "No browser?" below)
|
|
59
|
+
only for scripts and automated runners that cannot open a sign-in page.
|
|
35
60
|
|
|
36
61
|
### Claude Code
|
|
37
62
|
|
|
38
63
|
```bash
|
|
39
|
-
claude mcp add --transport http instantclips https://app.instantclips.ai/mcp
|
|
64
|
+
claude mcp add --transport http instantclips https://app.instantclips.ai/mcp
|
|
40
65
|
```
|
|
41
66
|
|
|
67
|
+
Then run `/mcp` inside Claude Code and choose InstantClips to sign in.
|
|
68
|
+
|
|
42
69
|
### Codex
|
|
43
70
|
|
|
44
71
|
Add to `~/.codex/config.toml`, which covers the CLI, the app and the IDE extension together:
|
|
@@ -46,16 +73,60 @@ Add to `~/.codex/config.toml`, which covers the CLI, the app and the IDE extensi
|
|
|
46
73
|
```toml
|
|
47
74
|
[mcp_servers.instantclips]
|
|
48
75
|
url = "https://app.instantclips.ai/mcp"
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
Then run `codex mcp login instantclips` to sign in.
|
|
79
|
+
|
|
80
|
+
### Cursor and VS Code
|
|
81
|
+
|
|
82
|
+
One-click install buttons are on the [setup page](https://app.instantclips.ai/mcp). They open
|
|
83
|
+
the app, add InstantClips, and sign you in on first use.
|
|
84
|
+
|
|
85
|
+
### Claude app and ChatGPT
|
|
86
|
+
|
|
87
|
+
Claude app: add a custom connector with this address and sign in when it asks. ChatGPT on the
|
|
88
|
+
web: turn on Developer mode under Settings, Apps, Advanced, then add the address as a connector;
|
|
89
|
+
on a Business or Enterprise workspace an admin publishes it as an app for everyone instead. The
|
|
90
|
+
ChatGPT desktop app takes the same address under Settings, MCP servers, and shares it with Codex.
|
|
91
|
+
|
|
92
|
+
### Any other MCP client or agent
|
|
93
|
+
|
|
94
|
+
OpenClaw, Hermes, or an agent you wrote yourself: point it at the address over Streamable HTTP.
|
|
95
|
+
The server announces its sign-in flow the standard way, so a client that follows the spec needs
|
|
96
|
+
nothing else. Anything that cannot open a sign-in page uses a token instead, below.
|
|
97
|
+
|
|
98
|
+
### No browser? Use an access token
|
|
99
|
+
|
|
100
|
+
Scripts, CI jobs and agents that cannot open a sign-in page authenticate with a long-lived token
|
|
101
|
+
instead. Mint one at
|
|
102
|
+
**[app.instantclips.ai/settings#ai-access](https://app.instantclips.ai/settings#ai-access)**. It
|
|
103
|
+
gives full access to your account, so keep it out of anything you commit.
|
|
104
|
+
|
|
105
|
+
With a token, the same clients look like this:
|
|
106
|
+
|
|
107
|
+
```bash
|
|
108
|
+
# Claude Code
|
|
109
|
+
claude mcp add --transport http instantclips https://app.instantclips.ai/mcp --header "Authorization: Bearer YOUR_TOKEN"
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
```toml
|
|
113
|
+
# Codex, in ~/.codex/config.toml
|
|
114
|
+
[mcp_servers.instantclips]
|
|
115
|
+
url = "https://app.instantclips.ai/mcp"
|
|
49
116
|
http_headers = { Authorization = "Bearer YOUR_TOKEN" }
|
|
50
117
|
```
|
|
51
118
|
|
|
52
|
-
To keep the token out of the file, swap the header for `bearer_token_env_var = "INSTANTCLIPS_TOKEN"`
|
|
53
|
-
and export it in your shell instead.
|
|
119
|
+
To keep the token out of the Codex file, swap the header for `bearer_token_env_var = "INSTANTCLIPS_TOKEN"`
|
|
120
|
+
and export it in your shell instead. The Claude app takes a token as a request header on the
|
|
121
|
+
connector (request headers are still in beta); ChatGPT connectors sign in through the sign-in flow
|
|
122
|
+
rather than a pasted key. Any other client sends an `Authorization: Bearer` header. Nothing on the
|
|
123
|
+
wire is InstantClips-specific.
|
|
54
124
|
|
|
55
|
-
|
|
125
|
+
#### Stdio-only clients and headless runners
|
|
56
126
|
|
|
57
|
-
The `instantclips-mcp` npm package is a thin stdio-to-HTTPS adapter. It
|
|
58
|
-
|
|
127
|
+
The `instantclips-mcp` npm package is a thin stdio-to-HTTPS adapter. It serves initialization and
|
|
128
|
+
tool discovery locally for a fast, credential-free cold start, then reads the token from the
|
|
129
|
+
environment and sends tool calls to InstantClips:
|
|
59
130
|
|
|
60
131
|
```json
|
|
61
132
|
{
|
|
@@ -78,25 +149,18 @@ INSTANTCLIPS_TOKEN="your-token" npx -y instantclips-mcp --check --json
|
|
|
78
149
|
```
|
|
79
150
|
|
|
80
151
|
The token is accepted only through `INSTANTCLIPS_TOKEN`, never as a command-line argument, so it
|
|
81
|
-
does not appear in the process list.
|
|
152
|
+
does not appear in the process list. It is required for tool calls, but not for `initialize`,
|
|
153
|
+
`ping`, or `tools/list`. Node.js 20 or newer is required.
|
|
82
154
|
|
|
83
|
-
|
|
155
|
+
## Starter prompts
|
|
84
156
|
|
|
85
|
-
|
|
86
|
-
They fill in your token once you have minted one.
|
|
87
|
-
|
|
88
|
-
### Claude app and ChatGPT
|
|
157
|
+
Five to begin with. Swap in a link or a product name.
|
|
89
158
|
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
### Anything else
|
|
96
|
-
|
|
97
|
-
OpenClaw, Hermes, or an agent you wrote yourself: point it at the URL over streamable HTTP with an
|
|
98
|
-
`Authorization: Bearer` header. Nothing on the wire is InstantClips-specific, so a client that
|
|
99
|
-
speaks MCP already speaks this.
|
|
159
|
+
1. "Make a video ad for this product: [URL]"
|
|
160
|
+
2. "Import every product on this collection page and draft plans for all of them. Don't generate anything yet."
|
|
161
|
+
3. "Show me the plan for [product] and rewrite the hook to lead with the price."
|
|
162
|
+
4. "Make three videos for [URL] with three different hooks, so I can test them."
|
|
163
|
+
5. "Which of my brands is this product for? Then make the video."
|
|
100
164
|
|
|
101
165
|
## Tools
|
|
102
166
|
|
|
@@ -104,32 +168,41 @@ The workflow, in order:
|
|
|
104
168
|
|
|
105
169
|
1. **Import** — `import_product_from_url` for a store page, or `create_product_from_images` when
|
|
106
170
|
there is no page to read.
|
|
107
|
-
2. **Wait for the draft** — poll `get_product` until the import and the
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
171
|
+
2. **Wait for the draft** — poll `get_product` until the import and the plan have finished.
|
|
172
|
+
3. **Read and steer it** — the plan comes back as text: hook, content focus, format, execution
|
|
173
|
+
guidelines, restrictions. `update_video_direction` edits it, `redraft_video_direction` asks
|
|
174
|
+
for another angle.
|
|
175
|
+
4. **Generate** — `generate_video`, passing `expected_credit_cost`: the cost the user was told, as
|
|
176
|
+
`get_product` reported it. A mismatch is refused without charging.
|
|
113
177
|
5. **Collect** — poll `get_video` for the finished MP4 and a public share link.
|
|
114
178
|
|
|
179
|
+
Another video for the same product is the same flow on that product: editing or redrafting opens the
|
|
180
|
+
next video's draft, and `generate_video` with no draft renders another take of the last plan. A
|
|
181
|
+
generated video itself cannot be changed. Every `get_product` response carries `next_step`: what to
|
|
182
|
+
do now.
|
|
183
|
+
|
|
115
184
|
Brands work the same way: `list_brands`, `create_brand`, `set_product_brand`. Every video is
|
|
116
185
|
drafted in a brand's voice, so an import whose storefront matches no existing brand stops and asks
|
|
117
186
|
rather than guessing.
|
|
118
187
|
|
|
119
|
-
Each tool's exact parameters are published by the server
|
|
120
|
-
|
|
121
|
-
|
|
188
|
+
Each tool's exact parameters are published by the hosted server. The generated
|
|
189
|
+
[`manifest/instantclips-mcp.json`](manifest/instantclips-mcp.json) snapshot lets stdio clients and
|
|
190
|
+
registries inspect those same schemas without a credential. Maintainers refresh it with
|
|
191
|
+
`INSTANTCLIPS_TOKEN="..." npm run sync:manifest`; `npm run check:manifest` fails when the committed
|
|
192
|
+
snapshot differs from the live server. Run `python example.py tools` below when you specifically
|
|
193
|
+
want to print the live schemas over HTTP.
|
|
122
194
|
|
|
123
195
|
## Credits
|
|
124
196
|
|
|
125
|
-
Importing a product, drafting the
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
[pricing](https://instantclips.ai/#pricing).
|
|
197
|
+
Importing a product, drafting the plan and editing it are all **free**. `generate_video` is the
|
|
198
|
+
only tool that spends credits, and it requires your explicit go-ahead — the tools report the cost
|
|
199
|
+
first, and `generate_video` takes that number back as `expected_credit_cost`, refusing a launch whose
|
|
200
|
+
cost has changed. An agent cannot quietly run up a bill. See [pricing](https://instantclips.ai/#pricing).
|
|
129
201
|
|
|
130
202
|
## example.py
|
|
131
203
|
|
|
132
|
-
A dependency-free MCP client — Python 3.9+, standard library only, no `pip install`.
|
|
204
|
+
A dependency-free MCP client — Python 3.9+, standard library only, no `pip install`. It
|
|
205
|
+
authenticates with a token, since a script has no browser to sign in with.
|
|
133
206
|
|
|
134
207
|
```bash
|
|
135
208
|
export INSTANTCLIPS_TOKEN="your-token"
|
|
@@ -143,8 +216,9 @@ is what you need before scripting the workflow above.
|
|
|
143
216
|
|
|
144
217
|
## Links
|
|
145
218
|
|
|
146
|
-
- [instantclips.ai/automate](https://instantclips.ai/automate/) — what the automation is
|
|
147
|
-
|
|
219
|
+
- [instantclips.ai/automate](https://instantclips.ai/automate/) — what the automation is for: a
|
|
220
|
+
real result made from a store page, starter prompts, the tools in order, and the rules. It does
|
|
221
|
+
not repeat the setup; this file and the app's setup page are where that lives.
|
|
148
222
|
- [app.instantclips.ai/llms.txt](https://app.instantclips.ai/llms.txt) — machine-readable
|
|
149
223
|
description of the product and the tool sequence
|
|
150
224
|
- [Terms](https://app.instantclips.ai/terms) · [Privacy](https://app.instantclips.ai/privacy)
|
|
@@ -170,8 +244,11 @@ of the repository — `.gitignore` covers `*.pem`, and a committed private key i
|
|
|
170
244
|
|
|
171
245
|
`glama.json` is the separate, Glama-specific file that claims the listing there. A server under an
|
|
172
246
|
organisation rather than a personal account can only be claimed with that file present.
|
|
173
|
-
It carries ownership only
|
|
174
|
-
`node bin/instantclips-mcp.js`, and
|
|
247
|
+
It carries ownership only. In Glama's Dockerfile form, use build steps
|
|
248
|
+
`["npm install --omit=dev"]`, CMD arguments `["node", "./bin/instantclips-mcp.js"]`, and any dummy
|
|
249
|
+
value for the required `INSTANTCLIPS_TOKEN` placeholder. Glama's initialization and tool-quality
|
|
250
|
+
checks use the bundled manifest and never transmit that placeholder upstream. Do not put a real
|
|
251
|
+
account token into a third-party build sandbox.
|
|
175
252
|
|
|
176
253
|
## License
|
|
177
254
|
|