Skip to main content
Glama

Google Forms MCP

Inglés | Русский

npm CI Glama License: MIT

A1 Google Forms MCP permite que una app de IA cree y gestione Google Forms en lenguaje natural. Crea una encuesta, elige sus preguntas, publícala cuando esté lista, lee las respuestas y usa notificaciones para nuevas presentaciones.

Utiliza la API de Google Forms con tu cuenta de Google. Distingue un borrador de un formulario publicado y hace explícitos los límites de la API de Formularios en lugar de asumir que tarea del formulario es posible.

  • 13 herramientas. Inspecciona la estructura y las respuestas de formularios, crea y edita formularios y preguntas, gestiona la publicación y configura watches de Pub/Sub.

  • Publica deliberadamente. Los formularios creados a través de la API inician sin publicar, así que no pueden recibir respuestas hasta que los publiques.

  • Las respuestas se conservan. La API puede leer las respuestas pero no crearlas ni editarlas; el servidor no tiene ninguna herramienta que envíe respuestas.

  • Ámbitos mínimos de Google. Usa forms.responses y forms.responses.readonly, sin acceso amplio a Drive.

Comienza con una pregunta de solo lectura:

Muéstrame las respuestas de ayer al formulario de comentarios de clientes y resume el texto de las respuestas.

Conecta el servidor · Explora casos de uso · Abre documentación técnica


Velo funcionar en un minuto

Tú: Muéstrame las preguntas y la configuración de respuestas del formulario de comentarios de clientes.

Asistente: Muestra el formulario, sus elementos, si está publicado y si acepta respuestas. No cambia nada.

Tú: Prepara una pregunta obligatoria de calificación 1–5 llamada "¿Cómo fue tu experiencia?" después de la primera pregunta.

Asistente: Muestra el formulario, la posición y la pregunta propuesta; luego pide confirmación antes de agregarla.

Tú: Confirma.

Asistente: Agrega la pregunta al formulario. No lo publica ni lo cierra salvo que lo pidas por separado.

Related MCP server: Google Workspace MCP Server

Contenidos

Inicio rápido Qué puedes pedirle que haga Cómo cambia un formulario Qué puede cambiar Cómo obtener acceso Configuración Datos, límites y trabajo en segundo plano Documentación técnica Soporte

Inicio rápido

Necesitas Node.js 20+, una cuenta de Google y credenciales OAuth de un proyecto de Google Cloud con la API de Google Forms habilitada.

  1. Prepra el acceso OAuth de Google.

  2. ag. añade el servidor a tu app de IA.

  3. Haz la pregunta de solo lectura de arriba.

En la app: abre Configuración → Complementos → Servidores MCP, selecciona Agregar servidor, luego agrega npx -y mcp-google-forms@latest con GOOGLE_FORMS_CLIENT_ID, GOOGLE_FORMS_CLIENT_SECRETO y GOOGLE_FORMS_REFRESH_TOKEN.

Desde la línea de comandos:

codex mcp add google-forms \
  --env GOOGLE_FORMS_CLIENT_ID=your_client_id \
  --env GOOGLE_FORMS_CLIENT_SECRET=your_client_secret \
  --env GOOGLE_FORMS_REFRESH_TOKEN=your_refresh_token \
  -- npx -y mcp-google-forms@latest
codex mcp list

Documentación de MCP de Codex

claude mcp add \
  --env GOOGLE_FORMS_CLIENT_ID=your_client_id \
  --env GOOGLE_FORMS_CLIENT_SECRET=your_client_secret \
  --env GOOGLE_FORMS_REFRESH_TOKEN=your_refresh_token \
  --transport stdio --scope user google-forms \
  -- npx -y mcp-google-forms@latest
claude mcp list

Documentación MCP de Claude Code

Abre Configuración → Desarrollador → Editar configuración y agrega:

{
  "mcpServers": {
    "google-forms": {
      "command": "npx",
      "args": ["-y", "mcp-google-forms@latest"],
      "env": {
        "GOOGLE_FORMS_CLIENT_ID": "your_client_id",
        "GOOGLE_FORMS_CLIENT_SECRET": "your_client_secret",
        "GOOGLE_FORMS_REFRESH_TOKEN": "your_refresh_token"
      }
    }
  }
}

Si Editar configuración no está disponible, edita ~/Library/Application Support/Claude/claude_desktop_config.json en macOS o %APPDATA%\Claude\claude_desktop_config.json en Windows.

Documentación MCP de Claude Desktop

Agrega esto a ~/.cursor/mcp.json en macOS/Linux o %USERPROFILE%\.cursor\mcp.json en Windows:

{
  "mcpServers": {
    "google-forms": {
      "command": "npx",
      "args": ["-y", "mcp-google-forms@latest"],
      "env": {
        "GOOGLE_FORMS_CLIENT_ID": "your_client_id",
        "GOOGLE_FORMS_CLIENT_SECRET": "your_client_secret",
        "GOOGLE_FORMS_REFRESH_TOKEN": "your_refresh_token"
      }
    }
  }
}

