Conversation
…fety This commit extends the initial tabs support from PR #22 with the following improvements: **Core Enhancements:** - Add tabId support to write operations (appendToGoogleDoc, insertText, deleteRange) - Improve type safety by replacing 'any' types with proper TypeScript interfaces - Create TabWithLevel interface for better type checking - Fix getTabTextLength to handle tables in addition to paragraphs **Documentation:** - Add comprehensive tabs documentation to README.md - Include usage examples for tab operations - Document which tools support the tabId parameter **Technical Improvements:** - Use proper docs_v1.Schema$Tab and docs_v1.Schema$DocumentTab types - Add tab validation in write operations - Improve error messages for tab-related operations - Maintain backward compatibility for documents without tabs This builds upon the foundational work in PR #22, completing the tabs feature by adding full read/write support with robust type safety. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com> Co-Authored-By: Chris Alfano <chris@jarv.us>
This commit enhances the README.md by adding a new section on testing for the multi-tab support features. It includes: - A list of tested features related to tab operations, such as `listDocumentTabs`, `readGoogleDoc`, `appendToGoogleDoc`, `insertText`, and `deleteRange`. - Confirmation of tab isolation, proper validation, and backward compatibility with single-tab documents. - Troubleshooting tips for tab-related errors. This documentation update ensures users are informed about the functionality and reliability of the new tab features introduced in previous commits.
This commit updates the README.md to include new features and improvements related to the Google Docs MCP server. Key additions include: - Enhanced documentation for multi-tab support, including usage examples for reading and writing to specific tabs. - New sections for comment management and Google Drive file management, detailing tools like `listComments`, `addComment`, and document discovery features. - Clarifications on parameters and examples for image insertion tools, including `insertImageFromUrl` and `insertLocalImage`. - General formatting improvements and additional notes on advanced usage scenarios. These updates ensure users have comprehensive guidance on utilizing the latest functionalities introduced in recent commits.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Multi-Tab Document Support
Summary
This PR extends the previous tab support work (PR #22) with comprehensive multi-tab document functionality, including full read/write support and enhanced type safety.
Features Added
New Tool
listDocumentTabs- Lists all tabs in a document with hierarchy, IDs, titles, positions, and optional content summariesEnhanced Tools (with
tabIdparameter)readGoogleDoc- Now supports reading from specific tabs via optionaltabIdparameterappendToGoogleDoc- Can append to specific tabs without affecting othersinsertText- Can insert text into specific tabsdeleteRange- Can delete content from specific tabs in isolationImplementation Details
googleDocsApiHelpers.ts:getAllTabs()- Recursively collect all tabs with hierarchy informationfindTabById()- Locate specific tabs by IDTabWithLevelinterface for hierarchy trackingtabIddefault to first tabTesting Status
✅ All Tests Passed
Comprehensive testing verified:
Files Modified
src/server.ts- Added tab support to tools and newlistDocumentTabstoolsrc/googleDocsApiHelpers.ts- Added tab management helper functionsREADME.md- Added comprehensive documentation for tab features and testing sectionBreaking Changes
None - All changes are fully backward compatible.
Related
Extends and completes work from PR #22.