Skip to content

API Direct

by apidirect.io · remote · no sign-in to list tools · v1.0.0 · published by io.apidirect

Search social media, news, forums and Google Maps: LinkedIn, X, Reddit, TikTok, YouTube.

Final · 3Changes · 34

145 tools: 3 do something that can't be undone, 34 change things and 108 only read.

Scanned Oct 21, 2026

36 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http api-direct https://apidirect.io/mcp --header 'X-API-Key: <your-x-api-key>'

Findings

Matches of fixed checks, with the text they matched.

36 warn
  • The server marks "linkedin_person_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "linkedin_person_posts" says "post": a word for a change.

    What this check looks for
  • The server marks "linkedin_post_details" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "linkedin_post_details" says "post": a word for a change.

    What this check looks for
  • The server marks "linkedin_company_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "linkedin_company_posts" says "post": a word for a change.

    What this check looks for
  • The server marks "twitter_user_replies" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "twitter_user_replies" says "reply": a word for sending, and what is sent cannot be taken back.

    What this check looks for
  • The server marks "twitter_tweet_comments" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "twitter_tweet_comments" says "comment": a word for a change.

    What this check looks for
  • The server marks "reddit_post_details" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "reddit_post_details" says "post": a word for a change.

    What this check looks for
Show 30 more findings
  • The server marks "reddit_post_comments" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "reddit_post_comments" says "post": a word for a change.

    What this check looks for
  • The server marks "reddit_post_crossposts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "reddit_post_crossposts" says "post": a word for a change.

    What this check looks for
  • The server marks "reddit_user_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "reddit_user_posts" says "post": a word for a change.

    What this check looks for
  • The server marks "reddit_user_comments" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "reddit_user_comments" says "comment": a word for a change.

    What this check looks for
  • The server marks "reddit_subreddit_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "reddit_subreddit_posts" says "post": a word for a change.

    What this check looks for
  • The server marks "instagram_user_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "instagram_user_posts" says "post": a word for a change.

    What this check looks for
  • The server marks "instagram_post_details" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "instagram_post_details" says "post": a word for a change.

    What this check looks for
  • The server marks "instagram_post_comments" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "instagram_post_comments" says "post": a word for a change.

    What this check looks for
  • The server marks "instagram_comment_replies" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "instagram_comment_replies" says "comment": a word for a change.

    What this check looks for
  • The server marks "instagram_post_likes" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "instagram_post_likes" says "post": a word for a change.

    What this check looks for
  • The server marks "instagram_hashtag_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "instagram_hashtag_posts" says "post": a word for a change.

    What this check looks for
  • The server marks "threads_user_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "threads_user_posts" says "post": a word for a change.

    What this check looks for
  • The server marks "truthsocial_user_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "truthsocial_user_posts" says "post": a word for a change.

    What this check looks for
  • The server marks "bluesky_user_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "bluesky_user_posts" says "post": a word for a change.

    What this check looks for
  • The server marks "bluesky_post_details" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "bluesky_post_details" says "post": a word for a change.

    What this check looks for
  • The server marks "bluesky_post_comments" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "bluesky_post_comments" says "post": a word for a change.

    What this check looks for
  • The server marks "bluesky_post_likes" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "bluesky_post_likes" says "post": a word for a change.

    What this check looks for
  • The server marks "bluesky_post_quotes" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "bluesky_post_quotes" says "post": a word for a change.

    What this check looks for
  • The server marks "bluesky_post_reposts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "bluesky_post_reposts" says "post": a word for a change.

    What this check looks for
  • The server marks "substack_user_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "substack_user_posts" says "post": a word for a change.

    What this check looks for
  • The server marks "substack_publication_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "substack_publication_posts" says "post": a word for a change.

    What this check looks for
  • The server marks "substack_post_details" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "substack_post_details" says "post": a word for a change.

    What this check looks for
  • The server marks "substack_post_comments" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "substack_post_comments" says "post": a word for a change.

    What this check looks for
  • The server marks "substack_post_likes" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "substack_post_likes" says "post": a word for a change.

    What this check looks for
  • The server marks "tiktok_video_comments" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "tiktok_video_comments" says "comment": a word for a change.

    What this check looks for
  • The server marks "tiktok_comment_replies" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "tiktok_comment_replies" says "comment": a word for a change.

    What this check looks for
  • The server marks "facebook_page_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "facebook_page_posts" says "post": a word for a change.

    What this check looks for
  • The server marks "facebook_group_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "facebook_group_posts" says "post": a word for a change.

    What this check looks for
  • The server marks "facebook_post_comments" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "facebook_post_comments" says "post": a word for a change.

    What this check looks for
  • The server marks "batch_requests" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "batch_requests" says "request": a word for a change.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

145 tools

Can't be undone 3Claude Code: ask
  • instagram_comment_repliesGet the replies to one Instagram comment, by post URL or shortcode (provide exactly one) plus the comment_id from instagram_post_comments.1 finding

    Why it is in this group

    • The name "instagram_comment_replies" says "comment": a word for a change.
    • The name "instagram_comment_replies" also says "reply": a word for sending, and what is sent cannot be taken back.
    • The input takes a statement or command to run (input.code), which can change anything it can reach.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "instagram_comment_replies" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "instagram_comment_replies" says "comment": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get the replies to one Instagram comment, by post URL or shortcode (provide exactly one) plus the comment_id from instagram_post_comments. Returns each reply's text, author details (including whether Instagram labels the commenter AI-generated), like count, date, link and parent comment. Returns an empty list when there are no replies. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Instagram Comment Replies
  • tiktok_comment_repliesGet the replies to one TikTok comment (its thread) by video URL or numeric video ID (provide exactly one) plus the comment ID from tiktok_video_comments.1 finding

    Why it is in this group

    • The name "tiktok_comment_replies" says "comment": a word for a change.
    • The name "tiktok_comment_replies" also says "reply": a word for sending, and what is sent cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "tiktok_comment_replies" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "tiktok_comment_replies" says "comment": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get the replies to one TikTok comment (its thread) by video URL or numeric video ID (provide exactly one) plus the comment ID from tiktok_video_comments. Returns each reply's text, author profile, like count and date, about 50 per page. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: TikTok Comment Replies
  • twitter_user_repliesGet the replies a Twitter/X user posted, by username.1 finding

    Why it is in this group

    • The name "twitter_user_replies" says "reply": a word for sending, and what is sent cannot be taken back.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "twitter_user_replies" read-only (readOnlyHint: true), and its own name, description or input give the class "irreversible".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "twitter_user_replies" says "reply": a word for sending, and what is sent cannot be taken back.

      What this check looks for
    Description, as the server wrote it
    Get the replies a Twitter/X user posted, by username. Returns each reply's text and engagement metrics. Use twitter_user_tweets for their tweets. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Twitter User Replies
