Grovs

Servidor MCP para gestionar enlaces profundos, análisis y configuración de aplicaciones en Grovs.io. Funciona con Claude Code, Cursor, Windsurf y cualquier cliente compatible con MCP.

Documentación

Grovs

Latest release MCP 1.0 Claude Code Cursor MIT License GitHub stars

Servidor MCP para gestionar enlaces profundos, analíticas y configuración de aplicaciones en Grovs.
Funciona con Claude Code, Cursor, Windsurf y cualquier cliente compatible con MCP.

Sitio web · Documentación · Problemas


¿Qué es Grovs?

Grovs es una plataforma de crecimiento de código abierto y centrada en la privacidad para aplicaciones móviles: una alternativa autoalojable a Branch.io y AppsFlyer. Proporciona:

  • Enlaces profundos — un enlace que dirige a los usuarios al contenido correcto en iOS, Android y web. Los enlaces profundos diferidos sobreviven al flujo de instalación para que los usuarios lleguen a la pantalla correcta en la primera apertura.
  • Atribución — atribución determinista de instalaciones y eventos de primera parte. Sin huellas digitales, sin compartir datos con redes publicitarias.
  • Analíticas de ingresos — compras dentro de la aplicación, suscripciones y eventos de ingresos personalizados vinculados a la campaña que impulsó la instalación.
  • Campañas — agrupa enlaces, realiza un seguimiento del rendimiento y compara resultados entre canales.

Alojado en la UE, SDKs de código abierto, más de 20 millones de usuarios activos diarios en producción. Consulta el repositorio backend para autoalojamiento.

¿Qué es este servidor MCP?

Este es un servidor MCP (Model Context Protocol) que permite a los asistentes de IA gestionar tu plataforma Grovs mediante lenguaje natural. Crea enlaces profundos, consulta analíticas, configura redirecciones, ejecuta campañas, todo sin salir de tu editor.

Inicio rápido

Claude Code

/plugin marketplace add grovs-io/mcp
/plugin install grovs@grovs

Instala el servidor MCP y las habilidades que enseñan a Claude a usar Grovs. En el primer uso, se abre una ventana del navegador para OAuth: no se necesitan claves API.

Cursor

Abre Configuración > MCP y añade un nuevo servidor:

{
  "mcpServers": {
    "grovs": {
      "url": "https://mcp.grovs.io/mcp"
    }
  }
}

Windsurf

Añade a ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "grovs": {
      "serverUrl": "https://mcp.grovs.io/mcp"
    }
  }
}

VS Code (GitHub Copilot)

Añade a tu .vscode/mcp.json:

{
  "servers": {
    "grovs": {
      "type": "http",
      "url": "https://mcp.grovs.io/mcp"
    }
  }
}

ChatGPT Desktop

Abre Configuración > Servidores MCP > Añadir servidor e introduce:

https://mcp.grovs.io/mcp

Autoalojado

Si estás ejecutando tu propio backend de Grovs, ejecuta el servidor MCP localmente y apunta tu cliente a él:

git clone https://github.com/grovs-io/mcp.git
cd mcp
npm install && npm run build
npm start

O con Docker:

docker build -t grovs-mcp .
docker run -p 8080:8080 grovs-mcp

Luego usa http://localhost:8080/mcp como URL del servidor en cualquiera de las configuraciones de cliente anteriores.

Todos los clientes activarán un flujo OAuth en el primer uso: se abre una ventana del navegador para autenticarte con tu cuenta de Grovs.

Configuración

VariablePredeterminadoDescripción
PORT8080Puerto del servidor
GROVS_API_URLhttps://mcp.grovs.ioURL del backend de Grovs (anular para autoalojado)
PUBLIC_URLhttp://localhost:8080URL pública de este servidor MCP (usada para devoluciones de llamada OAuth)

Copia .env.example a .env para desarrollo local.

Herramientas

HerramientaDescripción
get_statusInformación de cuenta, instancias, proyectos y dominios
get_usageMétricas de uso y estado de suscripción de una instancia
create_projectCrea una nueva instancia con proyectos de producción y prueba
create_linkCrea un enlace profundo con metadatos, etiquetas y datos personalizados
get_linkObtén detalles completos de un enlace por ruta
update_linkActualiza los metadatos, etiquetas o redirecciones de un enlace
archive_linkDesactiva un enlace (irreversible)
search_linksBusca y lista enlaces con paginación y filtros
get_analytics_overviewMétricas a nivel de proyecto: vistas, instalaciones, aperturas, ingresos
get_link_analyticsMétricas diarias por enlace
get_top_linksEnlaces con mejor rendimiento clasificados por vistas
create_campaignCrea una campaña para agrupar enlaces relacionados
list_campaignsLista campañas con métricas agregadas
archive_campaignArchiva una campaña y desactiva sus enlaces
configure_redirectsConfigura el comportamiento de redirección por plataforma (App Store, Play Store, web)
configure_sdkConfigura los ajustes del SDK de iOS/Android (ID de paquete, ID de equipo, etc.)

Arquitectura

MCP Client (Claude Code, Cursor, etc.)
    │
    │  MCP protocol over HTTP
    ▼
Express app (src/app.ts)
    │
    ├── OAuth flow (/authorize, /callback, /register)
    │
    └── MCP endpoint (/mcp)
            │
            ├── Tool registration (src/server.ts)
            │       Zod schema validation + runWithAuth error boundary
            │
            ├── Handlers (src/tools/handlers.ts)
            │       Business logic, plain functions, throw on error
            │
            ├── Formatters (src/tools/formatters.ts)
            │       Convert API JSON to human-readable text
            │
            └── API client (src/api-client.ts)
                    HTTP calls to Grovs backend

Desarrollo

npm run dev          # start with auto-reload
npm run build        # compile TypeScript
npm test             # run tests (186 tests)
npm run test:watch   # run tests in watch mode
npm run lint         # ESLint
npm run format       # Prettier

Consulta CONTRIBUTING.md para la estructura del proyecto y las pautas de PR.

SDKs

PlataformaRepositorio
iOSgrovs-io/grovs-ios
Androidgrovs-io/grovs-android
React Nativegrovs-io/grovs-react-native
Fluttergrovs-io/grovs-flutter

Licencia

MIT