Google Docs MCP Server
Description
# Google Docs MCP Server A Model Context Protocol (MCP) server for Google Docs API, allowing language models to create, search, append to, and update Google Docs. ## Features - **Search Docs**: Search for Google Docs in Drive with custom queries - **Create Doc**: Create new…
About
# Google Docs MCP Server A Model Context Protocol (MCP) server for Google Docs API, allowing language models to create, search, append to, and update Google Docs. ## Features - **Search Docs**: Search for Google Docs in Drive with custom queries - **Create Doc**: Create new Google Docs with optional initial content -…
Details
- Author
- highlight-ing
- GitHub stars
- 2
- Downloads
- 984
- Categories
- Knowledge Base
Jump to
- Search Google Docs in Drive with custom queries
- Create new Google Docs with optional initial content
- Append content to the end of an existing Google Doc
- Replace content in an existing Google Doc with new content
Install dependencies with npm install, set up Google OAuth 2.0 credentials (save as credentials.json), run node get-refresh-token.js for authorization, build the server with npm run build, then start with npm start or node build/index.js. Optionally build the Extism plugin for direct testing.
Google Docs MCP Server
A Model Context Protocol (MCP) server for Google Docs API, allowing language models to create, search, append to, and update Google Docs.
Features
- Search Docs: Search for Google Docs in Drive with custom queries
- Create Doc: Create new Google Docs with optional initial content
- Append to Doc: Append content to the end of an existing Google Doc
- Update Doc: Replace content in an existing Google Doc with new content
Setup
Prerequisites
- Node.js (v14 or higher)
- npm
- Google Cloud Platform account with the Google Drive and Google Docs APIs enabled
Installation
1. Clone this repository:
git clone <repository-url>
cd google-docs-mcp-server
2. Install dependencies:
npm install
3. Set up Google API credentials:
- Go to the Google Cloud Console
- Create a new project (or select an existing one)
- Enable the Google Drive API and Google Docs API
- Create OAuth 2.0 credentials (Desktop application)
- Download the credentials JSON file and save it as credentials.json in the project root
4. Get authentication tokens:
node get-refresh-token.js
Follow the browser prompts to authorize the application. This will create a
token.json file.
5. Build the server:
npm run build
Building the Extism Plugin
The server uses an Extism WebAssembly plugin to interact with the Google Docs API. To build the plugin:
cd extism-plugin
npm install
npm run build
This will create the plugin.wasm file in the dist directory.
Usage
Running the Server
Start the MCP server:
npm start
Or with explicit node command:
node build/index.js
Testing the Plugin Directly
You can test the Extism plugin directly using the Extism CLI:
cd extism-plugin
extism call --wasi --allow-host www.googleapis.com --allow-host docs.googleapis.com --config GOOGLE_ACCESS_TOKEN=<your-access-token> dist/plugin.wasm describe
To search for docs:
extism call --wasi --allow-host www.googleapis.com --allow-host docs.googleapis.com --config GOOGLE_ACCESS_TOKEN=<your-access-token> dist/plugin.wasm call --input '{"toolId": "search_docs", "arguments": {"query": "name contains \"report\""}}'
To create a new doc:
extism call --wasi --allow-host www.googleapis.com --allow-host docs.googleapis.com --config GOOGLE_ACCESS_TOKEN=<your-access-token> dist/plugin.wasm call --input '{"toolId": "create_doc", "arguments": {"title": "My New Document", "content": "Initial content"}}'
License
MIT
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.