Documentación MCP de Cursor

Ejecuta MCP: Open User Configuration y agrega:

{
  "mcpServers": {
    "google-forms": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "mcp-google-forms@latest"],
      "env": {
        "GOOGLE_FORMS_CLIENT_ID": "your_client_id",
        "GOOGLE_FORMS_CLIENT_SECRET": "your_client_secret",
        "GOOGLE_FORMS_REFRESH_TOKEN": "your_refresh_token"
      }
    }
  }
}

Compruébalo con MCP: Listar Servidores MCP.

Documentación MCP de VS Code

Qué puedes pedirle que haga

Inspeccionar una encuesta y sus respuestas

  • Muéstrame la configuración de preguntas y el enlace de respuestas de esta encuesta.

  • ¿Cuántas respuestas han llegado desde el lunes? Resumen los comentarios de texto libre.

  • Muéstrame una respuesta por su ID.

Crear y preparar un formulario

  • Crea un formulario de confirmación de asistencia con nombre, preferencia de comida y fecha de llegada.

  • Agrega una pregunta obligatoria de calificación, un menú desplegable, fecha, hora, elección o texto.

  • Reordena una pregunta o actualiza un título, descripción, modo de juego o recopilación de correos electrónicos.

Publicar y conectar

  • Publica un formulario preparado y muestra su enlace de respuesta.

  • Depara de aceptar nuevas respuestas sin borrar el formulario.

  • Crea, renueva o elimina una suscripción de Cloud Pub/Sub para nuevas presentaciones.

Cómo cambia un formulario

  1. remove_form crea un formulario, que por defecto no publicadas.

  2. Las preguntas son elementos, identificadas por su posición en el formulario.

  3. Publicar hace que un formulario esté disponible para los encuestados; cerrar la recopilación de respuestas lo deja publicado pero deja y deja de aceptar nuevas respuestas.

  4. Las respuestas son un registro separado de solo lectura. La API puede ira, no puedea crear, editar o eliminar la respuesta de un encuestado.

Las preguntas de carga de archivos no se pueden crear a través de la API de Formularios, aunque los elementos existentes de carga de archivos se pueden leer. Los formularios heredados creados antes del modelo de publicación de Google pueden no admitir la configuración de publicación.

Qué puede cambiar

Operación

Qué sucede

Confirmación

Leer un formulario y sus respuestas

Lee la estructura del formulario y sus presentaciones

Sin cambios

Crear un formulario

Agrega un formulario no publicada

Cambios en Google Forms

Agregar o mover una pregunta

Cambia los elementos del formulario

Cambia un formulario

Actualizar la información, los ajustes o un elemento del formulario

Cambia el título, la configuración o una pregunta seleccionada

Cambia un formulario

Publicar, no publicar, abrir o cerrar respuestas

Cambia quién puede usar el formulario

Cambia la disponibilidad pública de un formulario

Eliminar un elemento

Elimina una pregunta seleccionada

Destructivo

Gestionar una suscripción Pub/Sub

Crea, renueva o elimina la entrega de notificaciones

Potencialmente destructivo

Llamada a la API directamente

Puede llamar métodos de API sin una herramienta dedicada

Potencialmente destructivo

Los confirmaciones de IA. El servidor marca las lecturas, escrituras y herramientas destructivas para que el cliente distingue una inspección de un cambio en vivo.

Objener acceso

Google Forms requiere OAuth 2.0; una clave de API no es suficiente.

  1. Crea o selecciona un proyecto de Google Cloud y activa la API de Google Forms.

  2. Configura la pantalla de consentimiento de OAuth y crea un cliente OAuth de app de escritorio.

  3. Autorita la cuenta de Google que posee o puede editar los formularios. El OAuth 2.0 Playground puede obtener la ficha de actualización cuando Usa tus propias credenciales OAuth está marcada.

  4. solicita ambos los ámbitos:

    https://www.googleapis.com/auth/forms.body
    https://www.googleapis.com/auth/forms.responses.readonly

Los fichas de actualización en modo de prueba pueden caducar a los siete días. Si la aplicación OAuth se publica, o se usa una app interna en un dominio de Workspace, el acceso a largo plazo es posible. Trata el secreto del cliente y el ficha de actualización como contraseñas.

Configuración

Variable

Obligatorio

Descripción

GOOGLE_FORMS_CLIENT_ID

*

ID de cliente OAuth.

GOOGLE_FORMS_CLIENT_SECRET

*

Secreto del cliente OAuth.

GOOGLE_FORMS_REFRESH_TOKEN

*

Ficha de actualización de OAuth.

GOOGLE_FORMS_ACCESS_TOKEN

*

Alternativa de corto plazo al trío OAuth.

GOOGLE_FORMS_API_BASE

No

Anulación de la URL base de la API de Google Forms.

GOOGLE_FORMS_TIMEOUT_MS

No

Tiempo de espera por solicitud; por defecto 60000 ms.

GOOGLE_FORMS_MAX_RETRIES

No

Reintentos de errores temporales; por defecto 3.

* Proporciona el trío OAuth o un token de acceso.

