Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| BLOB_STORAGE_ROOT | No | Path to the blob storage directory. Required for resource-based file uploads. | |
| BLOB_STORAGE_TTL_HOURS | No | Time-to-live for blobs in hours. Blobs older than this will be automatically cleaned up (optional, default: 24) | 24 |
| BLOB_STORAGE_MAX_SIZE_MB | No | Maximum file size in MB for blob storage (optional, default: 100) | 100 |
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| read_google_doc | Read the content of a Google Document. Returns the document content in the specified format. Use 'text' for plain content, 'json' for full structure, or 'markdown' for formatted output. |
| list_document_tabs | List all tabs in a Google Document, including their hierarchy, IDs, and structure. |
| append_to_google_doc | Append text to the very end of a Google Document or specific tab. |
| insert_text | Insert text at a specific index within a document or tab. |
| delete_range | Delete content within a specified range from a document or tab. |
| apply_text_style | Apply character-level formatting (bold, color, font, etc.) to text. Target can be specified either by:
|
| apply_paragraph_style | Apply paragraph-level formatting (alignment, spacing, headings, etc.). Target can be specified by:
|
| format_matching_text | Find specific text and apply character formatting to it. This is a convenience tool that combines text search with formatting. |
| insert_table | Insert a new table with specified dimensions at a given index. |
| insert_page_break | Insert a page break at the specified index. |
| insert_image_from_url | Insert an inline image from a publicly accessible URL. |
| bulk_update_google_doc | Execute multiple document operations in a single batched API call for improved performance. This tool allows you to perform many operations at once instead of making separate tool calls. Operations are batched into groups of up to 50 requests (Google Docs API limit) and executed sequentially. This significantly reduces latency when making complex document changes. Performance: 5-10x faster than individual tool calls for multi-operation workflows. |
| list_comments | List all comments in a Google Document. |
| get_comment | Get a specific comment with its full thread of replies. |
| add_comment | Add a comment anchored to a specific text range in the document. NOTE: Due to Google API limitations, comments created programmatically appear in the 'All Comments' list but may not be visibly anchored in the UI. |
| reply_to_comment | Add a reply to an existing comment. |
| resolve_comment | Mark a comment as resolved. NOTE: Due to Google API limitations, the resolved status may not persist in the Google Docs UI for all document types. |
| delete_comment | Delete a comment from a document. |
| list_google_docs | List Google Documents from your Google Drive with optional filtering. |
| search_google_docs | Search for Google Documents by name, content, or other criteria. |
| get_recent_google_docs | Get the most recently modified Google Documents. |
| get_document_info | Get detailed information about a specific Google Document. |
| create_folder | Create a new folder in Google Drive. |
| list_folder_contents | List the contents of a specific folder in Google Drive. |
| upload_image_to_drive | Upload an image to Google Drive. Accepts an image as ImageContent (base64-encoded data with MIME type) and uploads it to Google Drive. Returns the file ID and web link for the uploaded image. |
| upload_file_to_drive | Upload a file to Google Drive from base64-encoded data. Accepts file data in base64 format and uploads it to Google Drive. Supports any file type. Returns the file ID and web link. |
| create_google_doc | Create a new blank Google Document. Returns the document ID and web link for the newly created document. |
| create_google_doc_from_markdown | Create a new Google Document with content imported from markdown. Uses Google Drive API's native markdown import (July 2024+). Supports standard markdown syntax. Complex formatting is converted using Google's native markdown parser. Returns the document ID and web link for the newly created document. |
| upload_image_to_drive_from_resource | Upload an image to Google Drive from a resource identifier. The resource identifier references a blob in the shared blob storage volume (mapped via Docker volumes) that can be accessed by multiple MCP servers. This allows other MCP servers to upload resources to the blob storage, and this server can then upload those resources to Google Drive without needing to transfer the actual file data through the MCP protocol. Returns the file ID and web link for the uploaded image. |
| upload_file_to_drive_from_resource | Upload a file to Google Drive from a resource identifier. The resource identifier references a blob in the shared blob storage volume (mapped via Docker volumes) that can be accessed by multiple MCP servers. This allows other MCP servers to upload resources to the blob storage, and this server can then upload those resources to Google Drive without needing to transfer the actual file data through the MCP protocol. Supports any file type. Returns the file ID and web link. |
| insert_image_from_resource | Insert an image into a Google Document from a resource identifier. The resource identifier references a blob in the shared blob storage volume (mapped via Docker volumes) that can be accessed by multiple MCP servers. The image is first uploaded to Google Drive, then inserted into the document. |
| create_bullet_list | Create a bulleted or numbered list from a range of paragraphs. Converts existing paragraphs within the specified range into a list. To create a nested list, use different nesting levels. |
| replace_all_text | Find and replace all instances of text in the document. This replaces ALL occurrences of the find text with the replacement text. |
| insert_table_row | Insert a new row into an existing table. The table_start_index is the document index where the table begins. Row indices are 0-based (0 is the first row). |
| delete_table_row | Delete a row from an existing table. |
| insert_table_column | Insert a new column into an existing table. Column indices are 0-based (0 is the first column). |
| delete_table_column | Delete a column from an existing table. |
| update_table_cell_style | Style a table cell (background, padding, borders). Cell positions are 0-based. Provide at least one style property. |
| merge_table_cells | Merge table cells into a single cell. Creates a merged cell starting at (start_row, start_column) spanning the specified number of rows and columns. |
| unmerge_table_cells | Unmerge previously merged table cells. Splits a merged cell back into individual cells. |
| create_named_range | Create a named range for cross-referencing. Named ranges allow you to reference specific portions of a document by name instead of by index positions. |
| delete_named_range | Delete a named range. The named range ID is returned when creating a named range. |
| insert_footnote | Insert a footnote at the specified index. Footnotes appear at the bottom of the page and are automatically numbered. |
| insert_table_of_contents | Insert a table of contents at the specified index. The table of contents is auto-generated from document headings (HEADING_1 through HEADING_6). It updates automatically when headings change. |
| insert_horizontal_rule | Insert a horizontal rule (divider line) at the specified index. Horizontal rules are useful for visually separating sections of content. |
| insert_section_break | Insert a section break at the specified index. Section breaks allow different page layouts in different sections of the document.
|
| move_file | Move a file to a different folder in Google Drive. By default, removes the file from all current parent folders. Set remove_from_current_parents=False to keep the file in multiple locations. |
| copy_file | Create a copy of a file in Google Drive. Returns the new file's ID and web link. |
| trash_file | Move a file to trash. The file can be restored using restore_file. |
| restore_file | Restore a file from trash. The file will be restored to its original location. |
| permanently_delete_file | Permanently delete a file (cannot be recovered). WARNING: This action cannot be undone. The file will be permanently deleted. |
| star_file | Star/favorite a file in Google Drive. Starred files appear in the "Starred" section for easy access. |
| unstar_file | Remove star from a file in Google Drive. |
| share_document | Share a Google Document with a specific user. Grants the specified permission level (reader, writer, or commenter) to the user. Optionally sends an email notification with a custom message. |
| list_permissions | List all permissions on a document. Shows who has access to the document and their permission levels. |
| remove_permission | Remove a user's access to a document. The permission ID can be obtained from list_permissions. |
| update_permission | Change a permission's role. The permission ID can be obtained from list_permissions. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |