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
getWMA
[ remote ]Calculate the Weighted Moving Average (WMA) for a stock using the FMP WMA API. This tool helps users analyze trends and identify potential buy or sell signals based on historical price data.
github_support_docs_search
[ remote ]Retrieve documentation relevant to answer GitHub product and support questions. Support topics include: GitHub Actions Workflows, Authentication, GitHub Support Inquiries, Pull Request Practices, Repository Maintenance, GitHub Pages, GitHub Packages, GitHub Discussions, Copilot Spaces
Gmail_ArchiveEmail
[ remote ]Archive exactly one email: remove inbox membership; email stays searchable.
gmail_batch_delete
[ remote ]Permanently delete multiple messages at once. Maximum 1000 IDs per request. Irreversible.
gmail_batch_modify
[ remote ]Add or remove labels on multiple messages at once. Maximum 1000 IDs per request.
Gmail_ChangeEmailLabels
[ remote ]Add or remove one user-created label on at most 50 messages per call. A message already in the requested state is a noop, but the tool is not idempotent in query mode: repeated calls with the same query advance to the next chunk, so a blind retry can label further messages. This lane does not accept Gmail system labels or triage state changes. Selector and label validation finish before mutation. Query selectors may match more than 50 messages; each call processes up to 50 remaining actionable matches. A query with zero matches returns requested=0, items=[], complete=true, and all_matches_processed=true (vacuous completion).
Gmail_ChangeThreadLabels
[ remote ]Add and remove labels on every message in a thread using the Gmail API. Use this to change a whole conversation at once (for example, marking a thread read by removing "UNREAD") instead of modifying each message. Label names match case-insensitively when there is no exact match. The confirmation reflects the labels actually present across the thread after the change, not the requested input.
gmail_create_draft
[ remote ]Create a new draft email. The draft can be sent later with gmail_send_draft.
gmail_create_label
[ remote ]Create a new user label for organizing messages.
Gmail_CreateLabel
[ remote ]Create a new label in the user's mailbox. Gmail treats label names as case-insensitive-unique; creating a name that already exists reports a conflict rather than a duplicate. Documented Gmail reserved SYSTEM label names (INBOX, SPAM, TRASH, …) are rejected before calling Gmail. Google's published list is non-exhaustive; upstream create errors remain the backstop for any other reserved name.
gmail_delete_draft
[ remote ]Delete a draft. This permanently removes the draft.
gmail_delete_label
[ remote ]Delete a user-created label. System labels cannot be deleted. Messages with this label are not deleted.
gmail_delete_message
[ remote ]Permanently delete a message. This action is irreversible — use gmail_trash_message for safe deletion.
Gmail_DeleteDraftEmail
[ remote ]Delete a draft email using the Gmail API.
Gmail_DeleteLabel
[ remote ]Delete a user-created label, resolving it by the name the user says. A misspelled name gets a close-match suggestion; a system label is rejected. Deleting a label removes it from the mailbox and from every message it was applied to.
Gmail_ForwardEmail
[ remote ]Send a copy of one message to new recipients as a new conversation. The forward quotes the original body, prefixes the subject with ``Fwd:``, carries filename-bearing attachments, and prepends the optional note. It does not reply to or change the original conversation.
gmail_get_attachment
[ remote ]Get attachment data for a message. Returns base64url-encoded data. Find attachment IDs in the message payload parts.
gmail_get_draft
[ remote ]Get a specific draft by ID, including the draft message content.
gmail_get_label
[ remote ]Get details for a specific label, including message and thread counts.
gmail_get_message
[ remote ]Get a specific message by ID. Returns headers, body, labels, and metadata. Use format=full for parsed body or format=raw for RFC 2822.
gmail_get_profile
[ remote ]Get the authenticated user's Gmail profile — email address, total message count, total thread count, and history ID.
gmail_get_thread
[ remote ]Get all messages in a thread (conversation). Returns the complete email chain.
Gmail_GetEmail
[ remote ]Read one message by ID without loading the rest of its thread. Returns parsed sender and recipient headers, the subject, text and HTML bodies, labels, dates, and attachment metadata. Attachment file bytes are not returned.
Gmail_GetThread
[ remote ]Get the specified thread by ID.
gmail_list_drafts
[ remote ]List all drafts in the mailbox.
gmail_list_labels
[ remote ]List all labels in the mailbox, including system labels (INBOX, SENT, etc.) and user-created labels.
gmail_list_messages
[ remote ]List messages in the mailbox. Supports Gmail search syntax for filtering (e.g., from:, to:, subject:, is:unread, has:attachment).
gmail_list_threads
[ remote ]List email threads (conversations). Supports the same search syntax as gmail_list_messages.
Gmail_ListDraftEmails
[ remote ]Lists draft emails in the user's draft mailbox using the Gmail API.
Gmail_ListEmailAttachmentMetadata
[ remote ]List metadata for a message's real attachments without loading their contents. Only genuine attachments are reported; unnamed body parts and body-embedded inline images are excluded. Each row includes its filename, MIME type, size, and Gmail attachment id when Gmail provides one.