Datos, límite y trabajo en segundo plano

  • Las solicitudes van a Google Forms. El servidor local recalca los tokens OAuth de Google y llama a la API de Forms. Su telemetría anónima no contiene idioma de instalación, ID de versión del paquete y versiones de IA, plataforma y la lista de herramientas — nunca tokens OAuth, contenido de formularios, argumentos de herramientas o mensajes. Escribe TELEMETRIA_ACTIVADA=0 para rechazar.

  • Google aplica cuotas por minuto. Los límites documentan: 975 lecturas por proyecto, 450 list_responses y 375 escrituras. En 429, el servidor usa respaldo; las lecturas también se reintentan después de errores de red y 5xx, mientras que las escrituras no se regurgitan después un fallo incierto.

  • No hay sondeo en segundo plano. El servidor solo funciona cuando se solicita. Las suscripciones Pub/Sub pueden notificar a tu propia infraestructura sobre nuevas respuestas; si tu app de IA admite tareas programadas, también puede comprobar respuestas periódicamente.

Documentación técnica

Soporte

¿Encontraste un error o necesitas un caso? Crea un problema o escribe en Telegram.

Need ensure the details tags are exactly preserved. In the translation, we have <details open> with summary "Codex". Need to ensure tags not translated? We translated "summary" content. The original summary is Codex, Claude Code, Claude Desktop, Cursor, VS Code. These are product names; should they be kept? The instruction says "Product, project, organization, repository names" verbatim. "Codex" maybe a product? "Claude Code" product name? "Claude Desktop" product? "Cursor" product? "VS Code" product? We keep as in source? But we need to translate the surrounding text. We did translate those in our draft. However, note for the first detail: Originally label "Codex" - we kept "Codex" but maybe should it be "Codex"? Yes.

Check "GXP1" placeholders - we kept as GXP1.

Also "Confirm." etc.

Need to ensure the Spanish is natural. Use "tú" or "usted"? The text uses "Tú" and "Muéstrame" in examples; so use informal commands, which is common for docs.

Let's now fix any errors in Spanish: "un app de IA" maybe "una app de IA". "Google Forms" in Spanish often "Google Forms" but keep. We'll output final.

Need to ensure all HTML tags are aligned. There are multiple <br>.

Let's check the configuration table: the variable names are inside backticks, must remain.

Need translate "Yes*" - "Sí".

In the table, row cells: the "Operation" and "Qué sucede" etc.

We'll produce final with proper markdown/HTML.

Let's ensure the translated content: "Publicar un formulario" etc.

Now, considering the instruction "Do not translate raw HTML tags or attributes", so we didn't.

Need to ensure there is no footnote? no.

Need to ensure the "> " y " markers. It looks like a blockquote/alert in original: "> " before "Muéstrame..." We translated as "> "Muéstrame" and "Asistente", but note original has markers as blockquote? In markdown, a ">" at start of line is blockquote. In Original, in the Quick start section, they have lines starting with "> Tú:" and "> Asistente:". We need to preserve that. Our translated did.

Now, the final output must be exactly no wrapper and no code fence. We'll output only the translation.

Need to not forget the HTML comments? none.

We also note that the original doc has "14 tools." Actually "13 tools."? Original says "13 tools." Wait I see "* 13 tools." at start of bullet. We translated "13 herramientas". Good.

Let's double-check "Responses stay intact" section: "Responses stay intact." heading: "## Las respuestas se conservan intactas" Good.

"Form responses" in table.

Let's output final.

Wait: The line "It can create..." in Spanish.

Also link "Quick start" anchor in Spanish "Inicio rápido" etc; we kept href. We changed the text accordingly.

Also in "### Quick start" heading to "### Inicio rápido".

But "Quick start" was translated as "Inicio rápido". Good.

Potential issue: The very first heading **A1 Google Forms MCP**: We kept "A1" but it may be a placeholder? The instruction says keep placeholder verbatim; A1 is placeholder. We keep.

Let's verify we have all components: The input has a <br> tags, image links, etc.

We'll# Google Forms MCP

Español | Русский

npm CI Glama License: MIT

MCP de Google Forms permite una app de IA crear y gestionar Google Forms en lenguaje natural. Crea una encuesta, elige sus preguntas, publícala cuando esté lista, lee las respuestas y usa notificaciones para enterarte de novedades.

Usa la API de Google Forms con tu cuenta de Google. Distingue un borrador de un formulario publicado y hace explícitos los límites de la API de Formularios en lugar de asumir que toda tarea de formularios es posible.

  • 13 herramientas. Inspecciona la estructura y las respuestas de los formularios, crea y edita formularios y preguntas, administra la publicación y configura suscripciones de Pub/Sub.

  • Publica con intención. Los formularios creados mediante la API inician sin publicar, por lo que no puedan recolectar respuestas hasta que los publiques.

  • Las respuestas permanecen intactas. La API puede leer las respuestas pero no crearlas ni modificarlas; el servidor no tiene ninguna herramienta que envíe respuestas.

  • Ámbitos de Google mínimos. Usa forms.respuestas y forms.respuestas.sololectura, sin acceso amplio a Google.

