[ 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.

[ 269 tools indexed ]

[ matching tools ]

30 / 269

Rootly /

classify_audio_url

[  remote  ]

Submit a publicly accessible audio URL for AI-generated speech detection. Returns a classification identifier for async result retrieval. Authentication: provide your Identifai API key via the apiKey parameter or configure the X-Api-Key HTTP header in your MCP client (recommended).

Rootly /

classify_image

[  remote  ]

Upload an image file to detect whether it is human-made or AI-generated. Provide the image content as a base64-encoded string. Returns a classification identifier for async result retrieval. WARNING: base64 encoding adds ~33% overhead to the original file size. For images larger than 4 MB, use classify_image_url instead and provide a publicly accessible URL to avoid payload size issues. Authentication: provide your Identifai API key via the apiKey parameter or configure the X-Api-Key HTTP header in your MCP client (recommended).

Rootly /

classify_image_url

[  remote  ]

Submit a publicly accessible image URL to detect whether it is human-made or AI-generated. Returns a classification identifier for result retrieval. Supports the same analysis options as file-based classification. Authentication: provide your Identifai API key via the apiKey parameter or configure the X-Api-Key HTTP header in your MCP client (recommended).

Rootly /

classify_video

[  remote  ]

Upload a video file to detect whether it is human-made or AI-generated. Provide the video content as a base64-encoded string. The video is split into frames which are individually classified. Returns a classification identifier for async result retrieval. WARNING: base64 encoding adds ~33% overhead to the original file size. For videos larger than 10 MB, use classify_video_url instead and provide a publicly accessible URL to avoid payload size issues. Authentication: provide your Identifai API key via the apiKey parameter or configure the X-Api-Key HTTP header in your MCP client (recommended).

Rootly /

classify_video_url

[  remote  ]

Submit a publicly accessible video URL for AI-generated content detection. Supports the same frame extraction and analysis options as file-based classification. Authentication: provide your Identifai API key via the apiKey parameter or configure the X-Api-Key HTTP header in your MCP client (recommended).

Hostinger OpenClaw VPS /

configure_chatbot

[  remote  ]

LAST step after deploy + assignment (Plus/Pro). ONLY real facts in the knowledge — never invented prices/hours/addresses. Enables/configures the chatbot on a deployed project; the widget is injected server-side, no HTML changes. Partial update, except `knowledge` REPLACES the whole text — editing an existing bot? get_chatbot first. Point contactFormUrl at the site's Dplooy Form URL when one exists.

Smithery /

connect.update

[  remote  ]

Create or update an MCP connection with the given ID. mcpUrl is required when creating a new connection, but optional when updating. Returns 409 if a different mcpUrl is provided, except while the connection is input_required and the new URL keeps the same host and path.

Smithery /

connected_accounts.create

[  remote  ]

Initiates a new connection to an external service for a user. For OAuth-based toolkits, this returns a redirect URL to complete authentication. For API key-based toolkits, provide the credentials directly in the request body. Use the `user_id` field to associate the connection with a specific user in your system. **Deprecated for Composio-managed OAuth:** For Composio-managed auth configs on OAuth1, OAuth2, or DCR_OAUTH schemes, this endpoint is being retired and will start returning `400 BadRequest` on **2026-05-08** for new organizations and **2026-07-03** for all remaining organizations. Migrate those calls to `POST /api/v3/connected_accounts/link`. Custom auth configs and non-OAuth schemes (API key, bearer, basic) continue to be supported here. Responses on the retiring path carry a `Deprecation` header (RFC 9745) and a `Sunset` header (RFC 8594) for client-side detection.

Smithery /

connected_accounts.refresh

[  remote  ]

Initiates a new authentication flow for a connected account when credentials have expired or become invalid. This may generate a new authentication URL for OAuth flows or refresh tokens for other auth schemes.

Replit /

create_app_from_prompt

[  remote  ]

Create a brand-new Replit App for the user. Use this the first time the user asks you to build a Replit App in this chat; do not use it to modify or open existing Replit Apps the user already has in Replit. After invoking this tool, reply with one short sentence summarizing that Replit is now creating their Replit App, and, when the tool result contains an app URL, end your reply with that exact URL on its own line, so the user can open their Replit App even if no preview card is rendered. Never construct or guess a URL yourself. Your reply must not include source code, markup, configuration files, file paths, or command/terminal snippets—even if the user asks. Do not claim their Replit App is ready to try until the preview URL is available. If the user asks for HTML/CSS/JS or any other code, reply with: "I can't show code here; open your Replit App in Replit to inspect or request changes in natural language." Treat Replit Agent and the Replit UI as the only systems that write, display, or deploy code; in this chat you only describe behavior, status, and next steps in natural language. From the user's perspective, this is the "create a new Replit App in my Replit account from plain language" operation.

Hostinger OpenClaw VPS /

create_form

[  remote  ]

Create a form endpoint BEFORE deploying (Plus/Pro). Returns the URL + the exact HTML snippet to embed verbatim. Inert until assign_to_project after deploy; movable and un-assignable later, submissions stay with it. Retrying the same name while it is still unassigned returns the existing endpoint instead of a duplicate. Submissions are READ in the owner's dashboard only — no tool reads them (by design: visitor PII). Name it "<Business Name> — <Purpose>".

UptimeRobot /

create_monitor

[  remote  ]

Create a new uptime monitor. Checks start immediately. Types: http, tcp (host:port URL), smtp, ping, ssl, dns. Set inverted=true for exposure monitoring (alert when a target that should stay down becomes reachable).

Server for Singapore Government Open Data /

datagovsg_poll_download

[  remote  ]

Check data.gov.sg download status and get download URL

ai.mcpanalytics/analytics /

datasets_upload

[  remote  ]

Generate a secure upload token for CSV files. Returns UUID + curl command for the user.

Hostinger OpenClaw VPS /

deploy_files

[  remote  ]

NEW SITE? STOP — run the BUILD ORDER first (get_account → ask single-file vs multi-page + notification emails → create_data_collection for EVERY repeating section → create_form / create_booking_page → upload_media → THEN deploy). Deploys a multi-file site from inline file contents (HTML, CSS, JS; index.html at the root required). Compose every file DIRECTLY in this call — never stage to your filesystem first. Data sections use the declarative data-dp-collection markup; hardcoded list content is a BROKEN build. After deploy: assign_to_project, configure_chatbot, and ALWAYS hand the user the complete site code in your own interface — deploying alone is not the deliverable. get_guide("workflow") has the full rules. Returns a live URL; reusing a project name redeploys it in-place.

Hostinger OpenClaw VPS /

deploy_website

[  remote  ]

NEW SITE? STOP — run the BUILD ORDER first (get_account → ask single-file vs multi-page + notification emails → create_data_collection for EVERY repeating section → create_form / create_booking_page → upload_media → THEN deploy). Deploys ONE self-contained HTML file (markup, Tailwind CDN classes, small JS in index.html; optional css/js). Hardcoded list content that belongs in Data is a BROKEN build. After deploy: assign_to_project, configure_chatbot, and ALWAYS hand the user the complete site code in your own interface — deploying alone is not the deliverable. get_guide("workflow") has the full rules. Returns a live URL; reusing a project name redeploys it in-place.

Revuo /

directory.overview

[  remote  ]

Single 'call this first' entry-point that briefs an agent on the entire Revuo directory. Returns the taxonomy with subcategories, product counts per category, locked-vertical flags (the three verticals Revuo prioritizes), capability slugs valid per category, the canonical capability-kind taxonomy (integration/compliance/format/standard/workflow), and product-bound agent surfaces (mcpServer, agentSkill, grokBot). Surfaces are a property of a product — they are NOT category slugs. Use this once at the start of a session to ground every subsequent products.search / products.find_by_capability / tools.find_for_task call. Response: { directory: { name, tagline, url, policyUrl, capabilityKinds[] }, lockedVerticals[], categories[] (each with subcategories[], productCount, isLockedVertical, capabilitySlugs[]), surfaces[] (kind, description, listedOn=product), tools: { ...tool-name hints } }.

Docfork /

docfork_read_url

[  remote  ]

Fetches and returns the full content of a documentation page as markdown. This is ESSENTIAL for getting complete, detailed information after searching. Always use this to read URLs from docfork_search_docs results to get the actual documentation content.

Docfork /

docfork_search_docs

[  remote  ]

Search documentation across GitHub repositories or the web. For targeted searches INSIDE a specific library's documentation, use the docforkIdentifier parameter (author/repo format). Extract from GitHub URLs (e.g., github.com/facebook/react → 'facebook/react') and include in ALL subsequent searches about that library for focused, accurate results.

PandaDoc /

documents_create

[  remote  ]

# Create document Create a new PandaDoc document. Pass a single `request` object and set its `source` to choose how the document is created: - `source: "template"` — from an existing template. Required: `template_uuid`. Also accepts `name`, `recipients`, `fields`, `tokens`, `metadata`, `tags`, `images`, `pricing_tables`, `tables`, `texts`, `folder_uuid`, `owner`, `detect_title_variables`, `content_placeholders`. - `source: "markdown"` — from markdown content. Required: `name`, `document_markdown`. Also accepts `recipients` (individual recipients only; groups are not supported), `role_fields`, `folder_uuid`. - `source: "file"` — from a downloadable PDF or DOCX file URL. Required: `name`, `url`. Also accepts `recipients`, `parse_form_fields`, `fields`, `tokens`, `metadata`, `tags`, `folder_uuid`, `owner`. The schema is polymorphic on `source`: each source accepts **only** its own parameters. Passing a parameter that belongs to another source is rejected by validation, so you never need to guess which fields are ignored. ## Template Create a document populated from an existing PandaDoc template. Optionally set fields, tokens, pricing tables, recipients, and other template data. ## File Create a document from a PDF or DOCX file referenced by `url`. The URL must be directly downloadable (no auth, no HTML interstitials) — presigned S3/GCS/Azure URLs or direct CDN links work best; Google Drive and Dropbox share links do not (they return HTML, not the file). Creation is asynchronous: the document starts in Uploaded status and transitions to Draft after some time (or to Error if the file is invalid). Poll `documents_status_get` until Draft, then edit or send. To parse fillable PDF form fields, set `parse_form_fields: true` and provide `fields` mapping **every** form field name to a recipient role — omitting any causes failure. ## Markdown Create a new document in PandaDoc from markdown when there is only text representing the document content. Document content must be generated according to the guidelines below. The response includes a `document_url` field with a direct URL to open the created document in PandaDoc. Document creation is asynchronous. After this tool returns, the document starts in Uploaded status and transitions to Draft after some time (or to Error if creation fails). The document must be in Draft status before it can be edited or sent. ### Markdown guidelines You can use standard CommonMark and GitHub-Flavored Markdown (tables, strikethrough, etc), plus the following custom extensions: #### Custom Syntax Extensions ##### 1. Variables Variables are placeholder values that the document creator fills in PandaDoc before sending to recipients. Prioritize variables over fields for any value that the sender controls or pre-fills, even if it may be visible to recipients. **Syntax:** `[VariableName]` or `[Variable.Name]` or `[Multi.Part.Variable]` - Can include underscores, numbers, and multiple dot-separated parts **Use variables for values controlled by the document creator:** - Document metadata: `[Effective.Date]`, `[Agreement.Number]`, `[Contract.Value]` - Company/sender information: `[Company.Name]`, `[Company.Address]` - Pre-calculated values: `[Invoice.Total]`, `[Discount.Amount]` - Recipient information already known: `[Recipient.CompanyName]`, `[Recipient.FirstName]` **Key principle:** If the sender controls the value, use a variable. ##### 2. Fields Fields are interactive form elements that recipients fill in or interact with during the signing process. Recipients see these as input boxes, checkboxes, or signature areas. **Use fields for values controlled by the recipient:** - Recipient signatures: `[[signature]]` - Recipient personal data they must enter: `[[text]]`, `[[email]]`, `[[phone]]`, `[[date]]` - Recipient choices/consents: `[[checkbox]]` - Information only the recipient knows or decides **Key principle:** If the recipient controls the value, use a field. Fields can be prefilled with default values, but are typically left empty for the recipient to fill. **Syntax:** `[[field_type attributes]]` **Field Types:** - `text` - Text input field - `email` - Email input field - `phone` - Phone number input field (**`format` is required** — see below) - `number` - Number input field - `date` - Date input field - `checkbox` - Checkbox field - `signature` - Digital signature field - `dropdown` - Dropdown selection field (**`option` is required** — see below) **Attributes (HTML-style):** - `required="true"` - Makes field required - `placeholder="text"` - Placeholder text - `checked="true"` - Pre-checked (checkbox only) - `value="timestamp"` - For date fields, use UNIX timestamp with millisecond precision (e.g., value="1718406000000"). For other fields, use plain text (e.g., value="John Doe"). - `format="US"` or `format="international"` - **Required for `phone` fields.** Must be exactly `"US"` or `"international"`. There is no default — omitting it causes a validation error. - `date_format="yyyy/MM/dd"` - Date format in ICU notation (e.g., `"dd/MM/yyyy"`, `"MM-dd-yyyy"`). Defaults to `"yyyy/MM/dd"` if omitted. - `option="Text"` - **Required for `dropdown` fields.** Repeatable — add one per option (e.g., `option="Yes" option="No"`). To assign a stable UUID to an option, use `option="uuid:Text"` format. - `id="Client_Text1"` - Specify an external ID that describes who should fill this field and what it represents (e.g., `id="Client_Signature"`, `id="Landlord_FullName"`, `id="Buyer_Email"`). Use the pattern `<RecipientRole>_<FieldPurpose>` so the field can later be assigned to the correct recipient. Multiple fields MAY share the same ID (they'll be synced — when one is filled, all are filled with the same value), but they MUST have the same type and attributes. **Examples:** - `[[text placeholder="Enter name"]]` - `[[email required="true" placeholder="Email address"]]` - `[[phone format="US"]]` - `[[phone format="international"]]` - `[[number]]` - `[[date required="true" value="1718406000000"]]` - `[[date date_format="dd/MM/yyyy"]]` - `[[checkbox checked="true"]]` - `[[dropdown option="Yes" option="No"]]` - `[[dropdown option="Yes" option="No" value="Yes" placeholder="Choose..."]]` **Important:** Fields with the same ID must have the same type and attributes. For example, you cannot have `[[text id="Field1"]]` and `[[email id="Field1"]]` in the same document as well as `[[text id="Field2" placeholder="Full Legal Name" ]]` and `[[text id="Field2"]]` because they have different attributes. **Dropdown constraints:** - At least one `option` attribute is required. - Option texts must be unique within the dropdown. - If `value` is set, it must match one of the defined option texts exactly; otherwise a validation error occurs. ##### 3. Standalone Checkboxes Checkboxes use GFM syntax but can appear anywhere, not just in lists: - `[ ]` - Unchecked - `[x]` - Checked - Can be used inline, standalone, or in task lists ##### 4. Page Breaks **Syntax:** `---` (three hyphens) creates a page break. **IMPORTANT:** Page breaks should be rare and intentional. Most documents don't need page breaks. Only use `---` when content **must** be on separate pages for a specific reason: - Legal/structural requirement - Document structure demands it **Do NOT use `---`:** - Between sections (use headings: `## Section Title`) - As visual decoration (use blank lines) - Simply because there's a section transition ### Limitations (Features NOT Supported) **Do NOT include:** - Blockquotes inside lists - Images inside links inline with text (e.g., `[![image](url)](link)`)

Paper Search /

download_semantic

[  remote  ]

Download PDF of a Semantic Scholar paper. Args: paper_id: Semantic Scholar paper ID, Paper identifier in one of the following formats: - Semantic Scholar ID (e.g., "649def34f8be52c8b66281af98ae884c09aef38b") - DOI:<doi> (e.g., "DOI:10.18653/v1/N18-3011") - ARXIV:<id> (e.g., "ARXIV:2106.15928") - MAG:<id> (e.g., "MAG:112218234") - ACL:<id> (e.g., "ACL:W12-3903") - PMID:<id> (e.g., "PMID:19872477") - PMCID:<id> (e.g., "PMCID:2323736") - URL:<url> (e.g., "URL:https://arxiv.org/abs/2106.15928v1") save_path: Directory to save the PDF (default: './downloads'). Returns: Path to the downloaded PDF file.

PlantUML Diagrams /

encode_plantuml

[  remote  ]

Encode PlantUML code for URL usage

Make /

facebookCampaignDraft__pushDraftCampaign

[  remote  ]

[DANGER: live action] Create Meta draft campaigns/ad sets/ads from explicit campaign data, ad sets, ad copy, and image URLs. Supports raw externally-hosted image URLs. ALWAYS confirm with the user before calling. Always confirm with the user before calling.

Notion /

fetch

[  remote  ]

Retrieves details about a Notion entity by its URL or ID. You can fetch the following types of entities: - Page, i.e. from a <page> block or a <mention-page> mention - Database, i.e. from a <database> block or a <mention-database> mention Use the "fetch" tool when you need to see the details of a Notion entity you already know exists and have its URL or ID. Provide the Notion entity's URL or ID in the `id` parameter. You must make multiple calls to the "fetch" tool if you want to fetch multiple entities. Content for pages that are returned use the enhanced Markdown format, which is a superset of the standard Markdown syntax. See the full spec in the description of the "create-pages" tool. Databases can have multiple data sources, which are collections of pages with the same schema. When fetching a database, the tool will return information about all its data sources. Examples of fetching entities: 1. Fetch a page by URL: { "id": "https://www.notion.so/workspace/Product-Requirements-1234567890abcdef" } 2. Fetch a page by ID (UUIDv4 with dashes): { "id": "12345678-90ab-cdef-1234-567890abcdef" } 3. Fetch a page by ID (UUIDv4 without dashes): { "id": "1234567890abcdef1234567890abcdef" } 4. Fetch a database: { "id": "https://www.notion.so/workspace/Projects-Database-abcdef1234567890" } Common use cases: - "What are the product requirements still need to be implemented from this ticket https://notion.so/page-url?" - "Show me the details of the project database at this URL" - "Get the content of page 12345678-90ab-cdef-1234-567890abcdef"

DuckDuckGo & Felo AI Search /

fetch-url

[  remote  ]

Fetch and extract the main content from any URL, with customizable extraction options for text, links, and images

RSS Reader /

fetch_article_content

[  remote  ]

Fetch and extract article content from a URL, formatted as Markdown

RSS Reader /

fetch_feed_entries

[  remote  ]

Fetch RSS feed entries from a given URL

OpenWebSearch /

fetchCsdnArticle

[  remote  ]

Fetch full article content from a csdn post URL

OpenWebSearch /

fetchGithubReadme

[  remote  ]

Fetch README content from a GitHub repository URL

OpenWebSearch /

fetchJuejinArticle

[  remote  ]

Fetch full article content from a Juejin(掘金) post URL