Introducción a MCP
El servidor MCP de StickyPrompts ofrece a clientes de IA como Claude Code, Cursor y VS Code un conjunto de herramientas para tus prompts, agentes, bases de conocimiento, integraciones y contenido multimedia, con autenticación mediante una clave de API normal.
El Model Context Protocol (MCP) es un estándar abierto que permite a un cliente de IA llamar a herramientas de un servidor remoto. El servidor MCP de StickyPrompts expone tu espacio de trabajo como herramientas: buscar en una base de conocimiento, ejecutar un prompt guardado, consultar un contacto del CRM, lanzar consultas a una base de datos conectada, enviar un correo electrónico o generar una imagen. Conéctalo una vez y tu asistente podrá hacer trabajo real con los mismos modelos, datos y reglas que tu equipo usa en la aplicación.
Claude Code, Cursor, VS Code, MCP Inspector o curl directamente.
Referencia de herramientasCada herramienta, sus argumentos y el permiso que necesita.
PermisosElige qué herramientas puede ver una clave.
De un vistazo
| Endpoint | https://api.stickyprompts.com/mcp/ |
| Transporte | Solo Streamable HTTP. No hay un endpoint /sse heredado ni un servidor stdio. |
| Autenticación | Authorization: Bearer STICKY-API-... (la misma clave de API que en la API REST) |
| Capacidades | Solo herramientas. No hay recursos, plantillas de recursos ni prompts de MCP. |
| Nombre del servidor | StickyPrompts, versión 1.0.0 (se indica en initialize) |
Usa la barra final
El endpoint es /mcp/, con barra final. Una petición a /mcp se redirige a /mcp/ (301 para GET, 307 para POST y DELETE). La mayoría de los clientes siguen la redirección, pero configura directamente https://api.stickyprompts.com/mcp/ para ahorrarte ese viaje de ida y vuelta y para que funcione también con los clientes que no siguen redirecciones.
Autenticación
Envía tu clave de API en el header Authorization, exactamente igual que en REST. Las claves se crean en Settings > API keys; consulta Claves de API y autenticación.
| Situación | Respuesta HTTP |
|---|---|
No hay header Authorization, o no contiene un token Bearer STICKY-API-... | 401 {"error":"unauthorized"} |
| La clave es desconocida, el secreto es incorrecto o el propietario de la clave ya no existe | 401 {"error":"Invalid API key"} |
| La cuenta del propietario de la clave no está activa | 403 {"error":"user is not verified"} |
| La petición procede de una región en la que el servicio no está disponible | 403 {"error":"access from your region is not supported"} |
No se necesita ningún permiso concreto para conectarse. Cualquier clave válida de una cuenta activa puede abrir una sesión; lo que puede hacer después se decide herramienta por herramienta.
La clave actúa como el usuario que la creó: el mismo espacio de trabajo, los mismos proyectos y los mismos recursos compartidos, restringidos por los permisos de la clave. Todo lo que creas mediante MCP (conversaciones, proyectos, archivos generados) es tuyo y aparece en la aplicación.
Sesiones
El servidor usa sesiones estándar de Streamable HTTP. Los clientes MCP se encargan de todo esto automáticamente; solo te afecta si hablas el protocolo a mano.
POST /mcp/con una peticióninitializedevuelve un id de sesión en el header de respuestaMcp-Session-Id(con el formatomcp-session-<uuid>).- Cada
POSTposterior debe enviar ese headerMcp-Session-Id. Si falta o tiene un formato incorrecto, la respuesta es404 Invalid session ID. - Las sesiones no guardan estado en el servidor: solo se comprueba el formato del id. Sobreviven a los reinicios del servidor, así que no tienes que volver a conectarte después de un despliegue.
POSTrequiereContent-Type: application/json. En la práctica, las respuestas son JSON, porque ninguna herramienta envía notificaciones de progreso.GET /mcp/abre un flujo opcional de notificaciones, que permanece casi siempre inactivo.DELETE /mcp/se acepta y no hace nada.
Los permisos deciden qué herramientas ves
Cada herramienta necesita exactamente un permiso. El servidor filtra tanto tools/list como tools/call según los permisos de la clave:
- Una clave solo ve las herramientas para las que tiene permiso. Una clave sin ningún permiso relevante para MCP se conecta sin problemas y ve una lista de herramientas vacía.
- Llamar a una herramienta que la clave no puede usar devuelve el error JSON-RPC
-32602contool '<name>' not found, exactamente lo mismo que al llamar a una herramienta que no existe.
Por eso, si tu cliente dice que falta una herramienta de StickyPrompts, revisa primero los permisos de la clave. Los permisos con la insignia MCP en la referencia de permisos son los que desbloquean herramientas, y cada entrada de la referencia de herramientas indica su permiso.
Aquí el principio de mínimo privilegio importa más de lo habitual: un cliente de IA usará todas las herramientas que pueda ver. Dale a la clave de un asistente solo las herramientas que estés dispuesto a que llame, y deja fuera las herramientas de escritura como send_email o run_database_query a menos que las necesites.
Resultados y errores
Cada herramienta devuelve un único elemento de contenido de texto cuyo texto es un documento JSON. Analiza ese texto como JSON. No hay structuredContent ni esquema de salida; la estructura de cada resultado está documentada en la referencia de herramientas.
{
"content": [
{ "type": "text", "text": "{\"conversation_id\": 5120, \"text\": \"Here are three options ...\"}" }
]
}
Los errores llegan de una de estas dos formas:
| Tipo | Aspecto | Se usa para |
|---|---|---|
| Error de herramienta | Un resultado con isError: true y un mensaje simple, como conversation not found | Muchas búsquedas del tipo «no existe o no tienes acceso» |
Error JSON-RPC -32603 | Una llamada fallida con el mensaje del servidor, como required argument "prompt" not found | Argumentos obligatorios que faltan, la mayoría de los fallos de validación y los fallos de proveedores e integraciones |
Los esquemas de entrada se anuncian a tu cliente, pero el servidor no los valida, así que un tipo de argumento incorrecto aparece como uno de los errores anteriores y no como un error de esquema.
Herramientas de larga duración
La mayoría de las herramientas son síncronas: responden cuando el trabajo ha terminado. Unas pocas responden de inmediato y hay que consultar su estado periódicamente.
| Empieza con | Devuelve | Consulta el estado con | Termina cuando |
|---|---|---|---|
generate_video | {"id", "status"} | get_video_generation_status | status es done o error |
start_spreadsheet_processing | {"task_id"} | get_spreadsheet_processing_task | status es done o error |
run_workflow_task | {"execution_id", "status"} | No hay herramienta de estado en MCP | Comprueba después total_run_count y success_rate con get_workflow_task |
Un vídeo puede tardar varios minutos; la propia descripción de la herramienta pide al modelo que espere entre 15 y 60 segundos entre consultas. generate_speech, generate_music y transcribe son síncronas: no responden hasta que el audio o la transcripción están listos. Configura en tu cliente un tiempo de espera generoso para estas herramientas y para send_message con un modelo lento.
Créditos y reglas de acceso
- Las herramientas que hacen trabajo real (
send_message,run_prompt,custom_run, las herramientas multimedia,search_knowledge_base, el procesamiento de hojas de cálculo y las ejecuciones de flujos de trabajo) se contabilizan en la cuenta del propietario de la clave, igual que las mismas acciones en la aplicación. - Un flujo de trabajo iniciado con
run_workflow_taskfalla conquota exceededsi el propietario se ha quedado sin cuota. - Las reglas de acceso a modelos y los filtros de residencia de datos se aplican al resolver el modelo. Si tu espacio de trabajo no permite un modelo, la llamada falla.
list_ai_modelsya excluye los modelos que no puedes usar.
Cómo elegir un modelo
run_prompt, custom_run y start_spreadsheet_processing necesitan un ai_model_id obtenido de list_ai_models. No existe un valor "auto". send_message acepta un ai_model_id opcional, pero pásalo siempre al iniciar una conversación nueva: sin él, la llamada falla actualmente con no AI model is selected, try reselecting model. Las herramientas multimedia no aceptan ningún argumento de modelo.
Lo que no hace el servidor MCP
- No sube archivos. Trae archivos de Google Drive con
import_storage_fileso súbelos mediante la API REST. - No ofrece enlaces de descarga para archivos arbitrarios.
list_filesyget_filedevuelven solo el id, el nombre y el tipo. Los resultados multimedia incluyen unpathal archivo almacenado. - No tiene recursos ni prompts de MCP. A tus prompts guardados se accede mediante las herramientas
list_prompts,get_promptyrun_prompt. - No admite OAuth. Los clientes que solo pueden añadir servidores remotos mediante un inicio de sesión OAuth no pueden conectarse con una clave de API.