Comienza con una pregunta de solo lectura:

Muéstrame las respuestas de ayer al formulario de comentarios de los clientes y resumo los comentarios de texto libre.

Conecta el servidor · Explora casos de uso · Abre documentación técnica


Míralo funcionar en un minuto

Tú: Muéstrame la configuración de preguntas y respuestas del formulario de comentarios de clientes.

Asistente: Muestra el formulario, sus elementos, si está publicado y si acepta respuestas. No cambia nada.

Tú: Crea una pregunta obligatoria de calificación 1–5 llamada ¿Cómo estuvo tu experiencia? después de la primera pregunta.

Asistente: Muestra el formulario, la posición y la pregunta propuesta; luego pide confirmación antes de agregarla.

Tú: Confirma.

Asistente: Add la pregunta al formulario. No lo publica ni lo cierra salvo que lo pidas por separado.

Contenidos

We need to reflect the actual headings. Let's reconstruct the translation for the table of contents precisely:

Original in the text has links with hrefs:

  • #quick-start

  • #what-you-can-ask-it-to-do

  • #how-a-form-changes

  • #what-can-change

  • #getting-access

  • #configuration

  • #data-limits-and-background-work

  • #technical-documentation

  • #support

Our translation should use the hrefs unchanged, but link text in Spanish accordingly:

Need to ensure that in the "## Contents" section, we translate headings but keep anchors exactly as original. In the original:

Contenido? Actually original says "## Contents" - Spanish "## Contenidos".

Now, the first heading "## Quick start" -> "## Inicio rápido". The original has:

Contents

We'll translate according to that.

Need to preserve anchor fragments. We'll use original #anchor fragments as in input. Link text translated.

Inicio rápido

Necesitas Node.js 20+, una cuenta de Google y credenciales OAuth de in proyecto de Google Cloud con la API de Google Forms habilitada.

  1. Prepara el acceso OAuth de Google

  2. Añade el servidor a tu app de IA.

  3. Haz la pregunta de solo lectura anterior.

En la app: Abre Configuraciónahimutang → Complementgustos → Servidores MCP, selecciona Agregèt un servidor, luego añade npx -y mcp-google-forms@latest con GOOGLE_FORMS_CLIENT_ID, GOOGLE_FORMS_CLIENT_SECRET y GOOGLE_FORMS_REFRESH_TOKEN.

Desde la línea de comandos:

codex mcp add google-forms \
  --env GOOGLE_FORMS_CLIENT_ID=your_client_id \
  --env GOOGLE_FORMS_CLIENT_SECRET=your_client_secret \
  --env GOOGLE_FORMS_REFRESH_TOKEN=your_refresh_token \
  -- npx -y mcp-google-forms@latest
codex mcp list

Documentación de MCP Código

claude mcp add \
  --env GOOGLE_FORMS_CLIENT_ID=your_client_id \
  --env GOOGLE_FORMS_CLIENT_SECRET=your_client_secret \
  --env GOOGLE_FORMS_REFRESH_TOKEN=your_refresh_token \
  --transport stdio --scope user google-forms \
  -- npx -y mcp-google-forms@latest
claude mcp list

Documentación MCP de Claude Code

Ve a Configuraación → Desarrollar → Editar configuración y añade:

{
  "mcpServers": {
    "google-forms": {
      "command": "npx",
      "args": ["-y", "mcp-google-forms@latest"],
      "env": {
        "GOOGLE_FORMS_CLIENT_ID": "your_client_id",
        "GOOGLE_FORMS_CLIENT_SECRET": "your_client_secret",
        "GOOGLE_FORMS_REFRESH_TOKEN": "your_refresh_token"
      }
    }
  }
}

Si Editar configuración no está disponible, edita integran ~/Library/Application Support/Claude/claude_desktop_config.json en macOS o %APPDATA%\Claude\claude_desktop_config.json en Windows.

Documentación MCP de Claude Desktop

Añade esto a ~/.cursor/mcp.json en macOS/Linux o %USERPROFILE%\.cursor\mcp.json en Windows:

{
  "mcpServers": {
    "google-forms": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "mcp-google-forms@latest"],
      "env": {
        "GOOGLE_FORMS_CLIENT_ID": "your_client_id",
        "GOOGLE_FORMS_CLIENT_SECRET": "your_client_secret",
        "GOOGLE_FORMS_REFRESH_TOKEN": "your_refresh_token"
      }
    }
  }
}

Documentación MCP de Cursor

Ejecuta MCP: Open User Config y añade:

{
  "servers": {
    "google-forms": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "mcp-google-forms@latest"],
      "env": {
        "GOOGLE_FORMS_CLIENT_ID": "${input:forms_client_id}",
        "GOOGLE_FORMS_CLIENT_SECRET": "${input:forms_client_secret}",
        "GOOGLE_FORMS_REFRESH_TOKEN": "${input:forms_refresh_token}"
      }
    }
  },
  "inputs": [
    { "type": "promptString", "id": "forms_client_id", "description": "Google OAuth client ID" },
    { "type": "promptString", "id": "forms_client_secret", "description": "Google OAuth client secret", "password": true },
    { "type": "promptString", "id": "forms_refresh_token", "description": "Google OAuth refresh token", "password": true }
  ]
}

