[ agent capabilities ]

The MCP tool directory.

Each row is one tool from one provider. Tools sharing a name across providers (e.g. search) are listed separately because they aren't interchangeable.

[ 3313 tools indexed ]

[ all tools ]

30 / 3313

Google Drive /

GoogleDrive_RenameFile

[  remote  ]

Rename a file or folder in Google Drive. By default, paths are resolved in My Drive. For files in shared drives, either use the file ID directly or provide the shared_drive_id parameter.

Google Drive /

GoogleDrive_RevokeFileAccess

[  remote  ]

Revoke access for specific people or groups on a Google Drive file. Identifies matches by email (exact, case-insensitive) or display name. When an input matches multiple people, the clear matches are still revoked and the ambiguous input is surfaced in the `ambiguous` response field with candidate details so the agent can re-prompt the user for just the uncertain ones. Inputs that don't match any collaborator are returned in `not_found`. Pending-owner matches (mid-ownership-transfer) are skipped and surfaced in `skipped_pending_owner` so the clean revokes in the batch still land. Owner permissions cannot be revoked -- transfer ownership first. When a grantee has both a direct and an inherited permission (e.g., shared-drive member also granted directly on the file), revoking the direct row leaves the inherited access intact. The inherited row is surfaced in `skipped_inherited` so callers don't assume the grantee is fully removed -- inherited access must be adjusted at the shared drive level.

Google Drive /

GoogleDrive_SearchDrive

[  remote  ]

Search the user's entire Google Drive, including files they created or received directly in Drive — not only files created through this app. Reads across the user's whole Drive, so it requires broad read access to their files. The provided 'query' should contain only the search terms; the tool builds the full Drive query for you, matching file names and contents.

Google Drive /

GoogleDrive_SearchFiles

[  remote  ]

Search for files in Google Drive. The provided 'query' should only contain the search terms. The tool will construct the full search query for you.

Google Drive /

GoogleDrive_SetGeneralAccess

[  remote  ]

Change the 'General access' (link sharing) setting on a Google Drive file. Idempotent: calling with the same state as the current configuration is a no-op. When access is 'domain', the link is scoped to the caller's email domain -- NOT the file owner's domain. For cross-org collaboration (e.g., editing a file owned by another organization), confirm with the user which domain they intend before calling. Google will reject domain sharing for personal accounts (gmail.com, outlook.com, etc.) -- the tool translates that rejection into a friendly error. The response's `access` and `role` fields report the EFFECTIVE state after the transition, not the requested state. For files on shared drives, inherited link permissions cannot be changed from the file level -- if the request would have required removing an inherited permission, the effective state will reflect the inherited permission that remained. When `skipped_inherited` is non-empty, inspect it to understand why effective state may differ from what was requested.

Google Drive /

GoogleDrive_ShareFile

[  remote  ]

Share a file or folder in Google Drive with specific people by granting them permissions. If a user already has permission on the file, their role will be updated to the new role. By default, paths are resolved in My Drive. For shared drives, use file IDs or provide shared_drive_id.

Google Drive /

GoogleDrive_UploadFile

[  remote  ]

Upload a file to Google Drive from a URL. Fetches the file content from the provided URL and uploads it to Google Drive. Supports files of any size - uses resumable upload internally for large files. CANNOT upload Google Workspace files (Google Docs, Sheets, Slides) CANNOT upload files larger than 25MB

Google Drive /

GoogleDrive_WhoAmI

[  remote  ]

Get comprehensive user profile and Google Drive environment information. This tool provides detailed information about the authenticated user including their name, email, profile picture, Google Drive storage information, the shared drives (and their IDs) the user has access to, and other important profile details from Google services.

Google Sheets /

GoogleSheets_CheckSpreadsheetAccess

[  remote  ]

Check whether this app can already read each of several spreadsheets, in one batched pre-flight call, before attempting to read them. Use this when the user references multiple spreadsheets so any that are not yet accessible can be granted together in a single picker step, instead of hitting a separate access error and grant prompt for each one. Each input may be a bare file id or a full Google Sheets/Drive URL. Returns ``spreadsheets`` (a per-id list with ``accessible``, the ``title`` and ``mime_type`` when the file was read, and a ``reason`` when not usable), ``all_accessible`` (true only when every id is an already-accessible spreadsheet), ``connected_account_email`` (the connected Google account, empty when unknown), and a ``grant`` block. ``grant`` is empty when nothing needs granting; otherwise it lists the ungranted ids (``ungranted_ids``) plus, when the inline picker is enabled, a single picker URL covering them all. A ``reason`` of ``not_accessible_or_not_found`` is either a file not granted to this app yet or one that does not exist (indistinguishable here) — the picker resolves the former. ``not_a_spreadsheet`` is an accessible file of another type (a Doc, PDF, image, or Excel/CSV file); granting cannot change a type, so for an Excel/CSV file ask the user to open it in Google Sheets and use File, Save as Google Sheets, then share the converted file. ``invalid_reference`` is an input that is not a Drive id or link at all; ask the user to re-check it.

