Influship Influencer Marketing MCP
Server Details
Find and analyze influencers with creator search, lookalikes, profiles, posts, and transcripts.
- Status
- Healthy
- Uptime
- 100.0% over the last 24 hours
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 40 tools
The set contains six-plus overlapping creator-lookup tools (autocomplete_creators, search_creators, semantic_search_creators, get_profile, get_creator, lookup_profiles) whose boundaries are only distinguishable by reading very long descriptions. `search_creators` is explicitly a hybrid that routes to legacy semantic search, which is a built-in source of misselection. Singular/plural and single-vs-batch pairs on the platform tools (get_instagram_post vs get_instagram_posts, get_tiktok_video_transcript(s)) are conventional but still easy to confuse.
Nearly all tools follow snake_case verb_noun with a recognizable prefix family (get_, list_, search_, find_, match_, render_). Minor deviations exist: `autocomplete_creators` and `semantic_search_creators` use noun/adjective-first forms, and two meta-tools (get_more_tools, send_feedback) break the domain pattern, but overall the scheme is readable and predictable.
40 tools is well past the point where an agent can reliably hold the surface in mind, and a meaningful fraction are redundant variants (three creator search tools, four profile-fetching tools, four separate singular/plural Instagram post tools). The domain justification for the breadth is real — creator discovery plus three social platforms — but the partitioning multiplies tools rather than consolidating them into batch-capable calls.
Read/lookup coverage is genuinely deep (Instagram, TikTok, YouTube profiles, posts, comments, transcripts, music, hashtags) and covers discover → inspect → score → render. However, for something branded an 'influencer marketing' server there is no write surface: no campaign/brief creation, no list or shortlist persistence, no outreach or status tracking, and the render tools are the only place campaign briefs appear. That leaves an agent unable to complete the post-selection half of the marketing lifecycle.
Available Tools
40 toolsautocomplete_creatorsARead-onlyInspect
Autocomplete creator names, usernames, or display names from partial input.
Use this for fast lookup when the user types a partial handle or name and you need to
resolve it to canonical creator IDs (e.g., "find @cris" or "who's that fitness coach
called Jane?"). Cheap and fast — prefer over search_creators for handle-style
queries where the user already knows roughly who they want.
Use get_profile instead when the user gives an exact platform+username pair. Use
search_creators for the same fuzzy creator lookup behavior with a less typeahead-
specific name. Use semantic_search_creators only for discovery by topic, niche,
audience, geography, or content style, not for resolving a known creator.
Examples:
User: "Who is that fitness coach called Jane?" -> use this tool.
User: "Find @cris..." -> use this tool to resolve the partial handle.
User: "Pull @niickjackson on Instagram" -> use
get_profile, not this tool.
Returns a short list of matching creators with their IDs, platforms, and display names.
Use the IDs returned here as input to get_creator, find_lookalike_creators, or
match_creators for downstream operations.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search query (min 2 characters) | |
| limit | No | Maximum results to return | |
| scope | No | Which platforms to include in results | all_platforms |
| platform | No | Filter by platform |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
find_lookalike_creatorsARead-onlyInspect
Find creators SIMILAR to one or more seed creators.
Use this when the user already knows a creator they like and wants more like them (e.g., "find creators like @therock", "find more creators like these three I just booked"). Seeds are blended via creator-profile + visual-style + fact embeddings to surface similar accounts.
Seeds are passed in seed_creator_ids (canonical UUIDs) and/or seed_profiles
(platform + username; resolve handles via autocomplete_creators first if needed).
Returns a ranked list of similar creators with scores. limit caps results
(default 25, max 100). Use the flat follower, engagement-rate, and verified fields
to constrain results. A seed_not_found response means the supplied creator is
not available for similarity matching; choose another seed instead of retrying it.
Use semantic_search_creators instead when you have a topic/niche but no seed.
Use match_creators when you have specific candidates and want to score their fit
against a brief.
Examples:
User: "Find creators like @niickjackson on Instagram" -> use this tool with
seed_profiles: [{ platform: "instagram", username: "niickjackson" }].User: "Find news creators with 1M+ followers" -> use
semantic_search_creators, not this tool.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum results to return. | |
| cursor | No | Pagination cursor from a previous response. | |
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| verified | No | When set, only return verified or unverified creators. | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| max_followers | No | Maximum follower count. | |
| min_followers | No | Minimum follower count. | |
| seed_profiles | No | Seed creators identified by platform and username. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. | |
| seed_creator_ids | No | Seed creators identified by canonical Influship creator UUID. | |
| max_engagement_rate | No | Maximum engagement rate as a percentage from 0 to 100. | |
| min_engagement_rate | No | Minimum engagement rate as a percentage from 0 to 100. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_creatorARead-onlyInspect
Fetch the full record for a single creator by ID or exact platform username.
Use this when you already have either:
a canonical creator UUID returned by
search_creators,semantic_search_creators,autocomplete_creators, orfind_lookalike_creators; oran exact platform+username pair such as platform "instagram" and username "niickjackson".
Pass include: ['profiles'] to also receive the creator's social profile
summaries when using a creator UUID. For platform+username inputs, this tool resolves
through the profile endpoint and returns the profile record plus the underlying creator
record, so you already get the matched profile context.
Examples:
User: "Get creator 123e4567-e89b-12d3-a456-426614174000" -> call with id.
User: "Get @niickjackson on Instagram" -> call with platform "instagram" and username "niickjackson", or use
get_profileif profile metrics are the main need.User: "Tell me about @niickjackson and include his profiles" -> use platform "instagram" and username "niickjackson"; then use
get_profile/get_postsfor platform-specific metrics and content if needed.
Use lookup_profiles for batch exact profile lookups.
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | Creator unique identifier | |
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| include | No | Additional data to include in response | |
| platform | No | Social platform for the username. | |
| username | No | Public username or handle. A leading @ is accepted. | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_instagram_postARead-onlyInspect
Fetch raw Instagram post-page data by shortcode.
Use this when the user needs fresh raw Instagram post metadata that is not guaranteed on regular cached post-list endpoints yet, including coauthors, tagged users, paid partnership metadata, product mentions, music attribution, location, display resources, and video versions.
| Name | Required | Description | Default |
|---|---|---|---|
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| shortcode | Yes | Instagram post shortcode from a /p/, /reel/, or /tv/ URL | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_instagram_postsBRead-onlyInspect
Fetch raw Instagram post-page data for a bounded list of shortcodes through the raw API. Transient upstream recovery is handled automatically within the request deadline.
Returns one item per requested shortcode with per-item success or error details.
| Name | Required | Description | Default |
|---|---|---|---|
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| shortcodes | Yes | Instagram post shortcodes from /p/, /reel/, or /tv/ URLs | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_instagram_post_transcriptARead-onlyInspect
Transcribe an Instagram video post by shortcode through the raw API.
The response includes raw post metadata on a transcript cache miss. A cache hit
omits the post field; use get_instagram_post when you need post metadata with
a cached transcript.
| Name | Required | Description | Default |
|---|---|---|---|
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| language | No | Optional transcript language code. Omit to auto-detect. | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| shortcode | Yes | Instagram post shortcode from a /p/, /reel/, or /tv/ URL | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_instagram_post_transcriptsARead-onlyInspect
Transcribe a bounded list of Instagram video posts by shortcode through the raw API.
Each successful item includes transcript data. The nested post field is present
on cache misses and omitted on cache hits; use get_instagram_posts when you
also need post metadata for every shortcode.
| Name | Required | Description | Default |
|---|---|---|---|
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| language | No | Optional transcript language code. Omit to auto-detect. | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| shortcodes | Yes | Instagram video post shortcodes from /p/, /reel/, or /tv/ URLs | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_instagram_profileGet live Instagram profileARead-onlyInspect
Retrieve a live Instagram profile by exact public username, including biography, follower and following counts, verification, and collection time. Optionally include 1–50 recent posts with captions, public links, likes, comments, video views, and publish times. Unavailable view counts are null. Engagement rate is calculated from returned posts with visible counts; profile-only lookups return null. Leading @ is accepted. This source-platform lookup costs 0.5 account credits, including requested posts; stored creator evidence is a separate lookup.
| Name | Required | Description | Default |
|---|---|---|---|
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| username | Yes | Public username or handle. A leading @ is accepted. | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| post_limit | No | Maximum recent posts when include_posts is true. | |
| include_posts | No | Include recent source-platform posts. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes |
get_more_toolsARead-onlyIdempotentInspect
Check for additional tools whenever your task might benefit from specialized capabilities - even if existing tools could work as a fallback.
| Name | Required | Description | Default |
|---|---|---|---|
| context | Yes | A description of your goal and what kind of tool would help accomplish it. | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
get_postsARead-onlyInspect
Fetch a creator's posts, sorted and paginated.
Use this when the user asks to see what a creator has posted (e.g., "show me Jane's
last 20 posts", "what are this creator's top-engagement reels?", "pull recent posts
from creator-id ABC"). Identify the creator by either creator_id (UUID) OR
(platform + username).
sort defaults to "recent" (newest first); use "top_engagement" for the highest-
engagement posts, or one of "most_likes" / "most_views" / "most_comments" for a
specific metric. limit defaults to 12 and is capped at 50. Pass cursor from a
previous response's next_cursor to paginate.
Returns post records (caption, media URL, like/comment/view counts, timestamps),
plus has_more and next_cursor for pagination.
Examples:
User: "Show @niickjackson's recent Instagram posts" -> use this tool with platform "instagram" and username "niickjackson".
User: "Is @niickjackson a fit for Pixel?" -> use this after
get_profilewhen the fit analysis needs recent content evidence, then callmatch_creators.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Sort order | recent |
| limit | No | Maximum posts to return | |
| cursor | No | Opaque keyset cursor from next_cursor. A cursor is bound to the sort order that produced it; using it with another sort returns 400. | |
| platform | No | Platform (required with username) | |
| username | No | Username (required with platform) | |
| creator_id | No | Creator ID (use this OR platform+username) |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_profileARead-onlyInspect
Fetch a single social profile by (platform, username).
Always use this first when the user gives an exact handle on a specific platform
(for example "@niickjackson on Instagram") and you need the full profile: bio,
follower/engagement metrics, recent activity, growth, and the canonical creator ID.
Pass exactly the username they typed without the @ sign — case-insensitive matching is
handled server-side. Do not use search_creators for an exact platform+username
lookup.
Examples:
User: "Pull @niickjackson on Instagram" -> use this tool with platform "instagram" and username "niickjackson".
User: "Tell me about instagram.com/niickjackson" -> parse the platform and username, then use this tool.
User: "Is @niickjackson a fit for Pixel?" -> use this tool first, then call
get_postsand/ormatch_creatorsif the task needs content or fit analysis.
Returns the profile record plus the underlying creator record. If you already have a
creator UUID, use get_creator instead. For batch lookups by handle, use
lookup_profiles.
| Name | Required | Description | Default |
|---|---|---|---|
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| platform | Yes | Social platform for the username. | |
| username | Yes | Public username or handle. A leading @ is accepted. | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_sample_creatorGet sample creatorARead-onlyInspect
Use this when a user wants to see what Influship can return before linking an account.
Fetches one configured sample creator with social profile context. This is a preview tool and should not be used for search, discovery, matching, or comparison requests. After showing the preview, explain only that live creator discovery and comparison require connecting an existing Influship account. Do not discuss plans, pricing, credits, upgrades, or purchasing.
| Name | Required | Description | Default |
|---|---|---|---|
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| view | Yes | |
| posts | Yes | |
| creator | Yes | |
| postsUnavailable | Yes |
get_tiktok_musicGet TikTok sound detailsARead-onlyInspect
Fetch sound clip metadata by music_id. Unknown fields are null. Audio and cover URLs are temporary, not durable downloads. This is a metered request.
| Name | Required | Description | Default |
|---|---|---|---|
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| music_id | Yes | TikTok sound clip ID, not a recording or album ID | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_tiktok_profileGet TikTok profileARead-onlyInspect
Fetch a current, normalized TikTok profile by username.
Returns identity, biography, verification, and audience metrics. A leading @ is accepted and usernames are normalized. This is a metered live-data request.
| Name | Required | Description | Default |
|---|---|---|---|
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| username | Yes | ||
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_tiktok_videoGet TikTok videoBRead-onlyInspect
Fetch normalized details and current engagement metrics for a TikTok video URL.
Canonical video URLs and TikTok share URLs are accepted. Returned media URLs are temporary. Content always resolves against the US region. Each successful request costs 0.2 account credits.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| region | No | US | |
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_tiktok_video_captionsGet TikTok video captionsARead-onlyInspect
Fetch available captions without generating a transcript. Missing captions return an error. Successful requests, including cached captions, cost 0.2 credits.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_tiktok_videosGet TikTok videosARead-onlyInspect
Fetch 1–20 TikTok video URLs in input order, with per-item success or error results. Duplicate entries remain distinct. Each successful entry costs 0.2 account credits.
| Name | Required | Description | Default |
|---|---|---|---|
| urls | Yes | ||
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_tiktok_video_transcriptGet TikTok video transcriptARead-onlyInspect
Fetch or generate a normalized TikTok video transcript.
Returns plain text and timestamped segments. A previously collected transcript can be reused. Each successful request costs 2.5 account credits, including a reused result, and may take longer when transcription must be generated.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_tiktok_video_transcriptsGet TikTok video transcriptsARead-onlyInspect
Fetch transcripts for 1–10 TikTok URLs in input order, with per-item results. Auto mode costs 2.5 account credits per successful entry. Captions mode never generates transcripts and costs 0.2 per successful entry. Duplicate entries remain distinct.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | auto | |
| urls | Yes | ||
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_youtube_channelGet YouTube channelBRead-onlyInspect
Fetch a current YouTube channel by handle, channel ID, or URL.
Optionally includes recent videos. This is a metered live-data request.
| Name | Required | Description | Default |
|---|---|---|---|
| channel | Yes | A handle, channel ID, or YouTube channel URL. | |
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| video_limit | No | ||
| include_videos | No | ||
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_youtube_channel_transcriptsGet YouTube channel transcriptsARead-onlyInspect
Fetch transcripts for a selected batch of videos from a YouTube channel.
Choose the video count, ordering, language, and whether timestamped segments are included. This is a metered batch request.
| Name | Required | Description | Default |
|---|---|---|---|
| channel | Yes | A handle, channel ID, or YouTube channel URL. | |
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| sort_by | No | newest | |
| language | No | en | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| video_limit | No | ||
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. | |
| include_segments | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_youtube_typeaheadGet YouTube search suggestionsARead-onlyInspect
Fetch current localized YouTube query suggestions for a partial phrase.
Useful for expanding topic seeds before search. This is a metered live-data request.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | ||
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| country_code | No | ||
| language_code | No | en | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_youtube_videoGet YouTube videoARead-onlyInspect
Fetch fresh metadata and engagement for a YouTube video ID.
Returns exact publication data when available, plus views, likes, comments, duration, tags, categories, and channel identity. This is a metered live-data request.
| Name | Required | Description | Default |
|---|---|---|---|
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| video_id | Yes | ||
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
get_youtube_video_transcriptGet YouTube video transcriptARead-onlyInspect
Fetch a normalized transcript for a YouTube video ID.
Returns plain text, timestamped segments, and available caption languages. This is a metered request and may take longer when captions must be resolved.
| Name | Required | Description | Default |
|---|---|---|---|
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| language | No | auto | |
| video_id | Yes | ||
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
list_tiktok_comment_repliesList TikTok comment repliesARead-onlyInspect
Fetch one page of replies to a numeric parent comment ID. Keep the video URL and parent ID unchanged when passing the returned cursor. Each successful page costs 0.2 credits.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| cursor | No | ||
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| comment_id | Yes | ||
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
list_tiktok_hashtag_videosList TikTok hashtag videosARead-onlyInspect
Fetch one page of videos under a hashtag, supplied without #. Continue with next_cursor and the same hashtag. Duplicate results are preserved. Media links are temporary. Each successful page, including an empty page, costs 0.2 account credits.
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | ||
| hashtag | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
list_tiktok_music_videosList TikTok sound videosARead-onlyInspect
Fetch one page of videos using a sound clip music_id. Continue with next_cursor and the same music_id; cursors are opaque. Duplicate results are preserved. Media links are temporary. Each successful page, including an empty page, costs 0.2 account credits.
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | ||
| music_id | Yes | TikTok sound clip ID, not a recording or album ID |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
list_tiktok_profile_videosList TikTok profile videosARead-onlyInspect
Fetch one cursor-paginated page of current TikTok videos for a username.
Use the returned cursor to paginate and choose latest or popular ordering. Media URLs are temporary. Content always resolves against the US region. Each successful page, including an empty page, costs 0.2 account credits. A private account returns a forbidden error rather than an empty page; do not retry it.
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | ||
| region | No | US | |
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| sort_by | No | latest | |
| username | Yes | ||
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
list_tiktok_video_commentsList TikTok video commentsARead-onlyInspect
Fetch one cursor-paginated page of current comments for a TikTok video URL.
Pass the returned cursor to retrieve the next page. This is a metered live-data request.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | ||
| cursor | No | ||
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
lookup_profilesARead-onlyInspect
Batch-fetch up to 100 profiles by (platform, username) pairs.
Use this when the user has a list of handles and you need profile data for all of
them at once (e.g., "give me follower counts for these 30 accounts I'm considering"
or "which of @a @b @c are real accounts?"). One round-trip beats 30 calls to
get_profile.
Use this for exact batch handle lookup, not semantic discovery. For one exact
platform+username pair, use get_profile. For partial or fuzzy handle/name input,
use search_creators or autocomplete_creators. Use
semantic_search_creators only for topical/niche/audience discovery where
false-positive semantic matches are acceptable.
Examples:
User: "Compare @a, @b, and @c on Instagram" -> use this tool for the exact handle batch.
User: "Give me follower counts for these 30 accounts" -> use this tool.
User: "Find wellness creators in Austin" -> use
semantic_search_creators, not this tool.
The response splits results into data (profiles found) and not_found (the
(platform, username) pairs that weren't recognized). Profiles are returned in no
particular order — re-correlate via the platform/username fields if you need to
preserve input order.
| Name | Required | Description | Default |
|---|---|---|---|
| profiles | Yes | Profiles to lookup |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
match_creatorsARead-onlyInspect
Score how well specific creators fit a campaign brief or search intent.
Use this when the user already has candidate creators in mind and wants to evaluate fit (e.g., "rate these 5 creators for a vegan cookbook launch", "which of these is the best match for my crypto audience?"). For each creator the API returns a match score (0-1), a good/neutral/avoid decision, and structured reasons.
Pass candidates in creator_ids (canonical UUIDs) and/or profiles
(platform + username). intent_query is the brief the LLM reasons against;
intent_context is optional extra context (target audience, brand values,
prior collabs).
Use semantic_search_creators when you don't have candidates yet and need topical
or niche discovery. Use search_creators first when you only need to resolve rough
creator names/handles into candidates.
Use find_lookalike_creators when you want creators similar to known good fits.
Examples:
User: "Is @niickjackson a fit for Pixel?" -> use this tool after resolving the exact Instagram profile with
get_profile; callget_postsfirst if recent content context is needed.User: "Rate these five creators for a vegan cookbook launch" -> use this tool.
| Name | Required | Description | Default |
|---|---|---|---|
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| profiles | No | Candidate creators identified by platform and username. | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| creator_ids | No | Candidate creators identified by canonical Influship creator UUID. | |
| intent_query | Yes | Campaign brief or matching intent. | |
| intent_context | No | Optional extra campaign context, audience, brand values, or prior collabs. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
render_creator_comparisonCompare creator fitAInspect
Use this when the user has 2–4 canonical creator IDs and a specific campaign brief. It fetches current creator details, scores each creator against the brief, and renders a side-by-side comparison. This may consume Influship account or API usage.
| Name | Required | Description | Default |
|---|---|---|---|
| context | No | Optional brand constraints or evaluation context. | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| creator_ids | Yes | Two to four canonical creator IDs to compare. | |
| campaign_brief | Yes | Specific campaign, audience, product, and desired creator fit. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| view | Yes | |
| brief | Yes | |
| title | Yes | |
| creators | Yes |
render_creator_profileShow creator profileAInspect
Use this when the user wants a visual deep dive on one canonical creator ID. It fetches the current creator record plus up to six recent posts and may consume Influship account or API usage.
| Name | Required | Description | Default |
|---|---|---|---|
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| creator_id | Yes | Canonical Influship creator ID. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| view | Yes | |
| posts | Yes | |
| creator | Yes | |
| postsUnavailable | Yes |
render_creator_shortlistShow creator shortlistAInspect
Use this when discovery or lookup tools have returned results and the user would benefit from scanning 1–8 creator cards. Pass search_id after semantic_search_creators so the exact ranking, confidence, and evidence are preserved. Pass creator_ids only for name/handle lookup results. Always call an Influship data tool first; do not invent IDs. This fetches stored creator details and may consume Influship account or API usage.
| Name | Required | Description | Default |
|---|---|---|---|
| brief | No | Campaign brief or discovery intent that produced this shortlist. | |
| title | No | Short factual title for this shortlist. | |
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| search_id | No | Search ID returned by semantic_search_creators. Prefer this for discovery results so exact ranking and evidence are preserved. | |
| creator_ids | No | Canonical creator IDs returned by an Influship lookup tool. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| view | Yes | |
| brief | Yes | |
| title | Yes | |
| creators | Yes | |
| omittedCount | Yes |
search_creatorsARead-onlyIdempotentInspect
Find a creator by name/handle, while preserving legacy semantic creator search.
Use this as the default creator lookup tool when the user gives a creator-ish string but not a canonical creator UUID: a handle, partial handle, display name, creator name, or profile-ish text. This is cheap, fast, and backed by the creator lookup index.
If the user gives an exact handle on a specific platform (for example "@niickjackson on
Instagram"), prefer get_profile first because it returns the full platform profile.
If you need to resolve a rough creator name or partial handle first, use this tool with
query_type: "creator_lookup".
For backward compatibility, this tool still accepts the old semantic-search fields
(platforms, follower/engagement filters, creator_kinds) and routes legacy calls
to the semantic endpoint unless the query clearly contains a handle/profile URL. For
new topical/niche discovery calls such as "fitness creators in NYC" or "vegan recipe
creators with high engagement", prefer semantic_search_creators because its name is
explicit and less likely to be confused with exact creator lookup.
Examples:
User: "Find @cris" -> use this tool with query "cris" and query_type "creator_lookup".
User: "Who is that fitness coach called Jane?" -> use this tool with query "Jane" and query_type "creator_lookup".
User: "Pull @niickjackson on Instagram" -> use
get_profilewith platform "instagram" and username "niickjackson".User: "Find news creators with 1M+ followers" -> use
semantic_search_creators, not this tool.
Returns either autocomplete-style creator lookup results or legacy semantic results,
depending on routing. Use returned creator IDs with get_creator,
find_lookalike_creators, or match_creators; use returned platform usernames
with get_profile or get_posts.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum results to return. | |
| query | Yes | Natural-language semantic discovery query by topic, niche, audience, geography, or content style. Do not pass exact handles or usernames here; use get_profile, lookup_profiles, or autocomplete_creators instead. | |
| scope | No | Which linked platforms to include in each lookup result. | all_platforms |
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| platform | No | Optional platform to narrow username matching. | |
| verified | No | When set, only return verified or unverified creators. | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| platforms | No | Platforms to search. Omit for all. | |
| query_type | No | Use creator_lookup for specific names/handles and semantic_discovery for topical/niche discovery. Auto routes exact handles and profile URLs to lookup, and keeps legacy semantic-search behavior otherwise. | auto |
| creator_kinds | No | Optional creator kind filter. Omit for no creator-kind filter. | |
| max_followers | No | Maximum follower count. | |
| min_followers | No | Minimum follower count. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. | |
| max_engagement_rate | No | Maximum engagement rate as a percentage from 0 to 100. | |
| min_engagement_rate | No | Minimum engagement rate as a percentage from 0 to 100. |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
search_tiktok_usersSearch TikTok usersARead-onlyInspect
Fetch one page of TikTok user search results. Unknown profile fields are null. Continue with next_cursor and the same query; cursors are opaque. Each successful page, including an empty page, costs 0.2 account credits.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| cursor | No | ||
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
search_tiktok_videosSearch TikTok videosARead-onlyInspect
Fetch one relevance-ordered page of TikTok videos. Continue with next_cursor and the same query. Duplicate results are preserved. Media links are temporary. Each successful page, including an empty page, costs 0.2 account credits.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | ||
| cursor | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
search_youtubeSearch YouTubeARead-onlyInspect
Search current YouTube results with discovery filters and cursor pagination.
Filter by upload window, popularity, result type, duration, country, and language. Pass next_cursor back as cursor for the next page. Each page is one metered request.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | ||
| limit | No | ||
| cursor | No | ||
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| sort_by | No | relevance | |
| duration | No | any | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| upload_date | No | any | |
| content_type | No | all | |
| country_code | No | ||
| language_code | No | en | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
semantic_search_creatorsARead-onlyInspect
Semantic discovery search for influencers/content creators using natural-language queries.
Use this only when the user asks to discover creators by topic, audience, geography, niche, content style, or campaign criteria (e.g., "fitness creators in NYC", "vegan recipe creators with high engagement", "tech reviewers who cover phones"). The query is matched against creator profiles, extracted facts, and visual style via hybrid vector search.
Do not use this for exact handles, usernames, or known creator names. If the user gives
a specific platform and handle (for example "@niickjackson on Instagram"), use
get_profile first. For rough name/handle lookup, use search_creators. For
multiple known handles, use lookup_profiles. Semantic search can return lookalike
or topical matches and is allowed to miss an exact username.
Examples:
User: "Find news creators with 1M+ followers" -> use this tool.
User: "Find creators in LA who make cinematic travel videos" -> use this tool.
User: "Pull @niickjackson on Instagram" -> use
get_profile, not this tool.User: "Is @niickjackson a fit for Pixel?" -> use
get_profilefirst, optionallyget_posts, thenmatch_creators.
Returns a ranked list of creators (id, platform, username, follower count, engagement rate, top categories, evidence facts). Use the flat follower, engagement-rate, and verified fields to constrain results when the user gives concrete numeric constraints.
Use find_lookalike_creators instead when you want creators SIMILAR to known ones.
Use match_creators when you want to SCORE specific creators against a brief.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum results to return. | |
| query | Yes | Natural-language semantic discovery query by topic, niche, audience, geography, or content style. Do not pass exact handles or usernames here; use get_profile, lookup_profiles, or autocomplete_creators instead. | |
| context | Yes | Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as "a user", "the customer", or "an account". Example: "Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution." | |
| verified | No | When set, only return verified or unverified creators. | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| platforms | No | Platforms to search. Omit for all. | |
| creator_kinds | No | Optional creator kind filter. Omit for no creator-kind filter. | |
| max_followers | No | Maximum follower count. | |
| min_followers | No | Minimum follower count. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. | |
| max_engagement_rate | No | Maximum engagement rate as a percentage from 0 to 100. | |
| min_engagement_rate | No | Minimum engagement rate as a percentage from 0 to 100. |
Output Schema
| Name | Required | Description |
|---|---|---|
| ok | No | |
| data | No | |
| count | No | |
| results | No | |
| has_more | No | |
| not_found | No | |
| next_cursor | No | |
| suggested_followups | No |
send_feedbackARead-onlyIdempotentInspect
Send feedback about this server to its developers. Most important: report a missing capability whenever no available tool fits your task, even if you can work around it (feedback_type "missing_capability"). Also welcome: a tool that failed or confused you, an unhelpful error, or something that worked well. This records the feedback; it does not add or change tools. Do not include user PII or sensitive content.
| Name | Required | Description | Default |
|---|---|---|---|
| details | No | Optional longer context: what you tried, exact parameter values, the error text you saw, and any workaround you used. Omit when the summary says it all. | |
| summary | Yes | One self-contained sentence. For 'missing_capability': the capability you needed, e.g. 'No tool to delete multiple cohorts in one call.' For 'issue': the tool and the problem, e.g. 'query-trends rejects relative date ranges with an unclear error.' | |
| llm_model | Yes | The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. "claude-opus-4-8", "gpt-5.2"). Used for analytics only. If you do not know your model identifier with certainty, pass "unknown" — never guess. | |
| sentiment | No | Optional: how the experience felt overall. | |
| tool_name | No | Optional: the existing tool this feedback is about (for 'issue' or 'praise'). Leave empty for 'missing_capability' - the point is that no tool fits. | |
| feedback_type | Yes | What kind of feedback this is. Use 'missing_capability' when the tool you needed does not exist in the tool list - nothing failed, the capability is absent (this is the most valuable report; send it even if you found a workaround). Use 'issue' when an existing tool behaved badly: it failed, returned a confusing error, or its description or schema misled you. Use 'praise' when something worked notably well. Use 'other' for anything else. | |
| task_completed | No | Optional: whether you still completed the user's task despite the problem. | |
| conversation_id | No | Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request. | |
| friction_points | No | Optional: the specific moments that slowed you down, as short bullet-like sentences, quoting exact tool names, parameters, or error text. | |
| suggested_improvement | No | Optional: the concrete change that would have helped, e.g. the tool to add, the description to reword, or the error message to improve. |
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
34 tool updates
- Changed
find_lookalike_creators5 fields changed- removed
Input schema / additionalPropertiesRemoved value: -false - added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - added
Input schema / requiredAdded value: +[ + "context", + "llm_model" +]
- Changed
get_creator5 fields changed- removed
Input schema / additionalPropertiesRemoved value: -false - added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - added
Input schema / requiredAdded value: +[ + "context", + "llm_model" +]
- Changed
get_instagram_post4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "shortcode" -]New value: +[ + "shortcode", + "context", + "llm_model" +]
- Changed
get_instagram_post_transcript4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "shortcode" -]New value: +[ + "shortcode", + "context", + "llm_model" +]
- Changed
get_instagram_post_transcripts4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "shortcodes" -]New value: +[ + "shortcodes", + "context", + "llm_model" +]
- Changed
get_instagram_posts4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "shortcodes" -]New value: +[ + "shortcodes", + "context", + "llm_model" +]
- Changed
get_instagram_profile5 fields changed- removed
Input schema / additionalPropertiesRemoved value: -false - added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "username" -]New value: +[ + "username", + "context", + "llm_model" +]
- Added
get_more_tools - Changed
get_profile5 fields changed- removed
Input schema / additionalPropertiesRemoved value: -false - added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "platform", - "username" -]New value: +[ + "platform", + "username", + "context", + "llm_model" +]
- Changed
get_sample_creator5 fields changed- removed
Input schema / additionalPropertiesRemoved value: -false - added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - added
Input schema / requiredAdded value: +[ + "context", + "llm_model" +]
- Changed
get_tiktok_music4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "music_id" -]New value: +[ + "music_id", + "context", + "llm_model" +]
- Changed
get_tiktok_profile4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "username" -]New value: +[ + "username", + "context", + "llm_model" +]
- Changed
get_tiktok_video4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "url" -]New value: +[ + "url", + "context", + "llm_model" +]
- Changed
get_tiktok_video_captions4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "url" -]New value: +[ + "url", + "context", + "llm_model" +]
- Changed
get_tiktok_video_transcript4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "url" -]New value: +[ + "url", + "context", + "llm_model" +]
- Changed
get_tiktok_video_transcripts4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "urls" -]New value: +[ + "urls", + "context", + "llm_model" +]
- Changed
get_tiktok_videos4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "urls" -]New value: +[ + "urls", + "context", + "llm_model" +]
- Changed
get_youtube_channel4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "channel" -]New value: +[ + "channel", + "context", + "llm_model" +]
- Changed
get_youtube_channel_transcripts4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "channel" -]New value: +[ + "channel", + "context", + "llm_model" +]
- Changed
get_youtube_typeahead4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "q" -]New value: +[ + "q", + "context", + "llm_model" +]
- Changed
get_youtube_video4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "video_id" -]New value: +[ + "video_id", + "context", + "llm_model" +]
- Changed
get_youtube_video_transcript4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "video_id" -]New value: +[ + "video_id", + "context", + "llm_model" +]
- Changed
list_tiktok_comment_replies4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "url", - "comment_id" -]New value: +[ + "url", + "comment_id", + "context", + "llm_model" +]
- Changed
list_tiktok_profile_videos4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "username" -]New value: +[ + "username", + "context", + "llm_model" +]
- Changed
list_tiktok_video_comments4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "url" -]New value: +[ + "url", + "context", + "llm_model" +]
- Changed
match_creators5 fields changed- removed
Input schema / additionalPropertiesRemoved value: -false - added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "intent_query" -]New value: +[ + "intent_query", + "context", + "llm_model" +]
- Changed
render_creator_comparison4 fields changed- removed
Input schema / additionalPropertiesRemoved value: -false - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "creator_ids", - "campaign_brief" -]New value: +[ + "creator_ids", + "campaign_brief", + "llm_model" +]
- Changed
render_creator_profile5 fields changed- removed
Input schema / additionalPropertiesRemoved value: -false - added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "creator_id" -]New value: +[ + "creator_id", + "context", + "llm_model" +]
- Changed
render_creator_shortlist5 fields changed- removed
Input schema / additionalPropertiesRemoved value: -false - added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - added
Input schema / requiredAdded value: +[ + "context", + "llm_model" +]
- Changed
search_creators5 fields changed- removed
Input schema / additionalPropertiesRemoved value: -false - added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "query" -]New value: +[ + "query", + "context", + "llm_model" +]
- Changed
search_tiktok_users4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "query" -]New value: +[ + "query", + "context", + "llm_model" +]
- Changed
search_youtube4 fields changed- added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "q" -]New value: +[ + "q", + "context", + "llm_model" +]
- Changed
semantic_search_creators5 fields changed- removed
Input schema / additionalPropertiesRemoved value: -false - added
Input schema / properties / contextAdded value: +{ + "description": "Explain in 15-25 words, in third person, why this tool is called and how it supports the user's goal. For analytics only. You MUST describe only the abstract purpose of the tool call. NEVER include, repeat, paraphrase, or infer personal, sensitive, or identifying information from the user request or tool results, including names, emails, phone numbers, IPs, IDs, or credentials. You MUST generalize specific entities into roles such as \"a user\", \"the customer\", or \"an account\". Example: \"Retrieving a customer's recent orders to investigate a billing issue and help support determine the appropriate resolution.\"", + "type": "string" +} - added
Input schema / properties / conversation_idAdded value: +{ + "description": "Pass the exact conversation_id from the server's previous response, unchanged. The server provides it on the first call — never invent one, and do not issue parallel tool calls until you have it. Keep passing the same conversation_id for the rest of the conversation, including after later user messages or on a different task; do not reset it when the user starts a new request.", + "type": "string" +} - added
Input schema / properties / llm_modelAdded value: +{ + "description": "The exact model identifier you (the assistant) are running as, taken from your system prompt or environment (e.g. \"claude-opus-4-8\", \"gpt-5.2\"). Used for analytics only. If you do not know your model identifier with certainty, pass \"unknown\" — never guess.", + "type": "string" +} - changed
Input schema / requiredPrevious value: -[ - "query" -]New value: +[ + "query", + "context", + "llm_model" +]
- Added
send_feedback
1 tool update
- Changed
search_youtube1 field changed- changed
Input schema / properties / cursor / maxLengthPrevious value: -4000New value: +16000
1 tool update
- Changed
get_instagram_profile2 fields changed- added
Output schema / properties / data / properties / posts / items / properties / view_count / descriptionAdded value: +"Observed video views, or null when unavailable." - changed
Output schema / properties / data / properties / posts / items / requiredPrevious value: -[ - "shortcode", - "is_video", - "post_type", - "like_count", - "comment_count", - "caption", - "taken_at", - "url", - "engagement_counts_hidden" -]New value: +[ + "shortcode", + "is_video", + "post_type", + "like_count", + "comment_count", + "caption", + "taken_at", + "view_count", + "url", + "engagement_counts_hidden" +]
37 tool updates
- Changed
autocomplete_creators4 fields changed- added
Input schema / $refAdded value: +"#/definitions/AutocompleteQuery" - added
Input schema / definitions / AutocompleteQueryAdded value: +{ + "properties": { + "limit": { + "default": 5, + "description": "Maximum results to return", + "example": 5, + "maximum": 50, + "minimum": 1, + "type": "integer" + }, + "platform": { + "allOf": [ + { + "$ref": "#/definitions/Platform" + } + ], + "description": "Filter by platform" + }, + "q": { + "description": "Search query (min 2 characters)", + "example": "fitness", + "maxLength": 100, + "minLength": 2, + "type": "string" + }, + "scope": { + "default": "all_platforms", + "description": "Which platforms to include in results", + "enum": [ + "creator_only", + "matched_platforms", + "all_platforms" + ], + "example": "all_platforms", + "type": "string" + } + }, + "required": [ + "q" + ], + "type": "object" +} - removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
find_lookalike_creators2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_creator2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_instagram_post2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_instagram_post_transcript2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_instagram_post_transcripts2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_instagram_posts2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_instagram_profile17 fields changed- removed
Output schema / properties / data / properties / category_name / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / data / properties / category_name / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / data / properties / engagement_rate / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / data / properties / engagement_rate / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / data / properties / media_count / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / data / properties / media_count / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / data / properties / posts / items / properties / caption / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / data / properties / posts / items / properties / caption / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / data / properties / posts / items / properties / comment_count / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / data / properties / posts / items / properties / comment_count / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / data / properties / posts / items / properties / like_count / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / data / properties / posts / items / properties / like_count / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / data / properties / posts / items / properties / taken_at / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / data / properties / posts / items / properties / taken_at / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / data / properties / posts / items / properties / view_count / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / data / properties / posts / items / properties / view_count / typeAdded value: +[ + "number", + "null" +] - changed
Output schema / properties / data / properties / scraped_at / patternPrevious value: -"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z))$"New value: +"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z))$"
- Changed
get_posts4 fields changed- added
Input schema / $refAdded value: +"#/definitions/GetPostsQuery" - added
Input schema / definitions / GetPostsQueryAdded value: +{ + "properties": { + "creator_id": { + "description": "Creator ID (use this OR platform+username)", + "example": "123e4567-e89b-12d3-a456-426614174000", + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "cursor": { + "description": "Opaque keyset cursor from next_cursor. A cursor is bound to the sort order that produced it; using it with another sort returns 400.", + "type": "string" + }, + "limit": { + "default": 12, + "description": "Maximum posts to return", + "example": 12, + "maximum": 50, + "minimum": 1, + "type": "integer" + }, + "platform": { + "allOf": [ + { + "$ref": "#/definitions/Platform" + } + ], + "description": "Platform (required with username)" + }, + "sort": { + "allOf": [ + { + "$ref": "#/definitions/PostSort" + } + ], + "default": "recent", + "description": "Sort order" + }, + "username": { + "description": "Username (required with platform)", + "example": "fitness_coach_jane", + "maxLength": 50, + "minLength": 1, + "type": "string" + } + }, + "type": "object" +} - removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_profile2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_sample_creator30 fields changed- removed
Output schema / properties / creator / properties / aiSummary / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creator / properties / aiSummary / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creator / properties / analysisUpdatedAt / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creator / properties / analysisUpdatedAt / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creator / properties / audienceSummary / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creator / properties / audienceSummary / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creator / properties / bio / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creator / properties / bio / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creator / properties / profiles / items / properties / dataUpdatedAt / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creator / properties / profiles / items / properties / dataUpdatedAt / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creator / properties / profiles / items / properties / engagementRate / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / creator / properties / profiles / items / properties / engagementRate / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / creator / properties / profiles / items / properties / followers / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / creator / properties / profiles / items / properties / followers / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / creator / properties / vibe / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creator / properties / vibe / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / posts / items / properties / caption / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / caption / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / posts / items / properties / comments / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / comments / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / posts / items / properties / engagementRate / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / engagementRate / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / posts / items / properties / likes / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / likes / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / posts / items / properties / postedAt / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / postedAt / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / posts / items / properties / type / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / type / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / posts / items / properties / views / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / views / typeAdded value: +[ + "number", + "null" +]
- Changed
get_tiktok_music2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_tiktok_profile2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_tiktok_video2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_tiktok_video_captions2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_tiktok_video_transcript2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_tiktok_video_transcripts2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_tiktok_videos2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_youtube_channel2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_youtube_channel_transcripts2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_youtube_typeahead2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_youtube_video2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
get_youtube_video_transcript2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
list_tiktok_comment_replies2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
list_tiktok_hashtag_videos4 fields changed- added
Input schema / $refAdded value: +"#/definitions/TikTokHashtagVideosRequest" - added
Input schema / definitionsAdded value: +{ + "TikTokHashtagVideosRequest": { + "properties": { + "cursor": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "hashtag": { + "maxLength": 100, + "minLength": 1, + "pattern": "^[^#\\s\\u0000-\\u001f\\u007f-\\u009f]+$", + "type": "string" + } + }, + "required": [ + "hashtag" + ], + "type": "object" + } +} - removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
list_tiktok_music_videos4 fields changed- added
Input schema / $refAdded value: +"#/definitions/TikTokMusicVideosRequest" - added
Input schema / definitionsAdded value: +{ + "TikTokMusicVideosRequest": { + "properties": { + "cursor": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "music_id": { + "description": "TikTok sound clip ID, not a recording or album ID", + "pattern": "^[1-9][0-9]{0,24}$", + "type": "string" + } + }, + "required": [ + "music_id" + ], + "type": "object" + } +} - removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
list_tiktok_profile_videos2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
list_tiktok_video_comments2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
lookup_profiles4 fields changed- added
Input schema / $refAdded value: +"#/definitions/ProfilesLookupRequest" - added
Input schema / definitions / ProfilesLookupRequestAdded value: +{ + "description": "Batch lookup profiles request", + "examples": [ + { + "profiles": [ + { + "platform": "instagram", + "username": "fitness_coach_jane" + }, + { + "platform": "instagram", + "username": "wellness_guru" + }, + { + "platform": "instagram", + "username": "healthy_eating_tips" + } + ] + } + ], + "properties": { + "profiles": { + "description": "Profiles to lookup", + "items": { + "$ref": "#/definitions/ProfileLookupItem" + }, + "maxItems": 100, + "minItems": 1, + "type": "array" + } + }, + "required": [ + "profiles" + ], + "type": "object" +} - removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
match_creators2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
render_creator_comparison18 fields changed- removed
Output schema / properties / creators / items / properties / aiSummary / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creators / items / properties / aiSummary / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creators / items / properties / analysisUpdatedAt / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creators / items / properties / analysisUpdatedAt / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creators / items / properties / audienceSummary / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creators / items / properties / audienceSummary / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creators / items / properties / bio / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creators / items / properties / bio / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creators / items / properties / profiles / items / properties / dataUpdatedAt / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creators / items / properties / profiles / items / properties / dataUpdatedAt / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creators / items / properties / profiles / items / properties / engagementRate / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / creators / items / properties / profiles / items / properties / engagementRate / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / creators / items / properties / profiles / items / properties / followers / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / creators / items / properties / profiles / items / properties / followers / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / creators / items / properties / reasons / items / properties / evidenceQuote / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creators / items / properties / reasons / items / properties / evidenceQuote / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creators / items / properties / vibe / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creators / items / properties / vibe / typeAdded value: +[ + "string", + "null" +]
- Changed
render_creator_profile30 fields changed- removed
Output schema / properties / creator / properties / aiSummary / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creator / properties / aiSummary / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creator / properties / analysisUpdatedAt / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creator / properties / analysisUpdatedAt / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creator / properties / audienceSummary / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creator / properties / audienceSummary / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creator / properties / bio / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creator / properties / bio / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creator / properties / profiles / items / properties / dataUpdatedAt / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creator / properties / profiles / items / properties / dataUpdatedAt / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creator / properties / profiles / items / properties / engagementRate / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / creator / properties / profiles / items / properties / engagementRate / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / creator / properties / profiles / items / properties / followers / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / creator / properties / profiles / items / properties / followers / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / creator / properties / vibe / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creator / properties / vibe / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / posts / items / properties / caption / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / caption / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / posts / items / properties / comments / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / comments / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / posts / items / properties / engagementRate / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / engagementRate / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / posts / items / properties / likes / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / likes / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / posts / items / properties / postedAt / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / postedAt / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / posts / items / properties / type / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / type / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / posts / items / properties / views / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / posts / items / properties / views / typeAdded value: +[ + "number", + "null" +]
- Changed
render_creator_shortlist19 fields changed- removed
Output schema / properties / brief / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / brief / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creators / items / properties / aiSummary / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creators / items / properties / aiSummary / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creators / items / properties / analysisUpdatedAt / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creators / items / properties / analysisUpdatedAt / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creators / items / properties / audienceSummary / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creators / items / properties / audienceSummary / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creators / items / properties / bio / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creators / items / properties / bio / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creators / items / properties / profiles / items / properties / dataUpdatedAt / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creators / items / properties / profiles / items / properties / dataUpdatedAt / typeAdded value: +[ + "string", + "null" +] - removed
Output schema / properties / creators / items / properties / profiles / items / properties / engagementRate / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / creators / items / properties / profiles / items / properties / engagementRate / typeAdded value: +[ + "number", + "null" +] - removed
Output schema / properties / creators / items / properties / profiles / items / properties / followers / anyOfRemoved value: -[ - { - "type": "number" - }, - { - "type": "null" - } -] - added
Output schema / properties / creators / items / properties / profiles / items / properties / followers / typeAdded value: +[ + "number", + "null" +] - changed
Output schema / properties / creators / items / properties / searchMatch / anyOfPrevious value: -[ - { - "additionalProperties": false, - "properties": { - "confidence": { - "maximum": 1, - "minimum": 0, - "type": "number" - }, - "locationUnverified": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ] - }, - "lowConfidence": { - "type": "boolean" - }, - "reasons": { - "items": { - "additionalProperties": false, - "properties": { - "evidenceQuote": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] - }, - "provenance": { - "enum": [ - "post_evidence", - "profile_fact", - "inferred" - ], - "type": "string" - }, - "text": { - "type": "string" - } - }, - "required": [ - "text", - "provenance", - "evidenceQuote" - ], - "type": "object" - }, - "maxItems": 4, - "type": "array" - }, - "score": { - "maximum": 1, - "minimum": 0, - "type": "number" - } - }, - "required": [ - "score", - "confidence", - "lowConfidence", - "reasons", - "locationUnverified" - ], - "type": "object" - }, - { - "type": "null" - } -]New value: +[ + { + "additionalProperties": false, + "properties": { + "confidence": { + "maximum": 1, + "minimum": 0, + "type": "number" + }, + "locationUnverified": { + "type": [ + "boolean", + "null" + ] + }, + "lowConfidence": { + "type": "boolean" + }, + "reasons": { + "items": { + "additionalProperties": false, + "properties": { + "evidenceQuote": { + "type": [ + "string", + "null" + ] + }, + "provenance": { + "enum": [ + "post_evidence", + "profile_fact", + "inferred" + ], + "type": "string" + }, + "text": { + "type": "string" + } + }, + "required": [ + "text", + "provenance", + "evidenceQuote" + ], + "type": "object" + }, + "maxItems": 4, + "type": "array" + }, + "score": { + "maximum": 1, + "minimum": 0, + "type": "number" + } + }, + "required": [ + "score", + "confidence", + "lowConfidence", + "reasons", + "locationUnverified" + ], + "type": "object" + }, + { + "type": "null" + } +] - removed
Output schema / properties / creators / items / properties / vibe / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / creators / items / properties / vibe / typeAdded value: +[ + "string", + "null" +]
- Changed
search_tiktok_users2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
search_tiktok_videos4 fields changed- added
Input schema / $refAdded value: +"#/definitions/TikTokVideoSearchRequest" - added
Input schema / definitionsAdded value: +{ + "TikTokVideoSearchRequest": { + "properties": { + "cursor": { + "maxLength": 2048, + "minLength": 1, + "type": "string" + }, + "query": { + "maxLength": 100, + "minLength": 1, + "pattern": "^[^\\u0000-\\u001f\\u007f-\\u009f]+$", + "type": "string" + } + }, + "required": [ + "query" + ], + "type": "object" + } +} - removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
search_youtube2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
- Changed
semantic_search_creators2 fields changed- removed
Output schema / properties / next_cursor / anyOfRemoved value: -[ - { - "type": "string" - }, - { - "type": "null" - } -] - added
Output schema / properties / next_cursor / typeAdded value: +[ + "string", + "null" +]
1 tool update
- Added
get_instagram_profile
11 tool updates
- Added
get_tiktok_music - Added
get_tiktok_video_captions - Added
get_tiktok_video_transcripts - Added
get_tiktok_videos - Added
list_tiktok_comment_replies - Added
list_tiktok_hashtag_videos - Added
list_tiktok_music_videos - Changed
list_tiktok_profile_videos1 field changed- changed
Input schema / properties / cursor / maxLengthPrevious value: -512New value: +2048
- Changed
list_tiktok_video_comments1 field changed- changed
Input schema / properties / cursor / maxLengthPrevious value: -512New value: +2048
- Added
search_tiktok_users - Added
search_tiktok_videos
2 tool updates
- Changed
get_tiktok_video5 fields changed- added
Input schema / properties / region / constAdded value: +"US" - added
Input schema / properties / region / defaultAdded value: +"US" - removed
Input schema / properties / region / maxLengthRemoved value: -2 - removed
Input schema / properties / region / minLengthRemoved value: -2 - removed
Input schema / properties / region / patternRemoved value: -"^[a-zA-Z]{2}$"
- Changed
list_tiktok_profile_videos5 fields changed- added
Input schema / properties / region / constAdded value: +"US" - added
Input schema / properties / region / defaultAdded value: +"US" - removed
Input schema / properties / region / maxLengthRemoved value: -2 - removed
Input schema / properties / region / minLengthRemoved value: -2 - removed
Input schema / properties / region / patternRemoved value: -"^[a-zA-Z]{2}$"
2 tool updates
- Changed
get_creator3 fields changed- changed
Input schema / properties / username / descriptionPrevious value: -"Platform username or handle without the @ sign."New value: +"Public username or handle. A leading @ is accepted." - removed
Input schema / properties / username / maxLengthRemoved value: -50 - removed
Input schema / properties / username / minLengthRemoved value: -1
- Changed
get_profile3 fields changed- changed
Input schema / properties / username / descriptionPrevious value: -"Platform username or handle without the @ sign."New value: +"Public username or handle. A leading @ is accepted." - removed
Input schema / properties / username / maxLengthRemoved value: -50 - removed
Input schema / properties / username / minLengthRemoved value: -1
6 tool updates
- Added
get_youtube_channel - Added
get_youtube_channel_transcripts - Added
get_youtube_typeahead - Added
get_youtube_video - Added
get_youtube_video_transcript - Added
search_youtube
5 tool updates
- Added
get_tiktok_profile - Added
get_tiktok_video - Added
get_tiktok_video_transcript - Added
list_tiktok_profile_videos - Added
list_tiktok_video_comments
4 tool updates
- Changed
get_sample_creator7 fields changed- added
Output schema / properties / creator / properties / analysisFactCountAdded value: +{ + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] +} - added
Output schema / properties / creator / properties / analysisUpdatedAtAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] +} - removed
Output schema / properties / creator / properties / brandAlignmentRemoved value: -{ - "items": { - "type": "string" - }, - "type": "array" -} - removed
Output schema / properties / creator / properties / keyFactsRemoved value: -{ - "items": { - "type": "string" - }, - "type": "array" -} - added
Output schema / properties / creator / properties / profiles / items / properties / dataUpdatedAtAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] +} - changed
Output schema / properties / creator / properties / profiles / items / requiredPrevious value: -[ - "platform", - "username", - "url", - "followers", - "engagementRate", - "verified" -]New value: +[ + "platform", + "username", + "url", + "followers", + "engagementRate", + "verified", + "dataUpdatedAt" +] - changed
Output schema / properties / creator / requiredPrevious value: -[ - "id", - "name", - "bio", - "avatarUrl", - "aiSummary", - "audienceSummary", - "brandAlignment", - "contentThemes", - "keyFacts", - "vibe", - "profiles" -]New value: +[ + "id", + "name", + "bio", + "avatarUrl", + "aiSummary", + "analysisUpdatedAt", + "analysisFactCount", + "audienceSummary", + "contentThemes", + "vibe", + "profiles" +]
- Changed
render_creator_comparison11 fields changed- added
Output schema / properties / creators / items / properties / analysisFactCountAdded value: +{ + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] +} - added
Output schema / properties / creators / items / properties / analysisUpdatedAtAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] +} - removed
Output schema / properties / creators / items / properties / brandAlignmentRemoved value: -{ - "items": { - "type": "string" - }, - "type": "array" -} - removed
Output schema / properties / creators / items / properties / keyFactsRemoved value: -{ - "items": { - "type": "string" - }, - "type": "array" -} - added
Output schema / properties / creators / items / properties / profiles / items / properties / dataUpdatedAtAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] +} - changed
Output schema / properties / creators / items / properties / profiles / items / requiredPrevious value: -[ - "platform", - "username", - "url", - "followers", - "engagementRate", - "verified" -]New value: +[ + "platform", + "username", + "url", + "followers", + "engagementRate", + "verified", + "dataUpdatedAt" +] - added
Output schema / properties / creators / items / properties / reasons / items / additionalPropertiesAdded value: +false - added
Output schema / properties / creators / items / properties / reasons / items / propertiesAdded value: +{ + "evidenceQuote": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "provenance": { + "enum": [ + "post_evidence", + "profile_fact", + "inferred" + ], + "type": "string" + }, + "text": { + "type": "string" + } +} - added
Output schema / properties / creators / items / properties / reasons / items / requiredAdded value: +[ + "text", + "provenance", + "evidenceQuote" +] - changed
Output schema / properties / creators / items / properties / reasons / items / typePrevious value: -"string"New value: +"object" - changed
Output schema / properties / creators / items / requiredPrevious value: -[ - "id", - "name", - "bio", - "avatarUrl", - "aiSummary", - "audienceSummary", - "brandAlignment", - "contentThemes", - "keyFacts", - "vibe", - "profiles", - "matchScore", - "decision", - "reasons" -]New value: +[ + "id", + "name", + "bio", + "avatarUrl", + "aiSummary", + "analysisUpdatedAt", + "analysisFactCount", + "audienceSummary", + "contentThemes", + "vibe", + "profiles", + "matchScore", + "decision", + "reasons" +]
- Changed
render_creator_profile7 fields changed- added
Output schema / properties / creator / properties / analysisFactCountAdded value: +{ + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] +} - added
Output schema / properties / creator / properties / analysisUpdatedAtAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] +} - removed
Output schema / properties / creator / properties / brandAlignmentRemoved value: -{ - "items": { - "type": "string" - }, - "type": "array" -} - removed
Output schema / properties / creator / properties / keyFactsRemoved value: -{ - "items": { - "type": "string" - }, - "type": "array" -} - added
Output schema / properties / creator / properties / profiles / items / properties / dataUpdatedAtAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] +} - changed
Output schema / properties / creator / properties / profiles / items / requiredPrevious value: -[ - "platform", - "username", - "url", - "followers", - "engagementRate", - "verified" -]New value: +[ + "platform", + "username", + "url", + "followers", + "engagementRate", + "verified", + "dataUpdatedAt" +] - changed
Output schema / properties / creator / requiredPrevious value: -[ - "id", - "name", - "bio", - "avatarUrl", - "aiSummary", - "audienceSummary", - "brandAlignment", - "contentThemes", - "keyFacts", - "vibe", - "profiles" -]New value: +[ + "id", + "name", + "bio", + "avatarUrl", + "aiSummary", + "analysisUpdatedAt", + "analysisFactCount", + "audienceSummary", + "contentThemes", + "vibe", + "profiles" +]
- Changed
render_creator_shortlist11 fields changed- changed
Input schema / properties / creator_ids / descriptionPrevious value: -"Canonical creator IDs returned by an Influship discovery or lookup tool."New value: +"Canonical creator IDs returned by an Influship lookup tool." - added
Input schema / properties / search_idAdded value: +{ + "description": "Search ID returned by semantic_search_creators. Prefer this for discovery results so exact ranking and evidence are preserved.", + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" +} - removed
Input schema / requiredRemoved value: -[ - "creator_ids" -] - added
Output schema / properties / creators / items / properties / analysisFactCountAdded value: +{ + "anyOf": [ + { + "maximum": 9007199254740991, + "minimum": 0, + "type": "integer" + }, + { + "type": "null" + } + ] +} - added
Output schema / properties / creators / items / properties / analysisUpdatedAtAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] +} - removed
Output schema / properties / creators / items / properties / brandAlignmentRemoved value: -{ - "items": { - "type": "string" - }, - "type": "array" -} - removed
Output schema / properties / creators / items / properties / keyFactsRemoved value: -{ - "items": { - "type": "string" - }, - "type": "array" -} - added
Output schema / properties / creators / items / properties / profiles / items / properties / dataUpdatedAtAdded value: +{ + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] +} - changed
Output schema / properties / creators / items / properties / profiles / items / requiredPrevious value: -[ - "platform", - "username", - "url", - "followers", - "engagementRate", - "verified" -]New value: +[ + "platform", + "username", + "url", + "followers", + "engagementRate", + "verified", + "dataUpdatedAt" +] - added
Output schema / properties / creators / items / properties / searchMatchAdded value: +{ + "anyOf": [ + { + "additionalProperties": false, + "properties": { + "confidence": { + "maximum": 1, + "minimum": 0, + "type": "number" + }, + "locationUnverified": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "null" + } + ] + }, + "lowConfidence": { + "type": "boolean" + }, + "reasons": { + "items": { + "additionalProperties": false, + "properties": { + "evidenceQuote": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "provenance": { + "enum": [ + "post_evidence", + "profile_fact", + "inferred" + ], + "type": "string" + }, + "text": { + "type": "string" + } + }, + "required": [ + "text", + "provenance", + "evidenceQuote" + ], + "type": "object" + }, + "maxItems": 4, + "type": "array" + }, + "score": { + "maximum": 1, + "minimum": 0, + "type": "number" + } + }, + "required": [ + "score", + "confidence", + "lowConfidence", + "reasons", + "locationUnverified" + ], + "type": "object" + }, + { + "type": "null" + } + ] +} - changed
Output schema / properties / creators / items / requiredPrevious value: -[ - "id", - "name", - "bio", - "avatarUrl", - "aiSummary", - "audienceSummary", - "brandAlignment", - "contentThemes", - "keyFacts", - "vibe", - "profiles" -]New value: +[ + "id", + "name", + "bio", + "avatarUrl", + "aiSummary", + "analysisUpdatedAt", + "analysisFactCount", + "audienceSummary", + "contentThemes", + "vibe", + "profiles", + "searchMatch" +]
4 tool updates
- Changed
get_sample_creator14 fields changed- changed
Output schema / additionalPropertiesPrevious value: -{}New value: +false - removed
Output schema / properties / countRemoved value: -{ - "type": "number" -} - added
Output schema / properties / creatorAdded value: +{ + "additionalProperties": false, + "properties": { + "aiSummary": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "audienceSummary": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "avatarUrl": { + "anyOf": [ + { + "format": "uri", + "type": "string" + }, + { + "type": "null" + } + ] + }, + "bio": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "brandAlignment": { + "items": { + "type": "string" + }, + "type": "array" + }, + "contentThemes": { + "items": { + "type": "string" + }, + "type": "array" + }, + "id": { + "format": "uuid", + "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$", + "type": "string" + }, + "keyFacts": { + "items": { + "type": "string" + }, + "type": "array" + }, + "name": { + "type": "string" + }, + "profiles": { + "items": { + "additionalProperties": false, + "properties": { + "engagementRate": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + }, + "followers": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + }, + "platform": { + "type": "string" + }, + "url": { + "anyOf": [ + { + "format": "uri", + "type": "string" + }, + { + "type": "null" + } + ] + }, + "username": { + "type": "string" + }, + "verified": { + "type": "boolean" + } + }, + "required": [ + "platform", + "username", + "url", + "followers", + "engagementRate", + "verified" + ], + "type": "object" + }, + "type": "array" + }, + "vibe": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "id", + "name", + "bio", + "avatarUrl", + "aiSummary", + "audienceSummary", + "brandAlignment", + "contentThemes", + "keyFacts", + "vibe", + "profiles" + ], + "type": "object" +} - removed
Output schema / properties / dataRemoved value: -{} - removed
Output schema / properties / has_moreRemoved value: -{ - "type": "boolean" -} - removed
Output schema / properties / next_cursorRemoved value: -{ - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ] -} - removed
Output schema / properties / not_foundRemoved value: -{ - "items": {}, - "type": "array" -} - removed
Output schema / properties / okRemoved value: -{ - "type": "boolean" -} - added
Output schema / properties / postsAdded value: +{ + "items": { + "additionalProperties": false, + "properties": { + "caption": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "comments": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + }, + "engagementRate": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + }, + "id": { + "type": "string" + }, + "likes": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + }, + "platform": { + "type": "string" + }, + "postedAt": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "thumbnailUrl": { + "anyOf": [ + { + "format": "uri", + "type": "string" + }, + { + "type": "null" + } + ] + }, + "type": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ] + }, + "url": { + "anyOf": [ + { + "format": "uri", + "type": "string" + }, + { + "type": "null" + } + ] + }, + "views": { + "anyOf": [ + { + "type": "number" + }, + { + "type": "null" + } + ] + } + }, + "required": [ + "id", + "platform", + "url", + "postedAt", + "type", + "caption", + "thumbnailUrl", + "likes", + "comments", + "views", + "engagementRate" + ], + "type": "object" + }, + "maxItems": 6, + "type": "array" +} - added
Output schema / properties / postsUnavailableAdded value: +{ + "type": "boolean" +} - removed
Output schema / properties / resultsRemoved value: -{ - "items": {}, - "type": "array" -} - removed
Output schema / properties / suggested_followupsRemoved value: -{ - "items": { - "additionalProperties": false, - "properties": { - "reason": { - "type": "string" - }, - "tool": { - "type": "string" - } - }, - "required": [ - "tool", - "reason" - ], - "type": "object" - }, - "type": "array" -} - added
Output schema / properties / viewAdded value: +{ + "const": "profile", + "type": "string" +} - added
Output schema / requiredAdded value: +[ + "view", + "creator", + "posts", + "postsUnavailable" +]
- Added
render_creator_comparison - Added
render_creator_profile - Added
render_creator_shortlist
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceRemote MCP server that lets AI assistants read tracked competitive intelligence — competitor news, reviews, website changes, social posts and ads — and act on it by managing projects, competitors, battle cards, reports and canvases. Every answer carries a source and a date, and write actions only publish when explicitly shared.MIT
- AlicenseCqualityCmaintenanceCompetitor Monitor AI - MCP server providing AI-powered tools and automation by MEOK AI Labs112 npm29 PyPIMIT
- AlicenseAqualityDmaintenanceEnables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.1623 npm1MIT

industrylens-mcpofficial
AlicenseNot gradedqualityCmaintenanceBrowse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.