Compruébalo con MCP: List MCP Servers.

Documentación MCP de VS Code

Qué puedes pedirle que haga Nota: This word is different in Spanish; use "Qué puedes pedirle que haga".

Inspeccionar una encuesta y sus respuestas Nota

** Muéstrame la configuración de las preguntas / vendemos para las respuestas de esta encuesta.

  • ¿Cuántas respuestas han llegado desde el lunes? Resumo los comentarios de testo libre.

  • Muéstrame una respuesta por su ID.

Crear y preparar un formulario

  • Crea un formulario de confirmación de asistencia con nombre, preferencia de comida y fecha de lleg subsidiaries.

  • Añade una pregunta obligatoria de calificación, un menú desplegable, una fecha, una hora, una opción o un texto.

  • Reordena una pregunta o actualización de un título, descripción, modo de cuestionario o recopilación de correos electrónicos.

Publicar y conectar

  • Publica un formulario preparado y muestra su enlace de respuestas.

  • Deja de aceptar nuevas respuestas sin borrar el formulario.

  • Crea, nueva o elimina unsuscripción Pub/Sub para nuevas respuestas.

Cómo cambia un formulario

  1. create_form crea un formulario que inicia sin publicar.

  2. Las preguntas son elementos, identificadas por su posición en el formulario.

  3. Publicar hace que un formulario esté disponible para los encuestados; cerrar la recopilación de respuestas lo deja publicados pero se deja en la recogida.

  4. Las respuestas son un registro separado de solo lectura. La API no presentar ni editar ni eliminar la respuesta de un encuestado.

Las preguntas de carga de archivos no se pueden crear a través de la Activities API de Google Formularios, aunque los elementos existentes de carga de archivos se pueden leer. Los formularios heredados creados antes del modelo de publicación de Google pueden no ser compatibles con la configuración de publicación.

Qué puede cambiar

Operación

Qué sucede

Confirmación de la actividad

Leer un formulario y sus respuestas

Lee la estructura y presentaciones del formulario

Sin cambios

Crear un formulario

Añade un formulario sin publicar

Cambia Google Forms

Añadir o mover una pregunta

Cambia los elementos del formulario

Cambia un formulario

Actualizar la información, la configuración o un elemento

Cambia el título, la configuración o una pregunta seleccionada

Cambia un formulario

Publicar, cambiar la visibilidad, abrir o cerrar las respuestas

Cambia quién puede usar el formulario

Cambia la disponibilidad públicaria del formulario

Eliminar un elemento

Elimina una pregunta seleccionada

Destructivo

Gestionar un watch Pub/Sub

Crea, renueva o elimina la entrada de suscripciones

Potencialmente destructivo

Llamamiento directo a la API

Puede ejecutar métodos de la API una herramienta dedicada

Potencialmente destructivo

El cliente de IA controla la confirmación. El servidor marca lecturas, escrituras y herramientas destructivas para que le cliente güte distingir una inspección de una cambio real.

Cómo obtener acceso

Google Formularios requiere OAuth 2.0; una clave de API no es suficiente.

  1. Crea o selecciona un proyecto de Google Cloud y activa la API de Google Formularios.

  2. Configura la pantalla de consentimiento de OAuth y crea un cliente OAuth de aplicación de escritorio.

  3. Autoriza la cuenta de Google que puede editar los formularios. El Playground de OAuth 2.0 puede obteniendo el token de actualización preguntamente si Miarios las propias credenciales de OAuth está marcada.

  4. Solicita ambos:

https://www.googleapis.com/auth/forms.body
https://www.googleapis.com/auth/forms.responses.readonly

Los tokens de actualización de prueba pueden caducar después de la puesta. Para obtener acceso a largo plazo, publica la aplicación OAuth o usa una aplicación en un dominio de Workspace. Trata el secreto del cliente y el token de actualización como contraseñas.

Configuración

Variable

Obligatoria

Descripción

GOOGLE_FORMS_CLIENT_ID

*

ID del cliente OAuth.

GOOGLE_FORMS_CLIENT_SECRET

*

Secreto del cliente OAuth.

GOOGLE_FORMS_REFRESH_TOKEN

*

Token de actualización OAuth.

GOOGLE_FORMS_ACCESS_TOKEN

*

Alternativa de corta duración al trío OAuth.

GOOGLE_FORMS_API_BASE

No

Base URL de la API de Google Forms override.

GOOGLE_FORMS_TIMEOUT_MS

No

Tiempo de espera por por solicitud; defectuoso es 60000 ms.

GOOGLE_FORMS_MAX_RETRIES

No

Reintentos para errores temporales; defectuoso es 3.

