Googleforms
Google Forms is a survey administration software that allows users to create and share online forms and surveys.
Verdict
Common use cases
- Draft event registration forms from chat
- Bulk-edit survey questions mid-campaign
- Pull response data for weekly analysis
- Toggle form open/closed before launch
- Check individual submission details by ID
Integration
- Vendor
- Googleforms
- Category
- productivity
- Auth
- OAUTH2
- Tools
- 7
- Composio slug
googleforms
Tools
- Batch Update Form
Applies a batch of update operations to a Google Form in a single atomic transaction. Use when you need to modify form content after creation, including: - Adding, updating, or deleting questions and other items - Modifying form metadata (t
- Create a Google Form
Creates a new Google Form with the specified title. This action initializes an empty form that can be later populated with items (questions, sections, images, videos) using the batchUpdate endpoint. When a form is created, it is assigned a
- Get form response
Retrieves a single form response by its unique response ID. Returns complete response data including all answers provided by the respondent, their email (if collected), timestamps, and quiz scores (if applicable). Use this action when you n
- Get Google Form
Retrieves the complete structure and metadata of a Google Form. Returns the full form definition including its title, description, all items (questions, sections, page breaks, images, videos, and display text), form settings (quiz mode, ema
- List Form Watches
Lists all watches owned by the calling project for a specific Google Form. Use this action to discover existing watches, check their status and expiration times, or audit which notifications are configured for a form. Each project can have
- List Google Form Responses
Lists all responses submitted to a Google Form with optional filtering and pagination. Use this action to retrieve multiple form submissions at once, export response data, or monitor new submissions. Supports filtering by timestamp to fetch
- Set Form Publish Settings
Updates the publishing settings of a Google Form, controlling whether the form is published (visible to others) and whether it accepts responses. Use this action to publish a draft form, unpublish a form to prevent access, or toggle respons
Setup
Setup guide
- 11. Open your Switchy workspace and navigate to Settings → Integrations → Add MCP Server. 2. Search for Google Forms and click Connect. 3. You'll be redirected to Google's OAuth consent screen — sign in with the Google account that owns (or can access) the forms you want to manage. 4. Grant the requested permissions: 'See, edit, create, and delete all your Google Forms' and 'View and manage your forms in Google Drive'. 5. After authorizing, you'll return to Switchy and see 'Google Forms connected' in your integrations list. 6. To test the connection, open any Space and type '@Googleforms list the responses for form ID [paste a real form ID here]' — if the MCP returns response data or confirms the form exists, you're live. 7. From now on, @mention @Googleforms in any Space message to invoke its tools; the MCP will execute the request and stream results back into the thread.
What teammates see: by default, memories from Googleforms are scoped to the Space (PROJECT visibility) - you can mark any memory PRIVATE or share it ORG-wide.
Works well with
Top models
Compatibility data appears once enough Spaces have used this MCP together with a given model.
How Switchy teams use it
Starter prompts
Create Feedback Form
@Googleforms create a new form titled 'Q2 Product Feedback Survey'. Return the form ID so I can add questions next.Open in a Space →
Add Questions in Bulk
@Googleforms batch update form ID [paste ID] to add three questions: 1) 'How satisfied are you?' (scale 1-5), 2) 'What feature do you use most?' (short text), 3) 'Would you recommend us?' (multiple choice: Yes/No/Maybe).Open in a Space →
Export Recent Responses
@Googleforms list all responses for form ID [paste ID]. Include timestamps and email addresses if collected.Open in a Space →
Check Single Submission
@Googleforms get the response with ID [paste response ID] from form [paste form ID]. Show me all answers and the submission timestamp.Open in a Space →
Close Form to New Entries
@Googleforms set form ID [paste ID] to stop accepting responses. Confirm the form is now closed.Open in a Space →
Example outputs
Illustrative - representative of the model's voice and quality, not literal recordings.
@googleforms list all responses from our Q4 feedback form and summarize the top 3 themes in the open-ended comments
I retrieved 47 responses from your Q4 feedback form. The top three themes in open-ended comments are: (1) Request for more flexible work hours (mentioned in 18 responses), (2) Desire for clearer project timelines and milestone communication (14 responses), and (3) Appreciation for the new onboarding process but suggestions to extend it by one week (11 responses). Response timestamps span October 15 to December 20, with the highest submission rate in early November.
This example shows the MCP's ability to fetch multiple responses and pair them with AI reasoning for qualitative analysis. Requires OAuth scope to read form responses. Note that large forms (500+ responses) may hit pagination limits; the AI will need to make multiple calls or request a filtered date range.
@googleforms create a new employee onboarding survey with sections for IT setup, manager introduction, and first-week experience
I created a new Google Form titled 'Employee Onboarding Survey' and applied a batch update to structure it with three sections: (1) IT Setup – includes questions about equipment delivery, account access, and software installation; (2) Manager Introduction – asks about clarity of role expectations and initial 1:1 meeting; (3) First-Week Experience – captures overall impressions and support needs. The form is currently unpublished. You can review it at [form URL] and publish when ready.
Demonstrates the two-step workflow: create an empty form, then use batchUpdate to add questions atomically. This prevents partial-state errors if the operation is interrupted. The form starts unpublished by default, giving you a chance to review structure before collecting responses. Requires OAuth scope to create and modify forms.
@googleforms get the latest response from our bug report form and check if the reported issue matches any open tickets in our backlog
I retrieved the most recent response submitted 14 minutes ago. The reporter described a login timeout issue on the mobile app after 2FA entry. Checking your backlog, this matches ticket #347 ('Mobile 2FA session expiry too aggressive'), which was opened last week and is currently assigned to the auth team. The form response includes the user's email (opted in) and a screenshot attachment, which I can reference if you want to add details to the existing ticket.
Shows how the MCP can fetch individual responses by ID and integrate with cross-tool reasoning (comparing form data to project management state). Useful for triage workflows. Note that the MCP returns response metadata but doesn't directly access file attachments—those require separate Google Drive API calls if you need to download them.
Use-case deep-dives
When Google Forms beats a dedicated registration tool
A community organizer running monthly meetups needs a registration form that collects attendee names, dietary restrictions, and plus-ones. The Google Forms MCP is the right call here because the organizer already lives in Google Workspace, the form structure rarely changes between events, and the OAuth2 setup is one-time. Use 'Create a Google Form' to spin up each month's form, 'Batch Update Form' to tweak the date field, and 'List Google Form Responses' to pull RSVPs into a shared spreadsheet for headcount. The threshold: if you're running more than 10 events per month or need conditional logic beyond Google Forms' native branching, you'll hit the MCP's limits and should look at Typeform or Tally. For a monthly cadence with straightforward questions, this MCP keeps setup under 5 minutes and responses in the Google ecosystem your team already uses.
Why this MCP struggles with high-volume feedback loops
A 6-person SaaS startup wants to send post-onboarding surveys to 200 new users per week and route responses into their support queue. The Google Forms MCP is borderline here. The 'List Google Form Responses' tool can poll for new submissions, but Google Forms doesn't natively trigger webhooks, so you're stuck with scheduled polling that introduces lag. If your support team needs real-time alerts when a user reports a blocker, that 15-minute polling window is too slow. The OAuth2 setup is fine for a single shared account, but if you need per-user attribution or want to embed forms in your app with custom branding, Google Forms' constraints will frustrate you. Use this MCP only if you're okay with batch processing responses every hour and your feedback volume stays under 500 submissions per week. Above that, Typeform's webhook support or a dedicated survey tool will save you more time than this MCP's simplicity buys you.
When this MCP wins for recurring team check-ins
A 12-person remote startup runs weekly pulse surveys to track morale and surface blockers before they escalate. The Google Forms MCP is a strong fit because the form structure is stable (same 5 questions every Friday), the team already uses Google Workspace for docs and calendar, and the OAuth2 handshake happens once. Use 'Create a Google Form' to template the survey, 'Batch Update Form' to swap in the current week's date, and 'List Google Form Responses' to pull answers into a Slack summary bot that posts anonymized trends to the team channel. The 7 tools cover the full loop: create, update, retrieve responses, and check publish settings to ensure the form goes live on schedule. The trade-off: if you need advanced anonymization (Google Forms collects email by default unless you disable it) or want to correlate responses across weeks without manual spreadsheet work, you'll need a dedicated pulse tool. For a weekly cadence with basic aggregation, this MCP keeps the workflow inside Google and setup under 10 minutes.
Frequently asked
What can the Google Forms MCP do in Switchy?
It lets your team create new forms, modify questions and settings, retrieve responses, and manage form publishing — all from Switchy's chat interface. You can batch-update multiple questions in one transaction, pull individual or bulk responses, and toggle whether a form accepts submissions. It's useful for automating survey workflows or syncing form data into other tools without opening the Forms UI.
Which Google account permissions does the OAuth flow request?
The MCP asks for OAuth scopes that allow reading and writing Google Forms you own or have edit access to, plus reading responses. You'll see a consent screen listing these permissions when you first connect. Only users with edit access to a form can modify it via the MCP; viewer-only access won't work for create or update operations.
Can it auto-send forms to respondents or trigger emails?
No. The MCP handles form structure and response retrieval, not distribution. To email a form link, you'd use a separate email MCP or manually copy the published URL. If you need automated email triggers based on new responses, pair this with a workflow that polls responses and calls an email tool.
How is this different from just using Google Forms directly?
You skip the browser tab and manual clicks. The MCP is faster for bulk edits — like adding ten questions at once — or chaining form creation into a larger workflow (create form, populate questions, publish, log the URL). It's not a replacement for the visual form builder; use the web UI if you're designing complex branching logic or need the preview pane.
Who on the team should connect their Google account?
Whoever owns or has edit rights to the forms you want to manage. If your team shares a Google Workspace, connect the account that has editor access to the relevant Drive folders. Each Switchy user connects their own Google account; the MCP can't access forms outside that user's permissions.