Spaces:
Sleeping
Sleeping
| # Tools | |
| This directory contains all MCP tool definitions for the Google Docs, Sheets, Drive, Gmail, and Calendar server. Tools are organized into domain-specific folders, each with its own router (`index.ts`) that registers its tools with the server. | |
| ## Architecture | |
| ``` | |
| tools/ | |
| βββ index.ts # Top-level router β delegates to each domain | |
| βββ docs/ # Google Docs API operations | |
| βββ drive/ # Google Drive file and folder management | |
| βββ sheets/ # Google Sheets operations | |
| βββ gmail/ # Gmail message and label operations | |
| βββ calendar/ # Google Calendar event operations | |
| βββ utils/ # Cross-cutting workflow utilities | |
| ``` | |
| Each domain folder contains: | |
| - **`index.ts`** β A router that registers all tools in the domain | |
| - **`README.md`** β Documentation of the domain and its tools | |
| - **Individual tool files** β One file per tool, each exporting a `register(server)` function | |
| ## Domains | |
| | Domain | Tools | Description | | |
| | ----------------------- | ----: | ---------------------------------------------------------------- | | |
| | [docs](./docs/) | 14 | Read, write, format, and comment on Google Documents | | |
| | [drive](./drive/) | 12 | Search, create, move, copy, rename, and delete files and folders | | |
| | [sheets](./sheets/) | 11 | Read, write, append, format, validate, and manage spreadsheets | | |
| | [gmail](./gmail/) | 13 | Read, send, draft, label, trash, and triage Gmail messages | | |
| | [calendar](./calendar/) | 5 | List, create, update, delete, and quick-add Calendar events | | |
| | [utils](./utils/) | 2 | Markdown conversion and other cross-cutting workflows | | |
| ## Adding a New Tool | |
| 1. Create a new file in the appropriate domain folder (e.g., `docs/myNewTool.ts`) | |
| 2. Export a `register(server: FastMCP)` function that calls `server.addTool({...})` | |
| 3. Import and call it from the domain's `index.ts` router | |