Google Forms MCP Server
This MCP server uses the Google Forms API to provide functions such as creating, editing, and retrieving responses for forms.
Build Method
Initial Setup
After cloning the repository, install dependencies
cd google-forms-mcp
Build the Server
# Build the main MCP server
npm run build
Build the Refresh Token Acquisition Script
# Build the refresh token acquisition script
npm run build:token
Execution in Development Environment
# Run the server directly
node build/index.js
# Or, use npm script
npm run start
Setup Method
-
Create a project in Google Cloud Console and enable the Google Forms API.
- https://console.cloud.google.com/
- Search for "Google Forms API" from APIs & Services > Library and enable it.
-
Obtain OAuth 2.0 Client ID and Secret.
- APIs & Services > Credentials > Create Credentials > OAuth client ID
- Select Application type: "Desktop app"
-
Set environment variables and obtain the refresh token.
export GOOGLE_CLIENT_ID="YOUR_CLIENT_ID" export GOOGLE_CLIENT_SECRET="YOUR_CLIENT_SECRET" cd google-forms-mcp npm run build node build/get-refresh-token.js
Note: If an error occurs when running get-refresh-token.js, execute the following command:
cd google-forms-mcp npm run build:token node build/get-refresh-token.js
-
Copy the displayed refresh token.
-
Update the Claude desktop app's configuration file.
- Open
~/Library/Application Support/Claude/claude_desktop_config.json
. - Add environment variables to the
google-forms-mcp
in themcpServers
section:
"google-forms-mcp": { "command": "node", "args": [ "/path/to/your/google-forms-mcp/build/index.js" # Update this path ], "env": { "GOOGLE_CLIENT_ID": "YOUR_CLIENT_ID", "GOOGLE_CLIENT_SECRET": "YOUR_CLIENT_SECRET", "GOOGLE_REFRESH_TOKEN": "YOUR_REFRESH_TOKEN" } }
- Open
-
Restart the Claude desktop app.
Available Tools
This MCP server provides the following tools:
create_form
- Create a new Google Formadd_text_question
- Add a text question to the formadd_multiple_choice_question
- Add a multiple choice question to the formget_form
- Get form detailsget_form_responses
- Get form responses
Usage Example
Create a form and add some questions.
Claude uses MCP tools like the following to create the form:
- Use the
create_form
tool to create a new form - Use
add_text_question
oradd_multiple_choice_question
tools to add questions - Display the URL of the created form