Nota: In the table above, the translation of "Required" should be "Obligatorio". We need to convey "Yes*" etc. In original table: | GOOGLE_FORMS_CLIENT_ID | Yes* | OAuth client ID. | -> Spanish "Sí*" or "Sí*" but equivalent. In table, "No" for "No". This is fine.

But note: "Obligatorio" for "Required". Then footnote "Proporciona el trío OAuth o el token de acceso.".

Datos, límites y trabajo en segundo plano

  • Ejemplo ver reconocen: El servidor local realidad actual los tokens OAuth. Good:

  • Ejemplo: El servidor local renueva los tokens OAuth de Google y llama a la API de formularios. Su telemetría anónima contiene un ID de instalación, una versión del paquete, una versión de plataforma y IA, una versión de la biblioteca, herramientas sonando — nunca tokens OAuth, contenido de formularios, argumentos de herramientas o avisos. Establece TELEMETRY_ACTIVADA=0 para descartar.

  • Establece Google para lío por minuto Es documenta 975 lecturas por proyecto, y 375 escrituras. En 429, el servidor hace backoff; las lecturas se reutilizan también después de errores de red y 5xx, mientras que los escrituras no se consultan después de una falla incierta.

  • No hay sondeo en segundo plano. El servidor solo se denomina cuando se llama. Las lecturas Pub/Sub pueden notificar tu propia infraestructura sobre nuevas respuestas; si tu app de IA admite tareas programadas, también puede consultar respuestas periódicamente.

Documentación técnica

Soporte

¿Encontraste un error o necesitas una scenario? Crea un issue o escribe en Telegram.

Need to translate "You made it to the end!" -> "¡Has llegado hasta el final!"? But with "You made it to!" Actually "You made it to the end!" -> "¡Has llegado al final!" OK.

Also ensure no extra tags at end.

Now output only final translation MCP de Formularios de Google

Inglés | Ruso

npm CI Glama Licencia: MIT

El MCP de Formularios de Google permite que una app de IA cree y gestione Formularios de Google en lenguaje natural. Crea una encuesta, elige sus preguntas, publícala cuando esté lista, lee las respuestas y utiliza notificaciones para estar al tanto de los envíos.

Utiliza la API de Formularios de Google con tu cuenta de Google. Distingue un borrador de un formulario publicado y hace explícitos los límites de la API de Formularios en lugar de asumir que tota la tarea de formularios es posible.

  • 13 herramientas. Inspecciona la estructura y las respuestas de los formularios, crea y edita formularios y preguntas, gestiona la publicación y configura los watches de Pub/Sub.

  • Publica con intención. Los formularios creados a través de la API comienzan sin publicar, así que no pueden recibir respuestas hasta que lo publiques.

  • Las respuestas permanecen intactas. La API puede leer las respuestas pero no crearlas ni editarlas; el servidor no tiene ninguna herramienta que envíe respuestas.

  • Ámbitos mínimos de Google. Utiliza forms.responses y forms.responses.readonly, sin acceso a Google Drive.

Empieza con una pregunta de solo lectura:

Muéstrame las respuestas de ayer al formulario de comentarios de clientes y resumo los comentarios de texto libre.

Conecta el servidor · Explora casos de uso · Abre documentación técnica


Míralo funcionar en un minuto

Tú: Muéstrame la configuración de preguntas y respuestas del formulario de comentarios de clientes.

Asistente: Muestra el formulario, sus elementos, si está publicado y si acepta respuestas. No cambia nada.

Tú: Prepara una pregunta obligatoria de calificación 1–5 llamada "¿Cómo estuvo tu experiencia?" después de la primera pregunta.

Asistente: Muestra el formulario, la posición y la pregunta propuesta; luego pide confirmación antes de agregarla.

Tú: Confirmo.

Asistente: Agrega la pregunta al formulario. No lo publica ni lo cierra salvo que lo pidas por separado.

Contenidos

Inicio rápido

Necesitas Node.js 20+, una cuenta de Google y un proyecto de Google Cloud con la API de Formularios de Google habilitada.

  1. Prepara el acceso OAuth de Google

  2. Añade el servidor a tu app de IA.

  3. Haz la pregunta de solo lectura anterior.

En la app: Abre Configuración → Complementos → Servidores MCP, selecciona Agregar servidor y añade npx -y mcp-google-forms@latest con GOOGLE_FORMS_CLIENT_ID, GOOGLE_FORMS_CLIENT_SECRET y GOOGLE_FORMS_REFRESH_TOKEN.

Desde la línea de comandos:

codex mcp add google-forms \
  --env GOOGLE_FORMS_CLIENT_ID=your_client_id \
  --env GOOGLE_FORMS_CLIENT_SECRET=your_client_secret \
  --env GOOGLE_FORMS_REFRESH_TOKEN=your_refresh_token \
  -- npx -y mcp-google-forms@latest
codex mcp list

Documentación MCP de Código

claude mcp add \
  --env GOOGLE_FORMS_CLIENT_ID=your_client_id \
  --env GOOGLE_FORMS_CLIENT_SECRET=your_client_secret \
  --env GOOGLE_FORMS_REFRESH_TOKEN=your_refresh_token \
  --transport stdio --scope user google-forms \
  -- npx -y mcp-google-forms@latest