Changes things 34Claude Code: ask
  • batch_requestsRun up to 100 API Direct REST requests in one call, mixing any endpoints the other tools cover (e.g.1 finding

    Why it is in this group

    • The name "batch_requests" says "request": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "batch_requests" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "batch_requests" says "request": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Run up to 100 API Direct REST requests in one call, mixing any endpoints the other tools cover (e.g. 50 twitter_user_profile and 50 instagram_user_profile lookups). Each item gives a /v1 endpoint path and that endpoint's query parameters, as documented at https://apidirect.io/docs/batch. Items run concurrently and each returns its own status and body, in input order. /v1/web/ai-mode isn't supported. Large batches can take several minutes. The batch call is free; each item is billed at its endpoint's normal rate.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Batch Requests
  • bluesky_post_commentsGet the replies to a Bluesky post by URL or AT URI post_id (provide exactly one).1 finding

    Why it is in this group

    • The name "bluesky_post_comments" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "bluesky_post_comments" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "bluesky_post_comments" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get the replies to a Bluesky post by URL or AT URI post_id (provide exactly one). Returns every reply Bluesky serves, up to 10 levels deep, as a flat list of full posts whose in_reply_to_id points at the parent. Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Bluesky Post Comments
  • bluesky_post_detailsGet one Bluesky post by URL or AT URI post_id (provide exactly one).1 finding

    Why it is in this group

    • The name "bluesky_post_details" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "bluesky_post_details" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "bluesky_post_details" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get one Bluesky post by URL or AT URI post_id (provide exactly one). Returns text, author, date, engagement metrics (likes, replies, reposts, quotes, bookmarks), media, link card and quoted post. Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Bluesky Post Details
  • bluesky_post_likesGet the users who liked a Bluesky post, newest first, by URL or AT URI post_id (provide exactly one).1 finding

    Why it is in this group

    • The name "bluesky_post_likes" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "bluesky_post_likes" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "bluesky_post_likes" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get the users who liked a Bluesky post, newest first, by URL or AT URI post_id (provide exactly one). Returns each user's handle, display name, DID, bio, verification status, profile picture, join date and like time. Up to 50 per page. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Bluesky Post Likes
  • bluesky_post_quotesGet the posts that quote a Bluesky post, newest first, by URL or AT URI post_id (provide exactly one).1 finding

    Why it is in this group

    • The name "bluesky_post_quotes" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "bluesky_post_quotes" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "bluesky_post_quotes" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get the posts that quote a Bluesky post, newest first, by URL or AT URI post_id (provide exactly one). Returns each quoting post's text, author, engagement metrics and media. Up to 50 per page. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Bluesky Post Quotes
  • bluesky_post_repostsGet the users who reposted a Bluesky post, newest first, by URL or AT URI post_id (provide exactly one).1 finding

    Why it is in this group

    • The name "bluesky_post_reposts" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "bluesky_post_reposts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "bluesky_post_reposts" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get the users who reposted a Bluesky post, newest first, by URL or AT URI post_id (provide exactly one). Returns each user's handle, display name, DID, bio, verification status, profile picture and join date. Up to 50 per page. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Bluesky Post Reposts
  • bluesky_user_postsGet a Bluesky user's feed by handle, DID or profile URL (provide exactly one of username or url): their posts, replies and reposts, pinned post first then newest first, each flagge…1 finding

    Why it is in this group

    • The name "bluesky_user_posts" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "bluesky_user_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "bluesky_user_posts" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get a Bluesky user's feed by handle, DID or profile URL (provide exactly one of username or url): their posts, replies and reposts, pinned post first then newest first, each flagged is_reply, is_repost and is_pinned. Returns post text, engagement metrics, media, link cards and quoted posts. Up to 50 posts per page. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Bluesky User Posts
  • facebook_group_postsGet posts from a public Facebook group by numeric group ID (from facebook_group_details).1 finding

    Why it is in this group

    • The name "facebook_group_posts" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "facebook_group_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "facebook_group_posts" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get posts from a public Facebook group by numeric group ID (from facebook_group_details). Returns post text, author details, engagement metrics and media. Sort by newest or relevance. Billed $0.008 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Facebook Group Posts
  • facebook_page_postsGet posts from a Facebook page by numeric page ID (from facebook_page_details).1 finding

    Why it is in this group

    • The name "facebook_page_posts" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "facebook_page_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "facebook_page_posts" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get posts from a Facebook page by numeric page ID (from facebook_page_details). Returns post text, engagement metrics, reaction breakdown and media. Optionally limit to a date range. Billed $0.008 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Facebook Page Posts
  • facebook_post_commentsGet the comments on a Facebook post by post ID (pfbid or numeric, from facebook_page_posts, facebook_group_posts or search_facebook_posts).1 finding

    Why it is in this group

    • The name "facebook_post_comments" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "facebook_post_comments" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "facebook_post_comments" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get the comments on a Facebook post by post ID (pfbid or numeric, from facebook_page_posts, facebook_group_posts or search_facebook_posts). Returns each comment's text, author details, reaction and reply counts, date and any attachment. Billed $0.008 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Facebook Post Comments
  • google_ai_modeAsk Google AI Mode a prompt and get its structured answer (reply_parts: paragraphs, headings, lists, images) with reference_links citations.No findings

    Why it is in this group

    • Nothing in its name or description says what it does, so it is counted as a write.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
    Description, as the server wrote it
    Ask Google AI Mode a prompt and get its structured answer (reply_parts: paragraphs, headings, lists, images) with reference_links citations. Pass session_token from a previous response to ask a follow-up in the same conversation. Answers can take over a minute. Use search_web for plain search results. Billed $0.005 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Google AI Mode
  • instagram_hashtag_postsGet Instagram posts and reels for a hashtag.1 finding

    Why it is in this group

    • The name "instagram_hashtag_posts" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "instagram_hashtag_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "instagram_hashtag_posts" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get Instagram posts and reels for a hashtag. Returns the same post objects as search_instagram plus the hashtag's total post count (top tab only). sort_by picks the tab: top (default), recent or reels. Up to about 30 new posts per page. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Instagram Hashtag Posts
  • instagram_post_commentsGet the comments on an Instagram post or reel by URL or shortcode (provide exactly one).1 finding

    Why it is in this group

    • The name "instagram_post_comments" says "post": a word for a change.
    • The input takes a statement or command to run (input.code), which can change anything it can reach.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "instagram_post_comments" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "instagram_post_comments" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get the comments on an Instagram post or reel by URL or shortcode (provide exactly one). Returns each comment's text, author details (including whether Instagram labels the commenter AI-generated), like and reply counts, date and link. Sort by popular (includes pinned) or recent. Up to 15 comments per page. Use instagram_comment_replies for a comment's replies. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Instagram Post Comments
  • instagram_post_detailsGet one Instagram post, reel or IGTV video by URL or shortcode (provide exactly one).1 finding

    Why it is in this group

    • The name "instagram_post_details" says "post": a word for a change.
    • The input takes a statement or command to run (input.code), which can change anything it can reach.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "instagram_post_details" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "instagram_post_details" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get one Instagram post, reel or IGTV video by URL or shortcode (provide exactly one). Returns caption, like, comment, share and view counts, media URLs, carousel slides, audio track, tagged users, location, author details and Instagram's AI label. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Instagram Post Details
  • instagram_post_likesGet the users who liked an Instagram post or reel, by URL or shortcode (provide exactly one).1 finding

    Why it is in this group

    • The name "instagram_post_likes" says "post": a word for a change.
    • The input takes a statement or command to run (input.code), which can change anything it can reach.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "instagram_post_likes" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "instagram_post_likes" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get the users who liked an Instagram post or reel, by URL or shortcode (provide exactly one). Returns username, full name, user ID, verification and privacy status and profile picture for every liker Instagram exposes (typically several hundred), plus the total like count, in one request. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Instagram Post Likes
  • instagram_user_postsGet an Instagram user's recent posts and reels (their feed) by username or profile URL (provide exactly one).1 finding

    Why it is in this group

    • The name "instagram_user_posts" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "instagram_user_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "instagram_user_posts" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get an Instagram user's recent posts and reels (their feed) by username or profile URL (provide exactly one). Returns captions, engagement metrics (likes, comments, shares, views), author metadata, hashtags, mentions and Instagram's AI label. Up to 12 posts per page. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Instagram User Posts
  • linkedin_company_postsGet recent posts from a LinkedIn company page by URL.1 finding

    Why it is in this group

    • The name "linkedin_company_posts" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "linkedin_company_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "linkedin_company_posts" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get recent posts from a LinkedIn company page by URL. Returns post text, author info, images, videos and engagement metrics (likes, comments, shares, reactions). 10 posts per page. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: LinkedIn Company Posts
  • linkedin_person_postsGet the recent posts a LinkedIn person authored, by profile URL or public slug.1 finding

    Why it is in this group

    • The name "linkedin_person_posts" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "linkedin_person_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "linkedin_person_posts" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get the recent posts a LinkedIn person authored, by profile URL or public slug. Returns post text, engagement metrics (likes, comments, shares, reactions), author info, images, videos and articles. 20 posts per page, up to about 600 posts. Use search_linkedin with author to filter a person's posts by keyword. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: LinkedIn Person Posts
  • linkedin_post_detailsGet one LinkedIn post by URL.1 finding

    Why it is in this group

    • The name "linkedin_post_details" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "linkedin_post_details" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "linkedin_post_details" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get one LinkedIn post by URL. Returns full post text, author details, images, embedded links and engagement metrics with reaction breakdowns. Billed $0.002 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: LinkedIn Post Details
  • reddit_post_commentsGet the comments on a Reddit post, replies included, by URL or post ID (provide exactly one).1 finding

    Why it is in this group

    • The name "reddit_post_comments" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "reddit_post_comments" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "reddit_post_comments" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get the comments on a Reddit post, replies included, by URL or post ID (provide exactly one). Comments come in thread order with depth and parent ID, plus text, author, score, date and permalink. Sort by top, best, most_recent, controversial, oldest or qa. 50 per page, up to ~4,000 per thread; more than 10 pages can take over a minute on a big thread. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Reddit Post Comments
  • reddit_post_crosspostsGet the crossposts and reposts of a Reddit post's link across Reddit, by URL or post ID (provide exactly one).1 finding

    Why it is in this group

    • The name "reddit_post_crossposts" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "reddit_post_crossposts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "reddit_post_crossposts" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get the crossposts and reposts of a Reddit post's link across Reddit, by URL or post ID (provide exactly one). Returns subreddit, author, date, score, upvote ratio and comment count for each, up to 100. Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Reddit Post Crossposts
  • reddit_post_detailsGet one Reddit post by URL or post ID (provide exactly one).1 finding

    Why it is in this group

    • The name "reddit_post_details" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "reddit_post_details" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "reddit_post_details" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get one Reddit post by URL or post ID (provide exactly one). Returns title, text, author, subreddit, date, score, upvote ratio, comment and crosspost counts, flair, the shared link, thumbnail, video links, gallery images and NSFW/spoiler/locked flags. Use reddit_post_comments for its comments. Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Reddit Post Details
  • reddit_subreddit_postsGet a subreddit's posts by name or URL (provide exactly one), sorted hot, new, top, rising or controversial; posted_ago sets the window for top and controversial (1h to all); flair…1 finding

    Why it is in this group

    • The name "reddit_subreddit_posts" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "reddit_subreddit_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "reddit_subreddit_posts" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get a subreddit's posts by name or URL (provide exactly one), sorted hot, new, top, rising or controversial; posted_ago sets the window for top and controversial (1h to all); flair keeps only posts with that flair. Returns title, text, author, date, score, upvote ratio, comment count, flair, shared link and video/gallery links for each post. 25 per page, up to ~1,000 posts. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Reddit Subreddit Posts
  • reddit_user_commentsGet a Reddit user's comments by username or profile URL (provide exactly one), sorted most_recent, hot, top or controversial; posted_ago sets the window for top and controversial (…1 finding

    Why it is in this group

    • The name "reddit_user_comments" says "comment": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "reddit_user_comments" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "reddit_user_comments" says "comment": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get a Reddit user's comments by username or profile URL (provide exactly one), sorted most_recent, hot, top or controversial; posted_ago sets the window for top and controversial (default: all time). Returns text, score, date, subreddit and permalink for each, plus the title and link of the post it was on. 25 per page, up to ~1,000 comments. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Reddit User Comments
  • reddit_user_postsGet a Reddit user's submitted posts by username or profile URL (provide exactly one), sorted most_recent, hot, top or controversial; posted_ago sets the window for top and controve…1 finding

    Why it is in this group

    • The name "reddit_user_posts" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "reddit_user_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "reddit_user_posts" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get a Reddit user's submitted posts by username or profile URL (provide exactly one), sorted most_recent, hot, top or controversial; posted_ago sets the window for top and controversial (default: all time). Returns title, text, subreddit, date, score, upvote ratio, comment count, flair, shared link and video/gallery links for each post. 25 per page, up to ~1,000 posts. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Reddit User Posts
  • substack_post_commentsGet the full comment thread of a Substack post, nested.1 finding

    Why it is in this group

    • The name "substack_post_comments" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "substack_post_comments" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "substack_post_comments" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get the full comment thread of a Substack post, nested. Returns every comment with text, author, date, likes, replies and restacks, replies nested under their parent to any depth, sorted by relevance, newest first or oldest first (provide url, post_id, or publication together with slug). Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Substack Post Comments
  • substack_post_detailsGet a Substack post by URL, ID, or publication and slug.1 finding

    Why it is in this group

    • The name "substack_post_details" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "substack_post_details" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "substack_post_details" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get a Substack post by URL, ID, or publication and slug. Returns the full body as HTML and plain text (the free preview for paid posts), title, subtitle, author, publication, publication date, engagement, paywall status, word count, cover image, podcast audio and tags (provide url, post_id, or publication together with slug). Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Substack Post Details
  • substack_post_likesGet the people who liked a Substack post.1 finding

    Why it is in this group

    • The name "substack_post_likes" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "substack_post_likes" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "substack_post_likes" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get the people who liked a Substack post. Returns up to 100 profiles with display name, user ID, profile picture, bestseller tier and primary publication, plus the post's total like count (provide url, post_id, or publication together with slug). Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Substack Post Likes
  • substack_publication_postsGet a publication's posts, newest first, top or most discussed, or search them by keyword.1 finding

    Why it is in this group

    • The name "substack_publication_posts" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "substack_publication_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "substack_publication_posts" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get a publication's posts, newest first, top or most discussed, or search them by keyword. Returns post title, author, publication date, engagement, paywall status, word count and tags. Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Substack Publication Posts
  • substack_user_postsGet an author's posts across all their publications, newest first.1 finding

    Why it is in this group

    • The name "substack_user_posts" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "substack_user_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "substack_user_posts" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get an author's posts across all their publications, newest first. Returns post title, publication, publication date, engagement, paywall status, word count and tags. Up to 50 posts per page (provide exactly one of username, user_id, url). Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Substack User Posts
  • threads_user_postsGet a Threads (Meta) user's recent posts by username, newest first.1 finding

    Why it is in this group

    • The name "threads_user_posts" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "threads_user_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "threads_user_posts" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get a Threads (Meta) user's recent posts by username, newest first. Returns post text, engagement metrics, media, link previews, timestamps, permalinks and whether each post is pinned. Up to about 35 posts per page. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Threads User Posts
  • tiktok_video_commentsGet the top-level comments on a TikTok video, in TikTok's default order, by video URL or numeric video ID (provide exactly one).1 finding

    Why it is in this group

    • The name "tiktok_video_comments" says "comment": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "tiktok_video_comments" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "tiktok_video_comments" says "comment": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get the top-level comments on a TikTok video, in TikTok's default order, by video URL or numeric video ID (provide exactly one). Returns each comment's text, author profile, like and reply counts and date, 50 per page. Use tiktok_comment_replies for a comment's thread. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: TikTok Video Comments
  • truthsocial_user_postsGet a Truth Social user's recent posts (their feed) by username.1 finding

    Why it is in this group

    • The name "truthsocial_user_posts" says "post": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "truthsocial_user_posts" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "truthsocial_user_posts" says "post": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get a Truth Social user's recent posts (their feed) by username. Returns post text, engagement metrics (replies, reposts, likes), media, hashtags, reply status and permalinks. Up to 20 posts per page. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Truth Social User Posts
  • twitter_tweet_commentsGet the replies (comments) on a tweet, by numeric tweet ID.1 finding

    Why it is in this group

    • The name "twitter_tweet_comments" says "comment": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "twitter_tweet_comments" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"destructiveHint":false,"openWorldHint":true}; The name "twitter_tweet_comments" says "comment": a word for a change.

      What this check looks for
    Description, as the server wrote it
    Get the replies (comments) on a tweet, by numeric tweet ID. Returns each reply's text and engagement metrics. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Twitter Tweet Comments