Google Sheets /

GoogleSheets_CommentOnSpreadsheet

[  remote  ]

Create a comment on a spreadsheet, edit a comment's body, or resolve/reopen it. Comments are created at the file level: the Drive API cannot anchor a NEW Sheets comment to a specific cell or range. Cell/range-anchored comments made in the Sheets UI are still readable via list_spreadsheet_comments (which returns their anchor). Editing a comment's body is allowed only for the comment's author.

Google Sheets /

GoogleSheets_CreateOrEditSpreadsheet

[  remote  ]

Create a new spreadsheet or batch-edit an existing one. Omit `spreadsheet_id` to create; provide it to edit. All writes flow through `requests[]` — typed operations like updateCells, addSheet, sortRange, addConditionalFormatRule, autoResizeDimensions, and more. For updateCells use ExtendedValue with an explicit type field (stringValue, numberValue, boolValue, formulaValue). By default, build clean, professional-looking tables with restrained, consistent formatting and plain-text tab names/headers (no emojis); only use emojis or decorative styling when the user explicitly asks for it.

Google Sheets /

GoogleSheets_DeleteComment

[  remote  ]

Delete a comment from a spreadsheet. Only the comment's author can delete it (enforced by Google Drive); deleting marks the whole thread (the comment and its replies) as deleted.

Google Sheets /

GoogleSheets_GenerateGoogleFilePickerUrl

[  remote  ]

Generate a URL where the user can grant this app access to spreadsheets. Opens Google's first-party Drive picker, filtered to Google Sheets, where the user browses and selects which spreadsheets to share with this application — it is not a sign-in or credential prompt. Use this when a prior tool reported that a file was not found or access was denied, and the user expects the file to exist. After the user completes the picker flow, retry the prior operation.

Google Sheets /

GoogleSheets_GetSpreadsheetEditHistory

[  remote  ]

Report who edited a spreadsheet and when, from Google Drive revisions. Reports the "who" and "when" only — not which cells changed, and it can't revert. 'summary' (default) answers "who last edited this and when" (read from the file's head, so always accurate), plus per-window aggregates (revisions read, contributors, first edit) and a preview of recent edits — computed over a bounded window of history per call. These aggregates describe the whole history only when `is_incomplete` is false; it is true when the scan was resumed from a token and/or more history remains. To answer "when was this first edited?" or "who contributed?" reliably, call from the beginning (no `pagination_token`) and check `is_incomplete` is false. `pagination_token` is returned when more pages remain so you can resume. 'list' returns one page of individual revisions, oldest first. Drive can't sort newest-first, so the most recent individual revisions are on the final page.

Google Sheets /

GoogleSheets_InspectSpreadsheet

[  remote  ]

Inspect a Google Sheets spreadsheet's structure or read a range of cells. Use the default 'structure' mode to understand a workbook cheaply before reading. Switch to 'read' mode to pull a range as a grid of rows, optionally with per-cell annotations and a rendered markdown/csv/tsv export. In 'read' mode the response's per-tab 'sheets' block reports only tab identity and the allocated grid; its scan-derived fields (used_range, populated_cell_count, formula_cell_count, first_row, table_regions) are placeholders (0/empty) because read mode does not scan the tab — they do NOT mean the tab is empty or that it has no tables. The data you read is in the top-level 'range' and 'rows'. Call 'structure' mode for those aggregates and for the workbook's charts, merges, protected ranges, and conditional formats. Workflow for a tab that holds multiple tables, or a table that does not start at A1: call 'structure' first and use that tab's estimated 'table_regions' to choose the a1_range to read or filter, so you target one table instead of a glued multi-table range. Always check the response's top-level 'warnings' list: read mode reports there when a result was capped or trimmed (cell budget, the per-cell annotation cap, or an empty filter scan) and tells you how to recover (page 'next_range', narrow 'a1_range', 'select_columns', or request fewer annotation kinds).

Google Sheets /

GoogleSheets_ListSpreadsheetComments

[  remote  ]