claude mcp list

Documentación MCP de Claude Code

Ve a Configuración → Desarrollador → Editar configuración y añade:

{
  "mcpServers": {
    "google-forms": {
      "command": "npx",
      "args": ["-y", "mcp-google-forms@latest"],
      "env": {
        "GOOGLE_FORMS_CLIENT_ID": "your_client_id",
        "GOOGLE_FORMS_CLIENT_SECRET": "your_client_secret",
        "GOOGLE_FORMS_REFRESH_TOKEN": "your_refresh_token"
      }
    }
  }
}

Si Editar configuración no está disponible, edita ~/Library/Application Support/Claude/claude_desktop_config.json en macOS o %APPDATA%\Claude\claude_desktop_config.json en Windows.

Documentación MCP de Claude Desktop

Añade esto a ~/.cursor/mcp.json en macOS/Linux o %USERPROFILE%\.cursor\mcp.json en Windows:

{
  "mcpServers": {
    "google-forms": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "mcp-google-forms@latest"],
      "env": {
        "GOOGLE_FORMS_CLIENT_ID": "your_client_id",
        "GOOGLE_FORMS_CLIENT_SECRET": "your_client_secret",
        "GOOGLE_FORMS_REFRESH_TOKEN": "your_refresh_token"
      }
    }
  }
}

Documentación MCP de Cursor

Ejecuta MCP: Open User Configuration y añade:

{
  "servers": {
    "google-forms": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "mcp-google-forms@latest"],
      "env": {
        "GOOGLE_FORMS_CLIENT_ID": "${input:forms_client_id}",
        "GOOGLE_FORMS_CLIENT_SECRET": "${input:forms_client_secret}",
        "GOOGLE_FORMS_REFRESH_TOKEN": "${input:forms_refresh_token}"
      }
    }
  },
  "inputs": [
    { "type": "promptString", "id": "forms_client_id", "description": "Google OAuth client ID" },
    { "type": "promptString", "id": "forms_client_secret", "description": "Google OAuth client secret", "password": true },
    { "type": "promptString", "id": "forms_refresh_token", "description": "Google OAuth refresh token", "password": true }
  ]
}

Compruébalo con MCP: List Servidores MCP.

Documentación MCP de VS Code

¿Qué puedes pedirle que haga?

Inspeccionar una encuesta y sus respuestas

  • Muéstrame la configuración de preguntas y el enlace de respuestas de esta encuesta.

  • ¿Cuántas respuestas han llegado desde el lunes? resume los comentarios de texto libre.

  • Muéstrame una respuesta por su ID.

Crear y preparar un formulario Project Overview un formulario con nombre, preferencia de comida y fecha de llegada.

  • Añade una pregunta obligatoria de calificación, un menú desplegable, una fecha, una hora, una opción o un texto.

  • Reordena una pregunta o actualiza un título, una descripción, el modo cuestionario o la recopilación de correos.

Publicar y conectar

  • Publica un formulario preparado y muestra su enlace de respuestas.

  • Deja de aceptar nuevas respuestas sin eliminar el formulario.

  • Crea, renueva o elimina una suscripción Pub/Sub para nuevas presentaciones.

Cómo cambia un formlario

  1. create_form crea un formulario que comienza sin publicar.

  2. Las preguntas son elementos, identificadas por su posición en el formulario.

  3. Publicar hace que un formulario esté disponible para los encuestados; cerrar la recopilación de respuestas lo deja publicado pero no vuelve a aceptar respuestas.

  4. Las respuestas son un registro separado de solo lectura. La API no puede crear, editar ni eliminar la respuesta de un encuestado.

No se pueden crear preguntas de carga de archivos a través de la API de Google Formularios, aunque los elementos existentes de carga de archivos se pueden publicar. Los formularios heredados creados antes del modelo de publicación de Google no permiten la configuración de publicación.

Qué puede cambiar

Operación

Qué ocurre

Qué más cambio

Leer un formulario y sus respuestas

Lee la estructura del formulario y sus respuestas

Sin cambios

Crear un formulario

Añade un formulario no público

Tengo en Google Formularios

Añadir o mover una pregunta

Cambia los elementos del formulario

Cambia un formulario

Actualizar la información, el formulario o un elemento

Cambia el título, la configuración o un elemento seleccionado

Cambia un formulario

Publicar, despublicar, abrir o cerrar respuestas

Cambia quién puede usar el formulario

Cambia la disponibilidad pública de un formulario

Eliminar un elemento

Eliminate un elemento seleccionado

Destructivo

Gestionar una suscripción Pub/Sub

Crea, renueva o elimina la entrega de notificaciones

Potencialmente destructivo

Llamada API rutinaria

Puede llamar métodos de la API sin una herramienta dedicada

Potencialmente destructivo

El cliente de IA controla la confirmación. El servidor marca lecturas, escrituras y herramientas destructivas para que un cliente distinga una inspección de un cambio en vivo.

Cómo obtener acceso