Only reads 108Claude Code: allow
  • amazon_best_sellersGet Amazon rankings for a category: Best Sellers, New Releases, Movers & Shakers, Most Wished For or Gift Ideas.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get Amazon rankings for a category: Best Sellers, New Releases, Movers & Shakers, Most Wished For or Gift Ideas. Each item has rank, rank change, ASIN, title, price and rating. Up to 50 items per page; rankings cover the top 100. Billed $0.005 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Amazon Best Sellers
  • amazon_product_detailsGet an Amazon product by ASIN (from search_amazon_products).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get an Amazon product by ASIN (from search_amazon_products). Returns pricing, buy box with seller_id, availability, condition, photos, videos, specs, feature bullets, description, per-star rating breakdown and top reviews. Billed $0.005 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Amazon Product Details
  • amazon_seller_productsGet the products an Amazon seller sells, by seller ID.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the products an Amazon seller sells, by seller ID. Returns the same product objects as search_amazon_products plus the seller's total catalog size. Sort by price, reviews, newest or best sellers. About 16 results per page. Billed $0.005 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Amazon Seller Products
  • amazon_seller_profileGet an Amazon seller's profile by seller ID (main_buy_box.seller_id from amazon_product_details).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get an Amazon seller's profile by seller ID (main_buy_box.seller_id from amazon_product_details). Returns name, logo, about text, registered business name and address, average rating, total ratings, positive-feedback percentage and a feedback breakdown over 30 days, 90 days, 12 months and lifetime. Billed $0.005 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Amazon Seller Profile
  • amazon_seller_reviewsGet customer feedback on an Amazon seller by seller ID.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get customer feedback on an Amazon seller by seller ID. Each review has author, text, star rating, date and whether the seller responded. Filter by star rating or positive/critical; page until has_next_page is false. Billed $0.005 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Amazon Seller Reviews
  • bluesky_user_followersGet a Bluesky user's followers, newest first, by handle, DID or profile URL (provide exactly one of username or url).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a Bluesky user's followers, newest first, by handle, DID or profile URL (provide exactly one of username or url). Returns handle, display name, DID, bio, verification status, profile picture and join date. Up to 50 per page. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Bluesky User Followers
  • bluesky_user_followingGet the accounts a Bluesky user follows, newest first, by handle, DID or profile URL (provide exactly one of username or url).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the accounts a Bluesky user follows, newest first, by handle, DID or profile URL (provide exactly one of username or url). Returns handle, display name, DID, bio, verification status, profile picture and join date. Up to 50 per page. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Bluesky User Following
  • bluesky_user_likesGet the posts a Bluesky user liked, newest first, by handle, DID or profile URL (provide exactly one of username or url).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the posts a Bluesky user liked, newest first, by handle, DID or profile URL (provide exactly one of username or url). Returns each full post plus liked_at, when the user liked it. Up to 50 per page. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Bluesky User Likes
  • bluesky_user_profileGet a Bluesky user's profile by handle, DID or profile URL (provide exactly one of username or url).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a Bluesky user's profile by handle, DID or profile URL (provide exactly one of username or url). Returns display name, bio, follower, following and post counts, verification status, profile picture, banner, join date and the pinned post's ID. Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Bluesky User Profile
  • facebook_group_detailsGet a Facebook group by URL.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a Facebook group by URL. Returns name, group ID, description, privacy setting, member count, location and cover photo. Pass the group ID to facebook_group_posts. Billed $0.008 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Facebook Group Details
  • facebook_page_detailsGet a Facebook page by URL.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a Facebook page by URL. Returns name, page_id, follower and like counts, categories, contact info, rating and verification status, plus the delegate_page_id and reels_page_id that facebook_page_videos and facebook_page_reels need. Billed $0.008 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Facebook Page Details
  • facebook_page_photosGet photos from a Facebook page by numeric page ID (from facebook_page_details).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get photos from a Facebook page by numeric page ID (from facebook_page_details). Returns photo IDs and image URLs. Billed $0.008 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Facebook Page Photos
  • facebook_page_reelsGet reels from a Facebook page by its reels_page_id (from facebook_page_details).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get reels from a Facebook page by its reels_page_id (from facebook_page_details). Returns reel metadata and engagement metrics. Billed $0.008 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Facebook Page Reels
  • facebook_page_reviewsGet reviews of a Facebook page by numeric page ID (from facebook_page_details).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get reviews of a Facebook page by numeric page ID (from facebook_page_details). Returns review text, recommendation status and author info. Billed $0.008 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Facebook Page Reviews
  • facebook_page_videosGet videos from a Facebook page by its delegate_page_id (from facebook_page_details).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get videos from a Facebook page by its delegate_page_id (from facebook_page_details). Returns video metadata and play counts. Billed $0.008 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Facebook Page Videos
  • get_skillGet one skill's step-by-step playbook with your inputs filled in: the ordered tool calls and filters that produce its outcome, for you to run.No findings

    Why it is in this group

    • The name "get_skill" says "get": a word for reading.
    Description, as the server wrote it
    Get one skill's step-by-step playbook with your inputs filled in: the ordered tool calls and filters that produce its outcome, for you to run. Pass the skill_id from list_skills, or the skill name the user gave (close matches resolve). Omit inputs and the playbook lists what to ask the user for. Free.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: false
    • readOnlyHint: true
    • title: Get Skill Playbook
  • get_youtube_commentsGet the comments on a YouTube video by URL or video ID.No findings

    Why it is in this group

    • The name "get_youtube_comments" says "get": a word for reading.
    Description, as the server wrote it
    Get the comments on a YouTube video by URL or video ID. Returns each comment's text, author, like and reply counts, date, link and up to 5 preview replies. Sort by newest or relevance. Up to about 100 comments per page. Billed $0.005 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: YouTube Video Comments
  • instagram_highlight_storiesGet the stories saved in one Instagram highlight, by highlight ID (from instagram_user_highlights) or highlight URL.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the stories saved in one Instagram highlight, by highlight ID (from instagram_user_highlights) or highlight URL. Returns the highlight's title and cover plus each story's media URLs, post time, link stickers, mentions, tagged users, location, audio and AI detection method. Media URLs expire after about 6-24 hours. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Instagram Highlight Stories
  • instagram_user_followersGet an Instagram user's followers by username or profile URL (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get an Instagram user's followers by username or profile URL (provide exactly one). Returns username, full name, user ID, verification and privacy status and profile picture, 50 per page. Verified accounts return only their first ~50 followers, and pages beyond that are not billed. Pass query to search the followers instead (up to 50 matches, billed as one page). Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Instagram User Followers
  • instagram_user_followingGet the accounts an Instagram user follows, by username or profile URL (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the accounts an Instagram user follows, by username or profile URL (provide exactly one). Returns username, full name, user ID, verification and privacy status and profile picture, 50 per page. Pass query to search the list instead (up to 50 matches, billed as one page). Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Instagram User Following
  • instagram_user_highlightsList an Instagram user's story highlights by username or profile URL (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "list": a word for reading.
    Description, as the server wrote it
    List an Instagram user's story highlights by username or profile URL (provide exactly one). Returns each highlight's ID, title, story count, cover image, created and updated dates and link. Pass a highlight ID to instagram_highlight_stories for its stories. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Instagram User Highlights
  • instagram_user_profileGet an Instagram user's full profile by username or profile URL (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get an Instagram user's full profile by username or profile URL (provide exactly one). Returns biography, follower, following and media counts, category, external link, verification status and date, the country the account is based in, join date, the number of former usernames and whether Instagram labels the account AI-generated. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Instagram User Profile
  • instagram_user_storiesGet an Instagram user's active stories (last 24 hours) by username or profile URL (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get an Instagram user's active stories (last 24 hours) by username or profile URL (provide exactly one). Returns each story's media URLs, post and expiry times, link stickers, mentions, tagged users, location, audio and AI detection method. Media URLs expire after about 6-24 hours. Returns an empty list when there are no active stories. Use instagram_user_highlights for saved stories. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Instagram User Stories
  • linkedin_company_detailsGet a LinkedIn company page by URL.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a LinkedIn company page by URL. Returns name, description, employee count, industry, headquarters and locations, specialities, website and similar companies. Use search_linkedin_companies to find a company by name. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: LinkedIn Company Details
  • linkedin_job_detailsGet one LinkedIn job listing by URL or numeric job ID.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get one LinkedIn job listing by URL or numeric job ID. Returns title, company, location, posting date, job type, experience level, workplace type, industry, salary, benefits and full description. Billed $0.002 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: LinkedIn Job Details
  • linkedin_person_detailsGet a LinkedIn person's profile by profile URL, public slug or member URN.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a LinkedIn person's profile by profile URL, public slug or member URN. Returns name, headline, about, location, follower and connection counts, open-to-work status, and the experience, education, skills, certifications, languages, honors, publications, volunteering and projects sections. Use linkedin_person_posts for their posts. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: LinkedIn Person Profile
  • list_skillsList API Direct's ready-made skills: playbooks that chain the data tools, with filters such as author_title, mentions_company and AI sentiment, to reach a business outcome (lead ge…No findings

    Why it is in this group

    • The name "list_skills" says "list": a word for reading.
    Description, as the server wrote it
    List API Direct's ready-made skills: playbooks that chain the data tools, with filters such as author_title, mentions_company and AI sentiment, to reach a business outcome (lead generation, competitor and brand monitoring, recruiting, due diligence, deal sourcing, market research). Returns each skill's id, name, category, summary and inputs. Use it when a request matches one of those goals, then run the chosen skill with get_skill. Free.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: false
    • readOnlyHint: true
    • title: List Skills
  • place_detailsGet a Google Maps place by place_id (from search_places).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a Google Maps place by place_id (from search_places). Returns name, address, phone, website, rating, review counts per star, opening hours, sample photos, coordinates, plus codes, menu link, owner info, and the emails, phones and social profiles found on the place's website. Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Google Place Details
  • place_photosGet photos and videos of a Google Maps place by place_id (from search_places).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get photos and videos of a Google Maps place by place_id (from search_places). Returns standard and large URLs, coordinates and capture time; photos and videos come mixed, so filter on the type field. Up to 10 items per page. Billed $0.01 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Google Place Photos
  • place_reviewsGet reviews of a Google Maps place by place_id (from search_places).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get reviews of a Google Maps place by place_id (from search_places). Each review has rating, text, author, timestamps, photos and any owner response. language returns only reviews originally written in that language; each sort_by order surfaces a different set, so combine them for more coverage. Up to 10 reviews per page. Billed $0.01 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Google Place Reviews
  • reddit_subreddit_detailsGet a subreddit's details by name or URL (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a subreddit's details by name or URL (provide exactly one). Returns members, weekly active users, weekly contributions, description, sidebar, creation date, type, language, icon, banner, NSFW and quarantine flags, and status (active, private, banned or quarantined). Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Reddit Subreddit Details
  • reddit_subreddit_rulesGet a subreddit's rules by name or URL (provide exactly one), in order.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a subreddit's rules by name or URL (provide exactly one), in order. Returns each rule's title, full text, what it applies to (link, comment or all), report reason and the date it was added. Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Reddit Subreddit Rules
  • reddit_user_profileGet a Reddit user's profile by username or profile URL (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a Reddit user's profile by username or profile URL (provide exactly one). Returns display name, followers, post and comment counts, post, comment, total and award karma, bio, avatar, banner, account creation date and verified, Premium, moderator and employee flags. Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Reddit User Profile
  • search_amazon_productsSearch Amazon products by keyword or ASIN across 24 marketplaces.No findings

    Why it is in this group

    • The name "search_amazon_products" says "search": a word for reading.
    Description, as the server wrote it
    Search Amazon products by keyword or ASIN across 24 marketplaces. Returns ASIN, title, price and original price, rating and ratings count, Prime status, sales volume, badges and delivery info. Filter by category, price, condition, brand, seller, Prime, deals and 4+ stars. About 16 results per page. Use amazon_product_details for one product. Billed $0.005 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Amazon Products
  • search_blueskySearch Bluesky posts by keyword; Bluesky search syntax works in query.No findings

    Why it is in this group

    • The name "search_bluesky" says "search": a word for reading.
    Description, as the server wrote it
    Search Bluesky posts by keyword; Bluesky search syntax works in query. Returns post text, author, date, engagement metrics (likes, replies, reposts, quotes, bookmarks), media, link cards and quoted posts. Sort by newest or relevance and limit to a date range. Up to 50 posts per page. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Bluesky Posts
  • search_bluesky_usersSearch Bluesky users by keyword, matching handles, display names and bios.No findings

    Why it is in this group

    • The name "search_bluesky_users" says "search": a word for reading.
    Description, as the server wrote it
    Search Bluesky users by keyword, matching handles, display names and bios. Returns handle, display name, DID, bio, verification status, profile picture and join date. Up to 50 users per page. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Bluesky Users
  • search_facebook_eventsSearch public Facebook events by keyword.No findings

    Why it is in this group

    • The name "search_facebook_events" says "search": a word for reading.
    Description, as the server wrote it
    Search public Facebook events by keyword. Returns event names, IDs and links. Limit to a date range or scope to a place with a location_id from search_facebook_locations. Billed $0.008 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Facebook Events
  • search_facebook_locationsResolve a place name (city, region or country) to Facebook location IDs.No findings

    Why it is in this group

    • The name "search_facebook_locations" says "search": a word for reading.
    Description, as the server wrote it
    Resolve a place name (city, region or country) to Facebook location IDs. Pass a returned id as location_id to search_facebook_posts or search_facebook_events. Billed $0.004 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Facebook Locations
  • search_facebook_pagesSearch Facebook pages by keyword.No findings

    Why it is in this group

    • The name "search_facebook_pages" says "search": a word for reading.
    Description, as the server wrote it
    Search Facebook pages by keyword. Returns page name, URL, profile image and verification status. Pass a page URL to facebook_page_details for its IDs and full profile. Billed $0.008 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Facebook Pages
  • search_facebook_postsSearch public Facebook posts by keyword.No findings

    Why it is in this group

    • The name "search_facebook_posts" says "search": a word for reading.
    Description, as the server wrote it
    Search public Facebook posts by keyword. Returns post text, author details, engagement metrics and media. Limit to a date range, sort by newest or relevance, or scope to a place with a location_id from search_facebook_locations. Billed $0.008 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Facebook Posts
  • search_facebook_videosSearch Facebook videos by keyword.No findings

    Why it is in this group

    • The name "search_facebook_videos" says "search": a word for reading.
    Description, as the server wrote it
    Search Facebook videos by keyword. Returns title, description, author, thumbnail and view metrics. Limit to a date range and sort by newest or relevance. Billed $0.008 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Facebook Videos
  • search_forumsSearch forum posts across discussion boards, Q&A sites and community forums on the web.No findings

    Why it is in this group

    • The name "search_forums" says "search": a word for reading.
    Description, as the server wrote it
    Search forum posts across discussion boards, Q&A sites and community forums on the web. Returns title, URL, source domain and a content snippet. Filter by time period and country. 10 posts per page. Use search_reddit for Reddit. Billed $0.008 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Forum Posts
  • search_instagramSearch Instagram posts by keyword.No findings

    Why it is in this group

    • The name "search_instagram" says "search": a word for reading.
    Description, as the server wrote it
    Search Instagram posts by keyword. Returns caption, author, date, engagement metrics (likes, comments, shares, views), media URLs, hashtags, mentions and Instagram's AI label (ai_label with detection_method). Use instagram_hashtag_posts for a hashtag's feed. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Instagram Posts
  • search_instagram_usersSearch Instagram users by keyword.No findings

    Why it is in this group

    • The name "search_instagram_users" says "search": a word for reading.
    Description, as the server wrote it
    Search Instagram users by keyword. Returns username, full name, verification status, profile picture and whether Instagram labels the account AI-generated. Use instagram_user_profile for one account's full profile. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Instagram Users
  • search_linkedinSearch LinkedIn posts by keyword and/or filters: author (posts by a person), author_title (posts by people with a job title, e.g.No findings

    Why it is in this group

    • The name "search_linkedin" says "search": a word for reading.
    Description, as the server wrote it
    Search LinkedIn posts by keyword and/or filters: author (posts by a person), author_title (posts by people with a job title, e.g. Founder), author_company (posts by a company's employees), from_company (posts by a company page), mentions_company or mentions_member (posts mentioning a company or person), author_industry. Returns post text, author, date, engagement metrics, attached media and a has_content_entities flag (true when an image, article, video or job is attached). Company ids come from search_linkedin_companies. 20 posts per page. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search LinkedIn Posts
  • search_linkedin_companiesSearch LinkedIn companies by keyword.No findings

    Why it is in this group

    • The name "search_linkedin_companies" says "search": a word for reading.
    Description, as the server wrote it
    Search LinkedIn companies by keyword. Returns name, subtitle (industry and location), description, follower count as text (e.g. 2M followers), logo, URL and company_id, the numeric id that search_linkedin (author_company, from_company, mentions_company) and search_linkedin_jobs (company_ids) take. 10 results per page. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search LinkedIn Companies
  • search_linkedin_jobsSearch LinkedIn job listings by keyword.No findings

    Why it is in this group

    • The name "search_linkedin_jobs" says "search": a word for reading.
    Description, as the server wrote it
    Search LinkedIn job listings by keyword. Returns title, company and company_id, location, posting date, job type, experience level, workplace type, industry, salary and full description. Filter by recency, job type, company and location; useful as a hiring or expansion signal. 25 jobs per page. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search LinkedIn Jobs
  • search_newsSearch news articles from thousands of sources worldwide.No findings

    Why it is in this group

    • The name "search_news" says "search": a word for reading.
    Description, as the server wrote it
    Search news articles from thousands of sources worldwide. Returns title, URL, snippet, author, source and publish date. Filter by time period, source domain, country and language; up to 100 results per call. Billed $0.008 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search News Articles
  • search_placesSearch Google Maps places (businesses and points of interest) by free-text query.No findings

    Why it is in this group

    • The name "search_places" says "search": a word for reading.
    Description, as the server wrote it
    Search Google Maps places (businesses and points of interest) by free-text query. Returns place_id, name, address, phone, website, rating, review count, opening hours and coordinates. Optionally bias results around lat/lng with zoom. Up to 10 results per page. Pass a place_id to place_details, place_reviews or place_photos. Billed $0.01 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Google Places
  • search_redditSearch Reddit posts by keyword.No findings

    Why it is in this group

    • The name "search_reddit" says "search": a word for reading.
    Description, as the server wrote it
    Search Reddit posts by keyword. Returns title, URL, subreddit, author, text, score, comment count, flair and video/gallery links. Sort by newest, relevance, hot, top or most commented, limit to a time window or one subreddit, and optionally include NSFW posts. 20 posts per page. Use search_reddit_comments to search comment text and reddit_subreddit_posts to browse a subreddit. Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Reddit Posts
  • search_reddit_commentsSearch Reddit comments by keyword, optionally in one subreddit.No findings

    Why it is in this group

    • The name "search_reddit_comments" says "search": a word for reading.
    Description, as the server wrote it
    Search Reddit comments by keyword, optionally in one subreddit. Returns comment text, subreddit, author, date, the comment, post and parent IDs, a link to the comment and a link for the parent post (its Reddit thread, or the article, image or video a link post shares). Use search_reddit for posts. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Reddit Comments
  • search_reddit_subredditsSearch subreddits by keyword.No findings

    Why it is in this group

    • The name "search_reddit_subreddits" says "search": a word for reading.
    Description, as the server wrote it
    Search subreddits by keyword. Returns name, ID, title, member count, description, creation date, type, language and icon for each. 25 per page. Use reddit_subreddit_details for one subreddit's weekly activity. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Reddit Subreddits
  • search_reddit_usersSearch Reddit users by keyword.No findings

    Why it is in this group

    • The name "search_reddit_users" says "search": a word for reading.
    Description, as the server wrote it
    Search Reddit users by keyword. Returns username, user ID, bio, post and comment karma, account creation date, banner, verified, moderator, employee and NSFW flags and profile link. 25 per page, up to 4 pages. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Reddit Users
  • search_substackSearch Substack posts by keyword across every publication.No findings

    Why it is in this group

    • The name "search_substack" says "search": a word for reading.
    Description, as the server wrote it
    Search Substack posts by keyword across every publication. Returns post title, subtitle, author, publication, publication date, engagement (likes, comments, restacks), paywall status, word count, cover image and tags, plus the publications related to the query. Limit to a time window from the past day to the past year. Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Substack Posts
  • search_substack_notesSearch Substack Notes by keyword.No findings

    Why it is in this group

    • The name "search_substack_notes" says "search": a word for reading.
    Description, as the server wrote it
    Search Substack Notes by keyword. Returns each note's text, author, date, engagement (likes, replies, restacks) and any quoted post or note, newest first or top first. Up to 12 notes per page. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Substack Notes
  • search_substack_publicationsSearch Substack publications by name or keyword.No findings

    Why it is in this group

    • The name "search_substack_publications" says "search": a word for reading.
    Description, as the server wrote it
    Search Substack publications by name or keyword. Returns name, URL, tagline, author, subscriber badge, paid-subscriber band, prices, bestseller tier and language for each publication. 20 per page, up to 4 pages. Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Substack Publications
  • search_substack_usersSearch Substack authors and publication profiles by name or keyword.No findings

    Why it is in this group

    • The name "search_substack_users" says "search": a word for reading.
    Description, as the server wrote it
    Search Substack authors and publication profiles by name or keyword. Returns handle, display name, bio, follower count, subscriber badge, bestseller tier and primary publication for each profile. Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Substack Users
  • search_threadsSearch Threads (Meta) posts by keyword.No findings

    Why it is in this group

    • The name "search_threads" says "search": a word for reading.
    Description, as the server wrote it
    Search Threads (Meta) posts by keyword. Returns post text, author, engagement metrics (likes, replies, reposts, quotes, reshares), media, link previews and permalinks. About 20 posts on the first page and 10 on each later page. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Threads Posts
  • search_threads_usersSearch Threads (Meta) users by keyword.No findings

    Why it is in this group

    • The name "search_threads_users" says "search": a word for reading.
    Description, as the server wrote it
    Search Threads (Meta) users by keyword. Returns username, display name, user ID, verification and privacy status and profile picture. Use threads_user_profile for one account's full profile. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Threads Users
  • search_tiktokSearch TikTok videos by keyword.No findings

    Why it is in this group

    • The name "search_tiktok" says "search": a word for reading.
    Description, as the server wrote it
    Search TikTok videos by keyword. Returns title, URL, engagement metrics (plays, likes, comments, shares, downloads), author metadata, music and publish date. Filter by publish time and region; sort by relevance, newest or most liked. Use tiktok_video_details for one video's full details. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search TikTok Videos
  • search_tiktok_hashtagsSearch TikTok hashtags by keyword.No findings

    Why it is in this group

    • The name "search_tiktok_hashtags" says "search": a word for reading.
    Description, as the server wrote it
    Search TikTok hashtags by keyword. Returns each hashtag's numeric ID, name, video count, total views and cover image, 30 per page, most relevant first. Use tiktok_hashtag_videos to get a hashtag's videos. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search TikTok Hashtags
  • search_tiktok_usersSearch TikTok users by keyword.No findings

    Why it is in this group

    • The name "search_tiktok_users" says "search": a word for reading.
    Description, as the server wrote it
    Search TikTok users by keyword. Returns username, nickname, bio, follower and following counts, total likes, video count and verification status. Use tiktok_user_profile for one account's full profile. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search TikTok Users
  • search_trustpilot_categoriesSearch Trustpilot categories by keyword.No findings

    Why it is in this group

    • The name "search_trustpilot_categories" says "search": a word for reading.
    Description, as the server wrote it
    Search Trustpilot categories by keyword. Returns up to 6 fuzzy matches with category_id and name; it never returns zero matches, so check the names fit. Pass a category_id to trustpilot_category_companies or trustpilot_category_details. Billed $0.005 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Trustpilot Categories
  • search_trustpilot_companiesSearch Trustpilot companies by name or keyword.No findings

    Why it is in this group

    • The name "search_trustpilot_companies" says "search": a word for reading.
    Description, as the server wrote it
    Search Trustpilot companies by name or keyword. Returns business_unit_id, name, domain, website, Trustpilot URL, logo, TrustScore, stars, review count, categories and location, plus matching categories. Filter by minimum rating and review count. 10 results per page. Use trustpilot_company_reviews for a company's reviews. Billed $0.005 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Trustpilot Companies
  • search_twitterSearch Twitter/X posts by keyword; X search operators work in query.No findings

    Why it is in this group

    • The name "search_twitter" says "search": a word for reading.
    Description, as the server wrote it
    Search Twitter/X posts by keyword; X search operators work in query. Returns tweet text, author username, URL, date and engagement metrics (likes, retweets, replies, views). Filter by time window (posted_ago) or date range. Use twitter_user_tweets for one account's timeline. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Twitter Posts
  • search_twitter_usersSearch Twitter/X users by keyword.No findings

    Why it is in this group

    • The name "search_twitter_users" says "search": a word for reading.
    Description, as the server wrote it
    Search Twitter/X users by keyword. Returns username, display name, bio, follower and following counts, verification status and profile image. Use twitter_user_profile when you know the username. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search Twitter Users
  • search_webSearch the web through Google organic results.No findings

    Why it is in this group

    • The name "search_web" says "search": a word for reading.
    Description, as the server wrote it
    Search the web through Google organic results. Returns title, URL, snippet, source and domain for each result. Google operators (site:, intitle:) work in query; target by country, language, city and device, filter by time, and optionally include Google's AI Overview. 10 results per page. Billed $0.004 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Google Web Search
  • search_youtubeSearch YouTube videos by keyword.No findings

    Why it is in this group

    • The name "search_youtube" says "search": a word for reading.
    Description, as the server wrote it
    Search YouTube videos by keyword. Returns title, URL, channel, publish date, description, view count, length and thumbnail. Filter by upload date. Use youtube_video_details for one video's full metadata. Billed $0.005 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search YouTube Videos
  • search_youtube_channelsSearch YouTube channels by keyword.No findings

    Why it is in this group

    • The name "search_youtube_channels" says "search": a word for reading.
    Description, as the server wrote it
    Search YouTube channels by keyword. Returns channel name, description, subscriber count and thumbnail. Use youtube_channel_details for one channel's full stats. Billed $0.005 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Search YouTube Channels
  • substack_category_feedGet a Substack category's feed: the posts and notes Substack shows for the topic, top, newest or posts only.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a Substack category's feed: the posts and notes Substack shows for the topic, top, newest or posts only. Each item is tagged note or post. About 11 items per page. Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Substack Category Feed
  • substack_category_publicationsGet a Substack category's leaderboard: the top publications ranked by Substack, each with its full details (subscriber badge, paid band, prices, author) and rank.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a Substack category's leaderboard: the top publications ranked by Substack, each with its full details (subscriber badge, paid band, prices, author) and rank. Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Substack Category Publications
  • substack_note_detailsGet a Substack Note by URL or ID, with its replies.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a Substack Note by URL or ID, with its replies. Returns the note text, author, date, likes, replies and restacks, any quoted post or note, and the reply thread nested to any depth (provide exactly one of url, note_id). Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Substack Note Details
  • substack_publication_detailsGet a Substack publication by subdomain, custom domain, URL or ID.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a Substack publication by subdomain, custom domain, URL or ID. Returns name, tagline, logo, author, the subscriber badge and paid-subscriber band Substack displays, bestseller tier, subscription prices, podcast flag, language, launch dates and the publication's contributors (provide exactly one of publication, publication_id). Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Substack Publication Details
  • substack_publication_recommendationsGet the publications a Substack publication recommends to its readers, and the publications that recommend it.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the publications a Substack publication recommends to its readers, and the publications that recommend it. Each entry carries the publication's name, URL, tagline, author, language, paid status and the recommender's blurb (provide exactly one of publication, publication_id). Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Substack Publication Recommendations
  • substack_user_activityGet an author's public activity feed: their Notes and the posts they publish or restack, newest first, or only their notes, posts, replies, restacks or likes.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get an author's public activity feed: their Notes and the posts they publish or restack, newest first, or only their notes, posts, replies, restacks or likes. Each item is tagged note, post or comment and says what the author did with it. Notes carry text, engagement and any quoted post or note (provide exactly one of username, user_id, url). Billed $0.003 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Substack User Activity
  • substack_user_profileGet a Substack author's full profile by handle, user ID or profile URL.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a Substack author's full profile by handle, user ID or profile URL. Returns display name, bio, follower count, subscriber badge, bestseller tier, the publications they write for, profile links, X handle and leaderboard placement and the publications they subscribe to (provide exactly one of username, user_id, url). Billed $0.003 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Substack User Profile
  • threads_user_profileGet a Threads (Meta) user's profile by username.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a Threads (Meta) user's profile by username. Returns biography, bio links, follower count, verification status, profile picture and topic tags. Use threads_user_posts for their posts. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Threads User Profile
  • tiktok_hashtag_detailsGet one TikTok hashtag's details by name, numeric hashtag ID or hashtag URL (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get one TikTok hashtag's details by name, numeric hashtag ID or hashtag URL (provide exactly one). Returns its ID, video count, total views, description and cover image. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: TikTok Hashtag Details
  • tiktok_hashtag_videosGet the videos under a TikTok hashtag by name, numeric hashtag ID or hashtag URL (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the videos under a TikTok hashtag by name, numeric hashtag ID or hashtag URL (provide exactly one). Returns the same video fields as tiktok_user_videos, about 20 per page. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: TikTok Hashtag Videos
  • tiktok_music_detailsGet one TikTok sound's details by music URL or numeric music ID (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get one TikTok sound's details by music URL or numeric music ID (provide exactly one). Returns its title, artist, album, duration, playback URL, cover image and the number of videos using it. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: TikTok Music Details
  • tiktok_music_videosGet the videos using a TikTok sound by music URL or numeric music ID (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the videos using a TikTok sound by music URL or numeric music ID (provide exactly one). Returns the same video fields as tiktok_user_videos, about 12 per page. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: TikTok Music Videos
  • tiktok_playlist_detailsGet one TikTok playlist's details by playlist URL or numeric playlist ID (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get one TikTok playlist's details by playlist URL or numeric playlist ID (provide exactly one). Returns its name, creator and video count. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: TikTok Playlist Details
  • tiktok_playlist_videosGet a TikTok playlist's videos in playlist order by playlist URL or numeric playlist ID (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a TikTok playlist's videos in playlist order by playlist URL or numeric playlist ID (provide exactly one). Returns the same video fields as tiktok_user_videos, 30 per page. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: TikTok Playlist Videos
  • tiktok_user_followersGet a TikTok user's followers, newest first, by username, numeric user ID or profile URL (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a TikTok user's followers, newest first, by username, numeric user ID or profile URL (provide exactly one). Returns username, display name, user ID, bio, follower and following counts, total likes, video count, verification status, region, join date and linked Instagram, X and YouTube accounts for each follower, 100 per page. A private account returns a 403 limited_account error. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: TikTok User Followers
  • tiktok_user_followingGet the accounts a TikTok user follows, by username, numeric user ID or profile URL (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the accounts a TikTok user follows, by username, numeric user ID or profile URL (provide exactly one). Returns the same profile fields as tiktok_user_followers for each account, 50 per page. An account that hides its following list returns a 403 limited_account error. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: TikTok User Following
  • tiktok_user_likesGet the videos a TikTok user has liked, by username, numeric user ID or profile URL (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the videos a TikTok user has liked, by username, numeric user ID or profile URL (provide exactly one). Returns the same video fields as tiktok_user_videos, about 30 per page. Accounts that hide their liked videos return an empty list. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: TikTok User Likes
  • tiktok_user_profileGet a TikTok user's profile by username, numeric user ID or profile URL (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a TikTok user's profile by username, numeric user ID or profile URL (provide exactly one). Returns bio, bio link, follower and following counts, total likes, video count, verification status, join date and linked Instagram, X and YouTube accounts. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: TikTok User Profile
  • tiktok_user_storiesGet a TikTok user's currently live stories (24-hour posts) by username, numeric user ID or profile URL (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a TikTok user's currently live stories (24-hour posts) by username, numeric user ID or profile URL (provide exactly one). Returns the same video fields as tiktok_user_videos. A user with no live stories returns an empty list. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: TikTok User Stories
  • tiktok_user_videosGet a TikTok user's videos, newest first, by username, numeric user ID or profile URL (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a TikTok user's videos, newest first, by username, numeric user ID or profile URL (provide exactly one). Returns caption, link, publish date, play, like, comment, share, download and save counts, watermark-free playback URLs, cover images, the sound used and author details for each video, about 30 per page. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: TikTok User Videos
  • tiktok_video_detailsGet one TikTok video by URL or numeric video ID (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get one TikTok video by URL or numeric video ID (provide exactly one). Returns caption, play, like, comment, share and save counts, watermark-free playback and download URLs, cover images, music track and author details. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: TikTok Video Details
  • trustpilot_category_companiesList the companies in a Trustpilot category by category slug or URL.No findings

    Why it is in this group

    • The description's first verb is "list": a word for reading.
    Description, as the server wrote it
    List the companies in a Trustpilot category by category slug or URL. Returns name, domain, TrustScore, review count, categories and location, plus the category's size and subcategories. Filter by country, minimum rating and claimed status; sort by recommended or recently reviewed. 20 per page. Find slugs with search_trustpilot_categories or at https://apidirect.io/docs/trustpilot-category-ids. Billed $0.005 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Trustpilot Category Companies
  • trustpilot_category_detailsGet a Trustpilot category by slug or URL.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a Trustpilot category by slug or URL. Returns display name, business count, parent category, and subcategories with their ids and business counts. Works at all three category levels. Billed $0.005 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Trustpilot Category Details
  • trustpilot_category_newestGet the companies most recently added to a Trustpilot category, by slug or URL: a short unpaginated list (often 0-10) with name, domain, TrustScore, review count and location, plus…No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the companies most recently added to a Trustpilot category, by slug or URL: a short unpaginated list (often 0-10) with name, domain, TrustScore, review count and location, plus the category's size and subcategories. Billed $0.005 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Trustpilot Category Newest
  • trustpilot_company_reviewsGet a company's Trustpilot reviews and profile by domain or Trustpilot URL.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a company's Trustpilot reviews and profile by domain or Trustpilot URL. The profile has TrustScore, stars, review counts and per-star breakdown, categories, claimed and verification status, reply behaviour and contact details. Each review has rating, title, text, dates, verification level, likes, author id, name and country, and the company's reply. Filter by stars, recency, language, verified, replied or keyword. 20 reviews per page. Billed $0.005 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Trustpilot Company Reviews
  • trustpilot_user_profileGet a Trustpilot reviewer's public profile by user ID (a review's author_id) or URL: name, country, review count, verified status, likes and reads, plus the reviews they wrote acro…No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a Trustpilot reviewer's public profile by user ID (a review's author_id) or URL: name, country, review count, verified status, likes and reads, plus the reviews they wrote across all companies, each with company name and domain, rating, title, text, dates and the company's reply. 20 reviews per page. Billed $0.005 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Trustpilot User Profile
  • twitter_tweet_detailsGet one tweet by its numeric ID.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get one tweet by its numeric ID. Returns full text, engagement metrics, author info and metadata. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Twitter Tweet Details
  • twitter_tweet_quotesGet the quote tweets of a tweet, by numeric tweet ID.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the quote tweets of a tweet, by numeric tweet ID. Returns each quote's text and engagement metrics. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Twitter Quote Tweets
  • twitter_tweet_retweetsGet the users who retweeted a tweet, by numeric tweet ID.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the users who retweeted a tweet, by numeric tweet ID. Returns profile details for each user. Use twitter_tweet_quotes for retweets that added a comment. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Twitter Tweet Retweets
  • twitter_user_followersGet the followers of a Twitter/X user by username.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the followers of a Twitter/X user by username. Returns each follower's username, bio, follower counts and verification status. Use twitter_verified_followers for verified followers only. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Twitter User Followers
  • twitter_user_followingGet the accounts a Twitter/X user follows, by username.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the accounts a Twitter/X user follows, by username. Returns profile details for each account, about 50 per page. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Twitter User Following
  • twitter_user_profileGet a Twitter/X user's profile by username.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a Twitter/X user's profile by username. Returns display name, bio, follower and following counts, verification status and account metadata. Use search_twitter_users to find an account by keyword. Billed $0.006 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Twitter User Profile
  • twitter_user_tweetsGet the tweets a Twitter/X user posted, by username.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get the tweets a Twitter/X user posted, by username. Returns tweet text, engagement metrics and metadata. Use twitter_user_replies for their replies. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Twitter User Tweets
  • twitter_verified_followersGet only the verified (blue checkmark) followers of a Twitter/X user, by username.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get only the verified (blue checkmark) followers of a Twitter/X user, by username. Returns profile details for each. Use twitter_user_followers for all followers. Billed $0.006 per page.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: Twitter Verified Followers
  • youtube_channel_detailsGet a YouTube channel by channel ID, URL or name/@handle (provide exactly one).No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get a YouTube channel by channel ID, URL or name/@handle (provide exactly one). Returns name, description, subscriber, video and total view counts, country, creation date, verification status, external links, profile picture and banner. Billed $0.005 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: YouTube Channel Details
  • youtube_video_detailsGet one YouTube video by URL or 11-character video ID.No findings

    Why it is in this group

    • The description's first verb is "get": a word for reading.
    Description, as the server wrote it
    Get one YouTube video by URL or 11-character video ID. Returns title, full description, channel name and ID, publish date, duration in seconds, view count, category, keywords and thumbnail. Works for regular videos, Shorts and live streams. Use get_youtube_comments for its comments. Billed $0.005 per request.

    Annotations the server declares

    • destructiveHint: false
    • openWorldHint: true
    • readOnlyHint: true
    • title: YouTube Video Details

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 1.0.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http api-direct https://apidirect.io/mcp --header 'X-API-Key: <your-x-api-key>'

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__api-direct__list_skills",
      "mcp__api-direct__get_skill",
      "mcp__api-direct__search_linkedin",
      "mcp__api-direct__linkedin_person_details",
      "mcp__api-direct__linkedin_company_details",
      "mcp__api-direct__search_linkedin_companies",
      "mcp__api-direct__search_linkedin_jobs",
      "mcp__api-direct__linkedin_job_details",
      "mcp__api-direct__search_twitter",
      "mcp__api-direct__search_twitter_users",
      "mcp__api-direct__twitter_user_profile",
      "mcp__api-direct__twitter_user_tweets",
      "mcp__api-direct__twitter_user_followers",
      "mcp__api-direct__twitter_user_following",
      "mcp__api-direct__twitter_verified_followers",
      "mcp__api-direct__twitter_tweet_details",
      "mcp__api-direct__twitter_tweet_retweets",
      "mcp__api-direct__twitter_tweet_quotes",
      "mcp__api-direct__twitter_trends",
      "mcp__api-direct__search_reddit",
      "mcp__api-direct__search_reddit_comments",
      "mcp__api-direct__search_reddit_users",
      "mcp__api-direct__search_reddit_subreddits",
      "mcp__api-direct__reddit_user_profile",
      "mcp__api-direct__reddit_subreddit_details",
      "mcp__api-direct__reddit_subreddit_rules",
      "mcp__api-direct__reddit_trending",
      "mcp__api-direct__search_youtube",
      "mcp__api-direct__search_youtube_channels",
      "mcp__api-direct__get_youtube_comments",
      "mcp__api-direct__youtube_channel_details",
      "mcp__api-direct__youtube_video_details",
      "mcp__api-direct__search_instagram",
      "mcp__api-direct__search_instagram_users",
      "mcp__api-direct__instagram_user_profile",
      "mcp__api-direct__instagram_user_followers",
      "mcp__api-direct__instagram_user_following",
      "mcp__api-direct__instagram_user_stories",
      "mcp__api-direct__instagram_user_highlights",
      "mcp__api-direct__instagram_highlight_stories",
      "mcp__api-direct__search_threads",
      "mcp__api-direct__search_threads_users",
      "mcp__api-direct__threads_user_profile",
      "mcp__api-direct__search_bluesky",
      "mcp__api-direct__search_bluesky_users",
      "mcp__api-direct__bluesky_user_profile",
      "mcp__api-direct__bluesky_user_followers",
      "mcp__api-direct__bluesky_user_following",
      "mcp__api-direct__bluesky_user_likes",
      "mcp__api-direct__search_substack",
      "mcp__api-direct__search_substack_users",
      "mcp__api-direct__search_substack_publications",
      "mcp__api-direct__search_substack_notes",
      "mcp__api-direct__substack_user_profile",
      "mcp__api-direct__substack_user_activity",
      "mcp__api-direct__substack_publication_details",
      "mcp__api-direct__substack_publication_recommendations",
      "mcp__api-direct__substack_note_details",
      "mcp__api-direct__substack_category_publications",
      "mcp__api-direct__substack_category_feed",
      "mcp__api-direct__substack_trending",
      "mcp__api-direct__search_tiktok",
      "mcp__api-direct__search_tiktok_users",
      "mcp__api-direct__tiktok_user_profile",
      "mcp__api-direct__tiktok_video_details",
      "mcp__api-direct__tiktok_user_videos",
      "mcp__api-direct__tiktok_user_likes",
      "mcp__api-direct__tiktok_user_stories",
      "mcp__api-direct__tiktok_user_followers",
      "mcp__api-direct__tiktok_user_following",
      "mcp__api-direct__search_tiktok_hashtags",
      "mcp__api-direct__tiktok_hashtag_details",
      "mcp__api-direct__tiktok_hashtag_videos",
      "mcp__api-direct__tiktok_music_details",
      "mcp__api-direct__tiktok_music_videos",
      "mcp__api-direct__tiktok_playlist_details",
      "mcp__api-direct__tiktok_playlist_videos",
      "mcp__api-direct__facebook_page_details",
      "mcp__api-direct__facebook_page_photos",
      "mcp__api-direct__facebook_page_videos",
      "mcp__api-direct__facebook_page_reels",
      "mcp__api-direct__facebook_page_reviews",
      "mcp__api-direct__facebook_group_details",
      "mcp__api-direct__search_facebook_posts",
      "mcp__api-direct__search_facebook_pages",
      "mcp__api-direct__search_facebook_videos",
      "mcp__api-direct__search_facebook_events",
      "mcp__api-direct__search_facebook_locations",
      "mcp__api-direct__search_forums",
      "mcp__api-direct__search_news",
      "mcp__api-direct__search_web",
      "mcp__api-direct__search_places",
      "mcp__api-direct__place_details",
      "mcp__api-direct__place_reviews",
      "mcp__api-direct__place_photos",
      "mcp__api-direct__search_amazon_products",
      "mcp__api-direct__amazon_product_details",
      "mcp__api-direct__amazon_seller_profile",
      "mcp__api-direct__amazon_seller_reviews",
      "mcp__api-direct__amazon_seller_products",
      "mcp__api-direct__amazon_best_sellers",
      "mcp__api-direct__trustpilot_company_reviews",
      "mcp__api-direct__search_trustpilot_companies",
      "mcp__api-direct__trustpilot_category_companies",
      "mcp__api-direct__trustpilot_category_newest",
      "mcp__api-direct__trustpilot_category_details",
      "mcp__api-direct__search_trustpilot_categories",
      "mcp__api-direct__trustpilot_user_profile"
    ],
    "ask": [
      "mcp__api-direct__linkedin_person_posts",
      "mcp__api-direct__linkedin_post_details",
      "mcp__api-direct__linkedin_company_posts",
      "mcp__api-direct__twitter_user_replies",
      "mcp__api-direct__twitter_tweet_comments",
      "mcp__api-direct__reddit_post_details",
      "mcp__api-direct__reddit_post_comments",
      "mcp__api-direct__reddit_post_crossposts",
      "mcp__api-direct__reddit_user_posts",
      "mcp__api-direct__reddit_user_comments",
      "mcp__api-direct__reddit_subreddit_posts",
      "mcp__api-direct__instagram_user_posts",
      "mcp__api-direct__instagram_post_details",
      "mcp__api-direct__instagram_post_comments",
      "mcp__api-direct__instagram_comment_replies",
      "mcp__api-direct__instagram_post_likes",
      "mcp__api-direct__instagram_hashtag_posts",
      "mcp__api-direct__threads_user_posts",
      "mcp__api-direct__truthsocial_user_posts",
      "mcp__api-direct__bluesky_user_posts",
      "mcp__api-direct__bluesky_post_details",
      "mcp__api-direct__bluesky_post_comments",
      "mcp__api-direct__bluesky_post_likes",
      "mcp__api-direct__bluesky_post_quotes",
      "mcp__api-direct__bluesky_post_reposts",
      "mcp__api-direct__substack_user_posts",
      "mcp__api-direct__substack_publication_posts",
      "mcp__api-direct__substack_post_details",
      "mcp__api-direct__substack_post_comments",
      "mcp__api-direct__substack_post_likes",
      "mcp__api-direct__tiktok_video_comments",
      "mcp__api-direct__tiktok_comment_replies",
      "mcp__api-direct__facebook_page_posts",
      "mcp__api-direct__facebook_group_posts",
      "mcp__api-direct__facebook_post_comments",
      "mcp__api-direct__google_ai_mode",
      "mcp__api-direct__batch_requests"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as api-direct. Review it before you use it.