Integrate Google Docs MCP server into your Slack workspace for instant access to your AI agent.
Tools that your AI agent can use through this MCP server to interact with Google Docs
Create a table and fill it with data in a single step. Provide the entire table (all rows and columns, including a header row) at once. Use this instead of inserting cells or text one at a time. The action places every value in the correct cell for you. Pass Table Data as a JSON array of arrays, one inner array per row, header row first when Has Header Row is set, e.g. [["Name","Role"],["Ada","Engineer"]]. Use Find Document to resolve a document's name to its ID, or Insert Table instead if you only need an empty grid to fill in later. Note: a table written this way is always static — the Google Docs API does not create or preserve a live link to a Google Sheet, even when this replaces a Sheets-linked table. See the documentation
Find and replace all occurrences of a string in a Google Doc. Use Find Document to resolve a document's name to its ID. Returns the number of replacements made. See the documentation
Replace image in a existing document. See the documentation
Insert text into a Google Doc at the beginning, end, or a specific character index. Use Find Document to resolve a document's name to its ID. To append text to the end of a doc, use position: end (the default). See the documentation
Insert an empty table with the given number of rows and columns into a Google Doc. If you already have the data, use Write Table instead so you don't have to fill cells one by one. Use Find Document to resolve a document's name to its ID. See the documentation
Insert a page break into a Google Doc at the beginning, end, or a specific character index. Use Find Document to resolve a document's name to its ID. See the documentation
Insert an inline image into a Google Doc from a publicly reachable image URL. The URL must be publicly accessible (Google fetches it server-side) and point to a PNG, JPEG, or GIF. Use Find Document to resolve a document's name to its ID. See the documentation
Get the identity (display name and email) of the currently authenticated Google account. Use this to answer "who am I" questions and to attribute documents to the current user. Resolves via the Drive about.get endpoint (no extra OAuth scope required). See the documentation
Get the full text content and structure of a Google Doc by its ID. Returns the document body plus a flattened textContent field for easy reading. Optionally supply a fields mask to request a partial (e.g. metadata-only) response and skip the body-text enrichment. Use Find Document first to resolve a document's name to its ID. For multi-tab documents, pass a tabId to retrieve a single tab's content. See the documentation
Search for Google Docs by name or full-text content. Returns a list of {id, name, url, modifiedTime}. Use this first to resolve a document's name to its ID, then pass the id to Get Document, Export Document, or any of the insert/replace tools. See the documentation
Export (download) a Google Doc to a file in PDF, DOCX, TXT, HTML, or ODT format. Use Find Document to resolve a document's name to its ID. The file is written to the workflow's temporary storage and a presigned download URL is returned to the caller. Returns {filePath, filename, mimeType}. See the documentation
Remove an entire table, structure and contents, from the document. Use this to clear a table completely, including an empty table left behind after its text was removed. Set Table Number to pick which table to remove (1 = first top-level table in the document, in reading order; a table nested inside another table's cell doesn't count separately). Use Get Document first if you need to confirm how many tables exist. This also works on a table linked to a Google Sheet, since removal is treated as ordinary content deletion. Use Find Document to resolve a document's name to its ID. See the documentation
Create a new Google Doc with an optional body. The body is rendered as Markdown, so you can include headings (# Title), bold/italic, bullet/numbered lists, links, and code. Optionally place the doc in a specific Drive folder. Returns {documentId, title, url}. See the documentation
Create a new Google Doc by copying a template document and substituting {{placeholder}} tokens with values. Use Find Document to resolve the template's name to its ID. Returns {documentId, title, url}. See the documentation
Append text to an existing document. See the documentation
Get the content of a tab in a document. See the documentation
Appends an image to the end of a document. See the documentation