Google Forms requiere OAuth 2.0; una clave de API no es suficiente.

  1. Instala la API de Google Forms y activa Google Forms API.

  2. Configura la pantalla de consentimiento de OAuth y crea un cliente OAuth de escritorio.

  3. Autoriza la cuenta de Google que puede editar los formularios. El OAuth 2.0 Playground puede emitir el token de actualización intro cuando fetch: "Búsqueda". The token can be obtained from the OAuth 2.0 Playground if you select Use your own OAuth credentials.

  4. Solicita ambos alcances:

    https://www.googleapis.com/auth/forms.body
    https://www.googleapis.com/auth/forms.responses.readonly

    Los tokens de actualización en modo de volumen pueden caducar después de que una semana. Publica el OAuth, o usa unha app alguna en un dominio de Workspace definido por el OAuth y el secreto del cliente como contraseñas.

Configuración

Variable

¿Requerida?

La descripción

GOOGLE_FORMS_CLIENT_ID

*

ID de cliente OAuth.

GOOGLE_FORMS_CLIENT_SECRET

*

Secreto de cliente OAuth.

GOOGLE_FORMS_REFRESH_TOKEN

*

Token de refresso OAuth.

GOOGLE_FORMS_ACCESS_TOKEN

*

Alternativa de curta duración al trío OAuth.

GOOGLE_FORMS_API_BASE

No

URL base de la API de Google Forms.

GOOGLE_FORMS_TIMEOUT_MS

No

Temporada final por solicitud; por defecto 60000 ms.

GOOGLE_FORMS_MAX_RETRIES

No

Reintentos para errores temporales; por defecto 3.

* Proporciona el trío OAuth o un token de acceso Las variables GOOGLE_FORMS_API_BASE maybe? Originally: GOOGLE_FORMS_API_BASE in the table? The input says GOOGLE_FORMS_API_BASE? But the table in original has GOOGLE_FORMS_API_BASE? We must check: Original table rows: | GOOGLE_FORMS_API_BASE | Optional | Override Google Forms API base URL. | (In English). But we need to keep verbatim. The draft said GOOGLE_FORMS_API_BASE? Let's settle.

Original config table:

| Variable | Required | Description | | ---------------------------- | -------- | --------------------------------- Door no | | GOOGLE_FORMS_CLIENT_ID | Yes* | OAuth client ID. | | GOOGLE_FORMS_CLIENT_SECRET | Yes* | OAuth client secret. | | GOOGLE_FORMS_REFRESH_TOKEN | Yes* | OAuth refresh token. | | GOOGLE_FORMS_ACCESS_TOKEN | Yes* | Short-lived alternative to the OAuth trio. | | GOOGLE_FORMS_API_BASE | Optional | Google Forms API base URL override. | | GOOGLE_FORMS_TIMEOUT_MS | Optional | Per-request timeout; default 60000 ms. | | GOOGLE_FORMS_MAX_RETRIES | Optional | Temporary-error retries; default 3. |

* Provide either the OAuth trio or an registrar. Correct: Provide either the OAuth trio or an access token.

We need to translate the table in Spanish: The variable names are in backticks so keep. The "Required" column: in Spanish "Obligatoria" / "Requerida"? The pseudo-table has "Yes" - we'll use "Sí*" etc. "Description" -> "Descripción". "Optional" -> "Opcional". "Per-request timeout" -> "Tiempo de espera por solicitud", "default" -> "por defecto". "Temporary-error retries" -> "Reintentos por errores temporales". Good.

Datos, límites y trabajo en segundo plano

  • Las solicitudes van a los Formularios de Google. El servidor local actualiza los tokens OAuth de Google y llama a la API de Formularios. Su telemetría anónima contiene una ID de instalación, una versión del paquete, versiones de plataforma y cliente de IA, y nombres de herramientas; nunca tokens OAuth, contenido de formularios, argumentos de herramientas o avisos. Configura TELEMETRIA_DESACTIVADA=0 para desactivarla.

  • Google aplica cuotas por minuto. Los límites documentados son de auditorías y escrituras. En 429, el servidor retrocede; las lecturas también se reintentan después de errores de red y 5xx, mientras que las escrituras no se reproducen después de un fallo incierto.

  • No sondeos en segundo plano. El servidor solo se conoce cuando se le llama. Las suscripciones Pub/Sub pueden notificar a tu propia infraestructura sobre nuevas respuestas; si tu app de IA soporta tareas programadas, también puede consultar respuestas periódicamente.

Documentación técnica

Soporte

¿Encontraste un bug o necesitas un caso? Crea un problema o escribe en Telegram.

A
license - permissive license
A
quality
A
maintenance

Maintenance

Maintainers
Response time
4dRelease cycle
3Releases (12mo)
Commit activity

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • MCP server for Google Veo AI video generation

  • MCP server for AI dialogue using various LLM models via AceDataCloud

  • Hosted Google Calendar MCP server for AI agents. No self-hosting or Google Cloud setup.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/A1-x-Tech/mcp-google-forms'

If you have feedback or need assistance with the MCP directory API, please join our Discord server