Gilbert
Busca tus reuniones de Gilbert, explora tus carpetas y consulta las transcripciones y resúmenes con tu asistente de IA.
Servidor MCP alojado
npx add-mcp 'https://gilbert-assistant.ovh/api/mcp'Se instala en Claude Code, Codex, Cursor y más
Documentación
Quickstart
Primer llamado en 30 segundos.
Obtén una clave API (scope meetings:read) de tu administrador de Gilbert y elige tu lenguaje.
cURL · terminal.sh
# Lister les 50 dernières réunions terminées
curl -s "https://gilbert-assistant.ovh/api/v1/meetings?status=completed&per_page=50" \
-H "Authorization: Bearer glbrt_live_XXXXXXXXXXXXXXXXXXXXXXXX"
Python · example.py
import requests
API_KEY = "glbrt_live_XXXXXXXXXXXXXXXXXXXXXXXX"
headers = {"Authorization": f"Bearer {API_KEY}"}
r = requests.get(
"https://gilbert-assistant.ovh/api/v1/meetings",
headers=headers,
params={"status": "completed", "per_page": 50},
)
for m in r.json()["data"]:
print(m["title"], m.get("transcript_text", "")[:200])
JavaScript / Node · example.mjs
const API_KEY = "glbrt_live_XXXXXXXXXXXXXXXXXXXXXXXX";
const headers = { Authorization: \`Bearer ${API_KEY}\` };
const res = await fetch(
"https://gilbert-assistant.ovh/api/v1/meetings?status=completed",
{ headers },
);
const { data } = await res.json();
data.forEach(m => console.log(m.title));
PHP · example.php
$apiKey = "glbrt_live_XXXXXXXXXXXXXXXXXXXXXXXX";
$ch = curl_init("https://gilbert-assistant.ovh/api/v1/meetings");
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ["Authorization: Bearer {$apiKey}"],
]);
$response = json_decode(curl_exec($ch), true);
foreach ($response["data"] as $m) {
echo $m["title"] . "\n";
}
Go · main.go
package main
import (
"encoding/json"
"net/http"
)
func main() {
req, _ := http.NewRequest("GET",
"https://gilbert-assistant.ovh/api/v1/meetings", nil)
req.Header.Set("Authorization", "Bearer glbrt_live_...")
res, _ := http.DefaultClient.Do(req)
var data map[string]interface{}
json.NewDecoder(res.Body).Decode(&data)
}
¿Sin SDK oficial? Normal. La API sigue estrictamente OpenAPI 3. Herramientas como Stainless o openapi-generator generan un SDK de Python, TypeScript, Go, Java, Swift… en 5 minutos a partir de nuestra spec.
No necesitas ser desarrollador para empezar. Zapier o Make conectan Gilbert a Slack, Notion o tu CRM con arrastrar y soltar — la API está ahí cuando quieras ir más lejos.
API REST v1
El núcleo de la plataforma.
Una API REST estándar, documentada mediante OpenAPI 3. Autenticación por clave API Bearer, respuestas JSON, paginación, filtros, límite de tasa por tier. Toda la app de Gilbert (web y móvil) usa esta API.
URL base
Un único endpoint raíz — todas las solicitudes parten de esta URL:
base_url
https://gilbert-assistant.ovh/api/v1
Autenticación
Header Authorization Bearer — cada solicitud lleva tu clave API:
Authorization
Authorization: Bearer glbrt_live_XXXX
Niveles de acceso — scopes
Cada clave API se emite con uno o más scopes (permisos). Los endpoints verifican el scope antes de aceptar la solicitud — una clave meetings:read no puede eliminar reuniones, incluso si el usuario es admin.
| Scope | Qué permite | Tier requerido |
|---|---|---|
meetings:read | Leer reuniones, transcripciones, resúmenes. Buscar. | Free+ |
meetings:write | Editar título, descripción, carpeta, nombres de los oradores. | Pro+ |
meetings:upload | Subir un archivo de audio para transcripción desde la API. | Pro+ |
meetings:delete | Eliminar reuniones. | Enterprise |
webhooks:manage | Crear, modificar, eliminar webhooks. | Free+ (cuota por tier) |
admin:read | Lectura de metadatos de la organización (miembros, cuotas). | Enterprise |
Endpoints principales
Lista no exhaustiva. Para la referencia completa (parámetros, esquemas de respuesta, códigos de error), consulta la documentación OpenAPI interactiva.
Reuniones
Gestión de grabaciones y metadatos.
| Endpoint | Descripción | Scope requerido |
|---|---|---|
GET /meetings | Lista paginada con filtros (estado, fecha, carpeta). | meetings:read |
GET /meetings/{id} | Detalle completo de una reunión. | meetings:read |
POST /meetings/upload | Sube un archivo de audio (mp3/m4a/wav/webm) para transcripción. | meetings:upload |
PATCH /meetings/{id} | Edita título, descripción, carpeta, etiquetas. | meetings:write |
PUT /meetings/{id}/speakers | Renombra los oradores (Speaker 1 → Jean Dupont). | meetings:write |
DELETE /meetings/{id} | Elimina definitivamente una reunión. | meetings:delete |
Contenido
Transcripciones, resúmenes, búsqueda.
| Endpoint | Descripción | Scope requerido |
|---|---|---|
GET /meetings/{id}/transcript | Transcripción solo texto, formateada con oradores prefijados. | meetings:read |
GET /meetings/{id}/summary | Resumen markdown estructurado (decisiones, elementos de acción, participantes). | meetings:read |
GET /search | Búsqueda de texto completo con fragmentos resaltados (PostgreSQL FTS). | meetings:read |
Organización
Carpetas, comparticiones, miembros.
| Endpoint | Descripción | Scope requerido |
|---|---|---|
GET /folders | Lista tus carpetas y las compartidas contigo. | meetings:read |
POST /meetings/{id}/share | Comparte una reunión con otro miembro. | meetings:write |
GET /organization/members | Lista de miembros de la organización (solo admin). | admin:read |
Webhooks
Notificaciones en tiempo real.
| Endpoint | Descripción | Scope requerido |
|---|---|---|
GET /webhooks | Lista tus webhooks activos. | webhooks:manage |
POST /webhooks | Crea un webhook (URL + eventos + secreto). | webhooks:manage |
DELETE /webhooks/{id} | Elimina un webhook. | webhooks:manage |
Lista exhaustiva y esquemas JSON: la documentación OpenAPI lista todos los endpoints, parámetros de solicitud, ejemplos de respuesta y códigos de error. Puedes probar directamente desde el navegador (botón «Try it out»).
Webhooks
El push en tiempo real.
A diferencia de la API REST donde vas a buscar los datos, un webhook te los empuja en cuanto ocurre un evento. Ideal para activar Slack, Zapier o tu SI interno sin polling.
Cómo funciona
Proporcionas a Gilbert una URL https://votre-app.fr/webhooks/gilbert y eliges los eventos a escuchar. En cuanto ocurre un evento, Gilbert envía un POST JSON a tu URL.
meeting.completed— transcripción listameeting.failed— error de transcripciónmeeting.updated— edición manualshare.received— reunión compartida contigo
Seguridad
Cada POST está firmado con HMAC-SHA256. El secreto se genera al crear el webhook y se muestra una sola vez. Verifica la firma mediante el header X-Gilbert-Signature.
- Reintento automático con backoff (5s, 30s, 2 min, 10 min)
- Desactivación después de 10 fallos consecutivos
- Registros de entregas visibles en el admin
Ejemplo de payload — meeting.completed · POST
{
"event": "meeting.completed",
"timestamp": "2026-04-19T14:32:10Z",
"data": {
"meeting_id": "mtg_01H...",
"title": "Point commercial Acme",
"duration_seconds": 1847,
"participants_count": 4,
"transcript_available": true,
"summary_available": true,
"url": "https://gilbert-assistant.ovh/meetings/mtg_01H..."
}
}
Conectores IA
Model Context Protocol (MCP).
Sobre la API REST, Gilbert expone un servidor Model Context Protocol que hace que tus reuniones sean consultables en lenguaje natural desde Claude, ChatGPT (próximamente), Cursor y Continue. Tres maneras de conectarte, según tu cliente IA.
Usuario final
Gilbert Connect
Conector OAuth de 1 clic para claude.ai. Sin claves que gestionar, consentimiento con UI nativa.
Desarrollador IA
MCP Hosted (HTTP)
Endpoint remoto JSON-RPC 2.0 con clave API Bearer. Claude Desktop, Cursor, Continue.
Instalación local
gilbert-mcp (stdio)
Paquete npm publicado en el registro MCP. Ejecución local mediante npx.
Gilbert Connect — OAuth de 1 clic
Gilbert Connect
Para usuarios de claude.ai
URL del conector MCP para pegar en claude.ai:
URL
https://gilbert-assistant.ovh/api/mcp
Claude.ai detecta el flujo OAuth mediante /.well-known/oauth-protected-resource. El usuario se conecta a Gilbert mediante una ventana emergente, autoriza, y listo — sin claves que copiar y pegar.
Próximos conectores previstos
ChatGPT custom GPT · Cursor native auth · Continue MCP. Mismo endpoint OAuth para todos.
- claude.ai → Configuración → Connectors → Add custom connector
- Pega la URL
https://gilbert-assistant.ovh/api/mcp - Autoriza el acceso. Una clave API OAuth MCP aparece en tu admin.
- Haz tus preguntas — las herramientas aparecen en la conversación.
MCP Hosted — endpoint HTTP
MCP Hosted
Para clientes MCP HTTP
Endpoint:
URL
https://gilbert-assistant.ovh/api/mcp
Envía directamente tus solicitudes JSON-RPC. Sin proceso local, sin Node.
- → Claude Desktop (config «url»)
- → Cursor / Continue (transporte HTTP)
- → MCP Inspector (depuración oficial)
- → curl / fetch / httpx
claude_desktop_config.json
{
"mcpServers": {
"gilbert": {
"url": "https://gilbert-assistant.ovh/api/mcp",
"headers": {
"Authorization": "Bearer glbrt_live_VOTRE_CLE"
}
}
}
}
gilbert-mcp — paquete npm local
gilbert-mcp
Instalación local stdio
npm · gilbert-mcp GitHub MCP Registry MIT · v1.0.2
El binario gilbert-mcp es un servidor MCP stdio, no una CLI. Lo lanza el cliente IA (Claude, Cursor) y se comunica mediante stdin/stdout en JSON-RPC.
Solo paquete npm. pip install gilbert-mcp no funciona. Los desarrolladores de Python usan directamente la API REST v1.
claude_desktop_config.json
{
"mcpServers": {
"gilbert": {
"command": "npx",
"args": ["-y", "gilbert-mcp"],
"env": {
"GILBERT_API_KEY": "glbrt_live_VOTRE_CLE"
}
}
}
}
Las 5 herramientas expuestas
- → list_meetings · get_meeting · get_transcript
- → get_summary · search_meetings
Tarifas API
Tiers y cuotas.
Cada clave API está vinculada a un tier que determina sus cuotas y las funcionalidades accesibles.
| Funcionalidad | Free | Pro | Enterprise |
|---|---|---|---|
| Solicitudes / minuto | 30 | 60 | 300 |
| Solicitudes / día | 1 000 | 5 000 | 50 000 |
| Lectura de meetings / transcripts / summaries | ✓ | ✓ | ✓ |
| Búsqueda de texto completo | ✓ | ✓ | ✓ |
| Conectores MCP (Connect / Hosted / Local) | ✓ | ✓ | ✓ |
| Webhooks | 1 máx. | 5 máx. | Ilimitado |
| Subida de audio mediante API | — | 600 min/día · 500 MB/archivo | 10 000 min/día · 2 GB/archivo |
| Edición (título, carpeta, oradores) | — | ✓ | ✓ |
| Eliminación de reuniones | — | — | ✓ |
| SLA y soporte prioritario | — | — | ✓ |