instantclips-mcp 1.2.0 → 1.4.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 -47
- package/README.md +134 -45
- package/README.zh-CN.md +117 -41
- package/bin/instantclips-mcp.js +153 -1
- package/manifest/instantclips-mcp.json +226 -60
- package/package.json +1 -1
package/README.es.md
CHANGED
|
@@ -2,11 +2,30 @@
|
|
|
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
|
|
@@ -17,33 +36,41 @@ sigue siendo la fuente de verdad; la implementación del producto no se duplica
|
|
|
17
36
|
|
|
18
37
|
## Endpoint
|
|
19
38
|
|
|
20
|
-
| |
|
|
21
|
-
| ---------- |
|
|
22
|
-
| Endpoint | `https://app.instantclips.ai/mcp`
|
|
23
|
-
| Transporte | Streamable HTTP, sin estado
|
|
24
|
-
| Método | `POST`, JSON-RPC 2.0
|
|
25
|
-
| 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.
|
|
26
50
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
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.
|
|
31
54
|
|
|
32
|
-
Al abrir el endpoint en un navegador
|
|
33
|
-
|
|
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.
|
|
34
58
|
|
|
35
59
|
## Instalación
|
|
36
60
|
|
|
37
|
-
Conéctate directamente al endpoint alojado siempre que tu cliente admita Streamable HTTP
|
|
38
|
-
|
|
39
|
-
|
|
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.
|
|
40
65
|
|
|
41
66
|
### Claude Code
|
|
42
67
|
|
|
43
68
|
```bash
|
|
44
|
-
claude mcp add --transport http instantclips https://app.instantclips.ai/mcp
|
|
69
|
+
claude mcp add --transport http instantclips https://app.instantclips.ai/mcp
|
|
45
70
|
```
|
|
46
71
|
|
|
72
|
+
Después ejecuta `/mcp` dentro de Claude Code y elige InstantClips para iniciar sesión.
|
|
73
|
+
|
|
47
74
|
### Codex
|
|
48
75
|
|
|
49
76
|
Añade lo siguiente a `~/.codex/config.toml`; la configuración se aplica a la CLI, la aplicación y
|
|
@@ -52,13 +79,59 @@ la extensión del IDE:
|
|
|
52
79
|
```toml
|
|
53
80
|
[mcp_servers.instantclips]
|
|
54
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"
|
|
55
124
|
http_headers = { Authorization = "Bearer YOUR_TOKEN" }
|
|
56
125
|
```
|
|
57
126
|
|
|
58
|
-
Para no guardar el token en el archivo, sustituye el encabezado por
|
|
59
|
-
`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.
|
|
60
133
|
|
|
61
|
-
|
|
134
|
+
#### Clientes que solo admiten stdio y procesos sin interfaz
|
|
62
135
|
|
|
63
136
|
El paquete npm `instantclips-mcp` es un adaptador ligero de stdio a HTTPS. Sirve localmente la
|
|
64
137
|
inicialización y el descubrimiento de herramientas para arrancar rápido y sin credenciales; después
|
|
@@ -89,24 +162,23 @@ El token solo se acepta mediante `INSTANTCLIPS_TOKEN`, nunca como argumento de l
|
|
|
89
162
|
por lo que no aparece en la lista de procesos. Es obligatorio para llamar a una herramienta, pero
|
|
90
163
|
no para `initialize`, `ping` ni `tools/list`. Se requiere Node.js 20 o posterior.
|
|
91
164
|
|
|
92
|
-
|
|
165
|
+
Fotos en este equipo: el adaptador puede subirlas por sí mismo, así que se puede hacer un vídeo
|
|
166
|
+
con archivos que nunca salieron de tu portátil. A través del adaptador, `create_product_from_images`
|
|
167
|
+
acepta `image_paths` (rutas a los archivos, hasta 9, de 8 MB cada uno) en lugar de `image_urls`, y
|
|
168
|
+
`update_product` acepta `add_image_paths`. Los archivos se empaquetan y se envían directamente a
|
|
169
|
+
InstantClips como fotos del producto; no se descarga nada de ningún sitio. Arrastra los archivos a
|
|
170
|
+
un cliente que le pase sus rutas al asistente (Claude Code, Cursor, VS Code, agentes de terminal) y
|
|
171
|
+
di qué quieres crear.
|
|
93
172
|
|
|
94
|
-
|
|
95
|
-
instalación de un clic. Una vez generado el token, los botones lo introducen por ti.
|
|
173
|
+
## Instrucciones para empezar
|
|
96
174
|
|
|
97
|
-
|
|
175
|
+
Cinco para arrancar. Sustituye el enlace o el nombre del producto.
|
|
98
176
|
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
### Cualquier otro cliente
|
|
106
|
-
|
|
107
|
-
OpenClaw, Hermes o un agente que hayas creado: conéctalo a la URL mediante Streamable HTTP con un
|
|
108
|
-
encabezado `Authorization: Bearer`. El protocolo no contiene nada específico de InstantClips, por
|
|
109
|
-
lo que cualquier cliente compatible con MCP ya puede comunicarse con el servidor.
|
|
177
|
+
1. «Haz un anuncio en vídeo para este producto: [URL]»
|
|
178
|
+
2. «Importa todos los productos de esta página de colección y prepara los planes de todos. No generes nada todavía.»
|
|
179
|
+
3. «Muéstrame el plan de [producto] y reescribe el gancho para que empiece por el precio.»
|
|
180
|
+
4. «Haz tres vídeos de [URL] con tres ganchos distintos, para que pueda probarlos.»
|
|
181
|
+
5. «¿A cuál de mis marcas pertenece este producto? Luego haz el vídeo.»
|
|
110
182
|
|
|
111
183
|
## Herramientas
|
|
112
184
|
|
|
@@ -115,14 +187,20 @@ El flujo de trabajo, en orden:
|
|
|
115
187
|
1. **Importar** — usa `import_product_from_url` para una página de tienda o
|
|
116
188
|
`create_product_from_images` cuando no haya una página que leer.
|
|
117
189
|
2. **Esperar el borrador** — consulta `get_product` periódicamente hasta que terminen la importación
|
|
118
|
-
y la preparación
|
|
119
|
-
3. **Revisarlo y orientarlo** —
|
|
120
|
-
formato, pautas de ejecución y restricciones. `update_video_direction` permite
|
|
190
|
+
y la preparación del plan.
|
|
191
|
+
3. **Revisarlo y orientarlo** — el plan se devuelve como texto: gancho, enfoque del contenido,
|
|
192
|
+
formato, pautas de ejecución y restricciones. `update_video_direction` permite editarlo y
|
|
121
193
|
`redraft_video_direction` propone otro enfoque.
|
|
122
|
-
4. **
|
|
194
|
+
4. **Generar** — usa `generate_video` pasando `expected_credit_cost`: el coste que se le indicó al
|
|
195
|
+
usuario, tal como lo informó `get_product`. Si no coincide, se rechaza sin cobrar.
|
|
123
196
|
5. **Recoger el resultado** — consulta `get_video` periódicamente para obtener el MP4 terminado y
|
|
124
197
|
un enlace público para compartirlo.
|
|
125
198
|
|
|
199
|
+
Otro vídeo del mismo producto sigue el mismo flujo sobre ese producto: editar o volver a preparar el
|
|
200
|
+
plan abre el borrador del siguiente vídeo, y `generate_video` sin borrador genera otra toma del último
|
|
201
|
+
plan. Un vídeo ya generado no se puede modificar. Cada respuesta de `get_product` incluye `next_step`:
|
|
202
|
+
qué hacer a continuación.
|
|
203
|
+
|
|
126
204
|
Las marcas funcionan de la misma manera: `list_brands`, `create_brand`, `set_product_brand`. Cada
|
|
127
205
|
vídeo se prepara con la voz de una marca; por eso, si el escaparate de un producto importado no
|
|
128
206
|
coincide con ninguna marca existente, el proceso se detiene y pregunta en lugar de adivinar.
|
|
@@ -136,15 +214,17 @@ quieras imprimir específicamente los esquemas actuales mediante HTTP.
|
|
|
136
214
|
|
|
137
215
|
## Créditos
|
|
138
216
|
|
|
139
|
-
Importar un producto, preparar
|
|
140
|
-
|
|
141
|
-
|
|
217
|
+
Importar un producto, preparar el plan y editarlo es **gratis**. `generate_video` es la única
|
|
218
|
+
herramienta que consume créditos y requiere tu autorización explícita; las herramientas indican
|
|
219
|
+
antes el coste, y `generate_video` recibe ese número como `expected_credit_cost`, rechazando un
|
|
220
|
+
lanzamiento cuyo coste haya cambiado. Un agente no puede acumular cargos sin avisarte. Consulta los
|
|
142
221
|
[precios](https://instantclips.ai/#pricing).
|
|
143
222
|
|
|
144
223
|
## example.py
|
|
145
224
|
|
|
146
225
|
Un cliente MCP sin dependencias: solo requiere Python 3.9 o posterior y la biblioteca estándar; no
|
|
147
|
-
hace falta ejecutar `pip install`.
|
|
226
|
+
hace falta ejecutar `pip install`. Se autentica con un token, porque un script no tiene navegador
|
|
227
|
+
con el que iniciar sesión.
|
|
148
228
|
|
|
149
229
|
```bash
|
|
150
230
|
export INSTANTCLIPS_TOKEN="your-token"
|
|
@@ -158,9 +238,10 @@ es lo que necesitas antes de automatizar el flujo de trabajo descrito arriba.
|
|
|
158
238
|
|
|
159
239
|
## Enlaces
|
|
160
240
|
|
|
161
|
-
- [instantclips.ai/automate](https://instantclips.ai/automate/) — qué
|
|
162
|
-
|
|
163
|
-
|
|
241
|
+
- [instantclips.ai/automate](https://instantclips.ai/automate/) — para qué sirve la
|
|
242
|
+
automatización: un resultado real hecho a partir de una página de tienda, instrucciones para
|
|
243
|
+
empezar, las herramientas en orden y las reglas. No repite la configuración; esa información está
|
|
244
|
+
en este archivo y en la página de configuración de la aplicación.
|
|
164
245
|
- [app.instantclips.ai/llms.txt](https://app.instantclips.ai/llms.txt) — descripción del producto y
|
|
165
246
|
de la secuencia de herramientas en un formato legible por máquinas.
|
|
166
247
|
- [Términos](https://app.instantclips.ai/terms) · [Privacidad](https://app.instantclips.ai/privacy)
|
|
@@ -187,6 +268,20 @@ de nombres de marca `ai.instantclips`; no lo sustituyas por un nombre `io.github
|
|
|
187
268
|
firma no se guarda en el repositorio: `.gitignore` cubre `*.pem`, y una clave privada incluida en un
|
|
188
269
|
commit es una clave publicada.
|
|
189
270
|
|
|
271
|
+
Inicia sesión justo antes de publicar — el token del registro caduca en menos de una hora — y el
|
|
272
|
+
dominio se verifica por HTTP, no por DNS: `instantclips.ai/.well-known/mcp-registry-auth`, en el
|
|
273
|
+
sitio de marketing, sirve la mitad pública de esta clave (`v=MCPv1; k=ed25519; p=…`); no hay
|
|
274
|
+
registro TXT, así que `login dns` falla con "no MCP public key found".
|
|
275
|
+
|
|
276
|
+
```bash
|
|
277
|
+
mcp-publisher login http --domain instantclips.ai \
|
|
278
|
+
--private-key "$(openssl pkey -in key.pem -text -noout | awk '/priv:/{f=1;next} /pub:/{f=0} f' | tr -d ' :\n')"
|
|
279
|
+
mcp-publisher publish
|
|
280
|
+
```
|
|
281
|
+
|
|
282
|
+
`test/shim.test.js` fija la versión del servidor de la instantánea y la `version` de `server.json`;
|
|
283
|
+
cada publicación actualiza ambas.
|
|
284
|
+
|
|
190
285
|
`glama.json` es el archivo independiente y específico de Glama que permite reclamar allí la ficha.
|
|
191
286
|
Un servidor perteneciente a una organización, en lugar de una cuenta personal, solo puede
|
|
192
287
|
reclamarse si ese archivo está presente.
|
package/README.md
CHANGED
|
@@ -2,10 +2,29 @@
|
|
|
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
|
|
@@ -15,31 +34,38 @@ remains the source of truth; the product implementation is not duplicated here.
|
|
|
15
34
|
|
|
16
35
|
## Endpoint
|
|
17
36
|
|
|
18
|
-
| |
|
|
19
|
-
| ---------- |
|
|
20
|
-
| Endpoint | `https://app.instantclips.ai/mcp`
|
|
21
|
-
| Transport | Streamable HTTP, stateless
|
|
22
|
-
| Method | `POST`, JSON-RPC 2.0
|
|
23
|
-
| 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 |
|
|
24
43
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
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.
|
|
28
48
|
|
|
29
|
-
|
|
30
|
-
|
|
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.
|
|
31
54
|
|
|
32
55
|
## Install
|
|
33
56
|
|
|
34
|
-
Connect to the hosted endpoint directly whenever your client supports Streamable HTTP
|
|
35
|
-
|
|
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.
|
|
36
60
|
|
|
37
61
|
### Claude Code
|
|
38
62
|
|
|
39
63
|
```bash
|
|
40
|
-
claude mcp add --transport http instantclips https://app.instantclips.ai/mcp
|
|
64
|
+
claude mcp add --transport http instantclips https://app.instantclips.ai/mcp
|
|
41
65
|
```
|
|
42
66
|
|
|
67
|
+
Then run `/mcp` inside Claude Code and choose InstantClips to sign in.
|
|
68
|
+
|
|
43
69
|
### Codex
|
|
44
70
|
|
|
45
71
|
Add to `~/.codex/config.toml`, which covers the CLI, the app and the IDE extension together:
|
|
@@ -47,13 +73,56 @@ Add to `~/.codex/config.toml`, which covers the CLI, the app and the IDE extensi
|
|
|
47
73
|
```toml
|
|
48
74
|
[mcp_servers.instantclips]
|
|
49
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"
|
|
50
116
|
http_headers = { Authorization = "Bearer YOUR_TOKEN" }
|
|
51
117
|
```
|
|
52
118
|
|
|
53
|
-
To keep the token out of the file, swap the header for `bearer_token_env_var = "INSTANTCLIPS_TOKEN"`
|
|
54
|
-
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.
|
|
55
124
|
|
|
56
|
-
|
|
125
|
+
#### Stdio-only clients and headless runners
|
|
57
126
|
|
|
58
127
|
The `instantclips-mcp` npm package is a thin stdio-to-HTTPS adapter. It serves initialization and
|
|
59
128
|
tool discovery locally for a fast, credential-free cold start, then reads the token from the
|
|
@@ -83,23 +152,22 @@ The token is accepted only through `INSTANTCLIPS_TOKEN`, never as a command-line
|
|
|
83
152
|
does not appear in the process list. It is required for tool calls, but not for `initialize`,
|
|
84
153
|
`ping`, or `tools/list`. Node.js 20 or newer is required.
|
|
85
154
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
155
|
+
Photos on this machine: the adapter can upload them itself, so a video can be made from files
|
|
156
|
+
that never left your laptop. Through the adapter, `create_product_from_images` takes `image_paths`
|
|
157
|
+
(paths to the files, up to 9, 8 MB each) in place of `image_urls`, and `update_product` takes
|
|
158
|
+
`add_image_paths`. The files are packaged and posted straight to InstantClips as the product's
|
|
159
|
+
photos — nothing is downloaded from anywhere. Drag the files into a client that hands the
|
|
160
|
+
assistant their paths (Claude Code, Cursor, VS Code, terminal agents) and say what you want made.
|
|
92
161
|
|
|
93
|
-
|
|
94
|
-
`https://app.instantclips.ai/mcp` and authenticate with the same token — a request header in
|
|
95
|
-
Claude, an API key in ChatGPT. Claude's request headers are still in beta, and ChatGPT requires
|
|
96
|
-
developer mode; availability there depends on your account and workspace policy.
|
|
162
|
+
## Starter prompts
|
|
97
163
|
|
|
98
|
-
|
|
164
|
+
Five to begin with. Swap in a link or a product name.
|
|
99
165
|
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
166
|
+
1. "Make a video ad for this product: [URL]"
|
|
167
|
+
2. "Import every product on this collection page and draft plans for all of them. Don't generate anything yet."
|
|
168
|
+
3. "Show me the plan for [product] and rewrite the hook to lead with the price."
|
|
169
|
+
4. "Make three videos for [URL] with three different hooks, so I can test them."
|
|
170
|
+
5. "Which of my brands is this product for? Then make the video."
|
|
103
171
|
|
|
104
172
|
## Tools
|
|
105
173
|
|
|
@@ -107,14 +175,19 @@ The workflow, in order:
|
|
|
107
175
|
|
|
108
176
|
1. **Import** — `import_product_from_url` for a store page, or `create_product_from_images` when
|
|
109
177
|
there is no page to read.
|
|
110
|
-
2. **Wait for the draft** — poll `get_product` until the import and the
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
178
|
+
2. **Wait for the draft** — poll `get_product` until the import and the plan have finished.
|
|
179
|
+
3. **Read and steer it** — the plan comes back as text: hook, content focus, format, execution
|
|
180
|
+
guidelines, restrictions. `update_video_direction` edits it, `redraft_video_direction` asks
|
|
181
|
+
for another angle.
|
|
182
|
+
4. **Generate** — `generate_video`, passing `expected_credit_cost`: the cost the user was told, as
|
|
183
|
+
`get_product` reported it. A mismatch is refused without charging.
|
|
116
184
|
5. **Collect** — poll `get_video` for the finished MP4 and a public share link.
|
|
117
185
|
|
|
186
|
+
Another video for the same product is the same flow on that product: editing or redrafting opens the
|
|
187
|
+
next video's draft, and `generate_video` with no draft renders another take of the last plan. A
|
|
188
|
+
generated video itself cannot be changed. Every `get_product` response carries `next_step`: what to
|
|
189
|
+
do now.
|
|
190
|
+
|
|
118
191
|
Brands work the same way: `list_brands`, `create_brand`, `set_product_brand`. Every video is
|
|
119
192
|
drafted in a brand's voice, so an import whose storefront matches no existing brand stops and asks
|
|
120
193
|
rather than guessing.
|
|
@@ -128,14 +201,15 @@ want to print the live schemas over HTTP.
|
|
|
128
201
|
|
|
129
202
|
## Credits
|
|
130
203
|
|
|
131
|
-
Importing a product, drafting the
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
[pricing](https://instantclips.ai/#pricing).
|
|
204
|
+
Importing a product, drafting the plan and editing it are all **free**. `generate_video` is the
|
|
205
|
+
only tool that spends credits, and it requires your explicit go-ahead — the tools report the cost
|
|
206
|
+
first, and `generate_video` takes that number back as `expected_credit_cost`, refusing a launch whose
|
|
207
|
+
cost has changed. An agent cannot quietly run up a bill. See [pricing](https://instantclips.ai/#pricing).
|
|
135
208
|
|
|
136
209
|
## example.py
|
|
137
210
|
|
|
138
|
-
A dependency-free MCP client — Python 3.9+, standard library only, no `pip install`.
|
|
211
|
+
A dependency-free MCP client — Python 3.9+, standard library only, no `pip install`. It
|
|
212
|
+
authenticates with a token, since a script has no browser to sign in with.
|
|
139
213
|
|
|
140
214
|
```bash
|
|
141
215
|
export INSTANTCLIPS_TOKEN="your-token"
|
|
@@ -149,8 +223,9 @@ is what you need before scripting the workflow above.
|
|
|
149
223
|
|
|
150
224
|
## Links
|
|
151
225
|
|
|
152
|
-
- [instantclips.ai/automate](https://instantclips.ai/automate/) — what the automation is
|
|
153
|
-
|
|
226
|
+
- [instantclips.ai/automate](https://instantclips.ai/automate/) — what the automation is for: a
|
|
227
|
+
real result made from a store page, starter prompts, the tools in order, and the rules. It does
|
|
228
|
+
not repeat the setup; this file and the app's setup page are where that lives.
|
|
154
229
|
- [app.instantclips.ai/llms.txt](https://app.instantclips.ai/llms.txt) — machine-readable
|
|
155
230
|
description of the product and the tool sequence
|
|
156
231
|
- [Terms](https://app.instantclips.ai/terms) · [Privacy](https://app.instantclips.ai/privacy)
|
|
@@ -174,6 +249,20 @@ Publish the npm package first, then re-publish this same registry entry with
|
|
|
174
249
|
`ai.instantclips` namespace; do not replace it with an `io.github.*` name. The signing key stays out
|
|
175
250
|
of the repository — `.gitignore` covers `*.pem`, and a committed private key is a published one.
|
|
176
251
|
|
|
252
|
+
Log in right before publishing — the registry token expires within the hour — and the domain is
|
|
253
|
+
verified over HTTP, not DNS: `instantclips.ai/.well-known/mcp-registry-auth` on the marketing site
|
|
254
|
+
serves this key's public half (`v=MCPv1; k=ed25519; p=…`), and there is no TXT record, so
|
|
255
|
+
`login dns` fails with "no MCP public key found".
|
|
256
|
+
|
|
257
|
+
```bash
|
|
258
|
+
mcp-publisher login http --domain instantclips.ai \
|
|
259
|
+
--private-key "$(openssl pkey -in key.pem -text -noout | awk '/priv:/{f=1;next} /pub:/{f=0} f' | tr -d ' :\n')"
|
|
260
|
+
mcp-publisher publish
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
`test/shim.test.js` pins the snapshot's server version and `server.json`'s `version`; a release
|
|
264
|
+
moves both.
|
|
265
|
+
|
|
177
266
|
`glama.json` is the separate, Glama-specific file that claims the listing there. A server under an
|
|
178
267
|
organisation rather than a personal account can only be claimed with that file present.
|
|
179
268
|
It carries ownership only. In Glama's Dockerfile form, use build steps
|