List a spreadsheet's comment threads, or the full replies of a single comment. In 'comments' mode each comment includes up to a few trimmed reply previews plus the total reply_count; use 'thread' mode for a comment's complete reply list. Without filters/ordering, pagination walks every comment. Client-side filters (has_replies, resolved) and order_by are applied only within a bounded scan of the first 500 comments, so on larger sheets drop them and page through everything with the native (unbounded) pagination. Each comment's Drive anchor is returned when it was cell/range-anchored in the Sheets UI; comments created via the API are file-level. Filtering, ordering, and offset pagination are best-effort: results can drift if comments are added or removed between paginated calls.

Google Sheets /

GoogleSheets_ReplyToComment

[  remote  ]

Add a reply to an existing comment on a spreadsheet. To resolve or reopen the comment instead, use comment_on_spreadsheet with a status.

Google Sheets /

GoogleSheets_ScanForDataIssues

[  remote  ]

Deterministically flag 'weird'/bad cells in spreadsheet data. No LLM judgement: the same input always returns the same flags. Each cell-level finding carries a coord, a 0-based row_index/column_index (ready for a Sheets GridRange), the rule, a severity (high -> red, medium/low -> yellow), and a note-ready reason — so the output drops straight into an annotate/format recipe. In the default `mode='grouped'` these are aggregated per rule+column within each table into `groups` (with A1 `coords`); use `mode='list'` to get every flagged cell in `flags` with its 0-based indices. Provide `spreadsheet_id` to scan a live sheet (scan one tab via sheet_id/sheet_title, or every tab when both are omitted). Set `orientation='rows'` for transposed tables whose fields run down a column instead of across a row. Findings come back as flags (cell-level, high certainty) and alerts (table-level, lower certainty), grouped sheet -> table -> rule. In all-sheets mode an unreadable tab never aborts the scan: its title is collected in `failed_sheets` (and echoed as a `warnings` entry) while every other tab still returns. `failed_sheets` is empty for a single-tab scan and whenever every tab reads cleanly.

Google Sheets /

GoogleSheets_SearchSpreadsheets

[  remote  ]

Searches for spreadsheets in the user's Google Drive based on the titles and content and returns the title, ID, and URL for each matching spreadsheet. Does not return the content/data of the sheets in the spreadsheets - only the metadata. Excludes spreadsheets that are in the trash.

Google Sheets /

GoogleSheets_WhoAmI

[  remote  ]

Get comprehensive user profile and Google Sheets environment information. This tool provides detailed information about the authenticated user including their name, email, profile picture, Google Sheets access permissions, and other important profile details from Google services.

Hugging Face Inference Endpoints /

gr1_z_image_turbo_generate

[  remote  ]

Generate an image using the Z-Image model based on the provided prompt and settings. This function is triggered when the user clicks the "Generate" button. It processes the input prompt (optionally enhancing it), configures generation parameters, and produces an image using the Z-Image diffusion transformer pipeline. Returns: tuple: (gallery_images, seed_str, seed_int), - seed_str: String representation of the seed used for generation, - seed_int: Integer representation of the seed used for generation (from mcp-tools/Z-Image-Turbo)

Greeting & Utilities /

greeting

[  remote  ]

Friendly greeting tool that can greet users in various languages

Google Sheets /

gs_add_chart

[  remote  ]

Add a chart to a sheet. Specify chart type, data range, and anchor position. The chart is overlaid on the sheet.

Google Sheets /

gs_add_protected_range

[  remote  ]

Protect a range of cells from editing. Optionally allow specific editors or show a warning instead of blocking.

Google Sheets /

gs_add_sheet

[  remote  ]

Add a new sheet/tab to a spreadsheet. Optionally set row/column count and tab color.

Google Sheets /

gs_append_values

[  remote  ]

Append rows after the last row with data in the specified range. Automatically finds the end of existing data and adds new rows below.

Google Sheets /

gs_auto_resize

[  remote  ]

Auto-resize columns or rows to fit their content.

Google Sheets /

gs_batch_read

[  remote  ]

Read values from multiple ranges at once. More efficient than multiple gs_read_values calls.

Google Sheets /

gs_batch_update

[  remote  ]

Send a raw batchUpdate request with one or more request objects. Use this for advanced operations not covered by other tools (e.g. conditional formatting, data validation, dimension properties). See Google Sheets API batchUpdate documentation for available request types.

Google Sheets /

gs_batch_write

[  remote  ]

Write values to multiple ranges at once. More efficient than multiple gs_write_values calls.