Skip to main content
Glama
CreatorDB

creatordb-mcp-server

Official
by CreatorDB

creatordb-mcp-server

A Model Context Protocol server that exposes the CreatorDB V3 API to any MCP-compatible client (Claude Code, Claude Desktop, Cursor, etc.).

45 tools across six surfaces:

  • Creator-side data — profile, performance, audience demographics, contact, content-detail, performance history for YouTube, Instagram, and TikTok

  • Creator search — natural-language search across all three platforms, plus structured filter search per platform (country, language, follower thresholds, niches, hashtags, audience demographics, etc.)

  • Brand-side / sponsor intelligence (YouTube + Instagram only — TikTok brand data is not indexed) — search CreatorDB's 10K+ indexed brands, pull a brand's full profile, list every creator a brand has sponsored, get aggregated audience demographics across a brand's sponsored creator pool, and cross-platform spend / CPM / CPE rollups. The heavier sponsor reads (get_sponsor_creators, get_sponsor_performance, get_sponsor_audience, get_sponsor_summary) cost 15 credits each — use deliberately. get_sponsor_information is 2, search_sponsors 2, list_sponsors 1.

  • Content search — find individual videos, reels, images, shorts, or TikToks by content-level filters (publish time window, view/like thresholds, hashtags, sponsored-vs-organic, language, niche, etc.). Different from creator search — this returns posts, not channels.

  • Topic + niche taxonomies — paged, searchable catalogs (~470 YT topics, ~16K YT niches, ~40K each on IG/TT) for resolving the per-creator topic/niche IDs returned in profile responses. Pass search to resolve a phrase to entry names rather than paging.

  • Account — credit usage broken down by endpoint and platform.

Every tool returns the underlying V3 JSON plus a Credits used: N | Remaining: M footer line, so the AI knows exactly what it's spending.

Working with Claude Code? Open this README in Claude Code (or paste the URL into a Claude session) and say "set up this MCP for me." The steps below are written so an AI assistant can follow them top to bottom.

Quick start

There are two ways to connect, depending on your client:

  • Local clients (Claude Code, Claude Desktop, Cursor) run the server as a subprocess via npx — see Install (local / stdio).

  • Web / desktop / mobile clients connect to the hosted endpoint, or add CreatorDB straight from Claude's connector directory — see Remote connector.

Both expose the same 45 tools. Both need a CreatorDB V3 API key.

  1. Prerequisites

    • For the local route: Node.js 22 or newer (node -v to check)

    • A CreatorDB V3 API key — get one from https://creatordb.app account settings, or ask your team admin

  2. Pick a connection method below

  3. Restart your MCP client so it picks up the new tools

  4. Verify by running /mcp in Claude Code — creatordb should appear with status connected

Related MCP server: Influship MCP

Install (local / stdio)

For Claude Code, Claude Desktop, and Cursor. The server reads one environment variable: CREATORDB_API_KEY (your V3 key).

Method A — npx from npm (recommended)

The package is published to npm as @creatordbai/mcp-server. No local clone, no SSH key, no GitHub access required:

Claude Code:

claude mcp add creatordb -s user \
  -e CREATORDB_API_KEY=YOUR_CREATORDB_API_KEY \
  -- npx -y @creatordbai/mcp-server

Claude Desktop — edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "creatordb": {
      "command": "npx",
      "args": ["-y", "@creatordbai/mcp-server"],
      "env": { "CREATORDB_API_KEY": "YOUR_CREATORDB_API_KEY" }
    }
  }
}

If you have GitHub org access and want to track main instead of the npm release, swap the npm name for git+ssh://git@github.com/CreatorDB/creatordb-mcp-server.git — the repo's prepare script will build on install.

Method B — clone and build locally

Good if you want to read/modify the source, or if npx from git doesn't work in your environment.

git clone https://github.com/CreatorDB/creatordb-mcp-server.git
cd creatordb-mcp-server
npm install
npm run build

# Then register with Claude Code:
claude mcp add creatordb -s user \
  -e CREATORDB_API_KEY=YOUR_CREATORDB_API_KEY \
  -- node "$(pwd)/dist/index.js"

For Claude Desktop, use the same JSON as Method A but swap command + args:

"command": "node",
"args": ["/absolute/path/to/creatordb-mcp-server/dist/index.js"],

Method C — project-scoped via .mcp.json (best for teams)

Drop a .mcp.json into a CreatorDB project repo. Anyone who opens that repo in Claude Code gets prompted to enable the MCP — no per-person setup commands.

{
  "mcpServers": {
    "creatordb": {
      "command": "npx",
      "args": ["-y", "git+ssh://git@github.com/CreatorDB/creatordb-mcp-server.git"],
      "env": { "CREATORDB_API_KEY": "${CREATORDB_API_KEY}" }
    }
  }
}

${CREATORDB_API_KEY} reads from the user's shell environment, so the key stays out of git. Each teammate sets it once in their .zshrc/.bash_profile:

export CREATORDB_API_KEY=YOUR_CREATORDB_API_KEY

Remote connector (Claude web, desktop, mobile)

Claude clients that can't spawn a local subprocess connect to the hosted endpoint instead of running npx. There are two ways in.

From the connector directory (easiest). CreatorDB is listed in Claude's connector directory. In Claude: Settings → Connectors → Add → Browse connectors, search CreatorDB, open CreatorDB MCP, and click Connect to Claude.

Add it manually. You can also add it directly: Settings → Connectors → Add → Add custom connector, and enter the URL:

https://mcp.creatordb.app/mcp

Leave the Advanced OAuth Client ID / Secret fields empty — the server registers the client automatically.

Either way, you'll be prompted to enter your CreatorDB API key when you connect, and the same 45 tools appear.

Notes:

  • You'll be prompted to enter your key when you connect; the connector seals it into an encrypted session token and keeps no separate copy. CreatorDB stores the key only as the credential it issued you.

  • Programmatic clients calling the endpoint directly can instead send Authorization: Bearer <your CreatorDB V3 API key>.

  • Health check: https://mcp.creatordb.app/health (no auth, 0 credits) — returns {"status":"ok",...} when the service is up.

  • Hosted as a Firebase Cloud Function (gen 2) in asia-northeast1; source is in functions/.

  • Don't have a key? Get one at https://app.creatordb.app or email hello@creatordb.app.

Changing your API key

You don't update a key inside the MCP server — it doesn't store keys. You change it in your client's MCP configuration and restart.

Local install (Claude Code, Claude Desktop, Cursor)

Edit the same config file you used during setup:

  • Claude Desktop: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)

  • Cursor: ~/.cursor/mcp.json (or the in-app MCP settings UI)

  • Claude Code: ~/.mcp.json or your project's .mcp.json

Change the CREATORDB_API_KEY value, then fully restart the client (⌘Q + reopen for Claude Desktop, restart the Cursor app, etc.). MCP clients only read the key at process startup.

If you set the key from your shell environment (Method C above, with ${CREATORDB_API_KEY} syntax), update ~/.zshrc / ~/.bash_profile and restart your terminal before restarting the client.

Remote connector (Claude web, desktop, mobile)

In Settings → Connectors → CreatorDB, disconnect and reconnect, then enter the new key when prompted. (A programmatic client sending a Bearer token just starts sending the new key.)

One thing to know about rotating a leaked key

Changing the key on the client side only swaps which key your tools authenticate with. It does NOT invalidate the previous key. If you're rotating because the old key was exposed:

  1. Go to your CreatorDB account and revoke the old key there — that's what actually kills it at the V3 API layer.

  2. Then update the MCP client to use the new key as above.

The MCP server never persists your key past a single request, so there's no server-side "stored key" to purge.

Verify it works

After install, restart Claude Code (or your MCP client) and:

  1. Run /mcp — you should see creatordb listed with status connected

  2. Ask Claude something that uses the tools, e.g. "use creatordb to look up the YouTube profile for MrBeast (channelId UCX6OQ3DkcsbYNE6H8uQQuVA)"

  3. The response should include creator data and a Credits used: 2 | Remaining: … footer

Troubleshooting

Symptom

Cause

Fix

/mcp shows creatordb as failed or connecting forever

API key missing or wrong

Re-add with claude mcp remove creatordb && claude mcp add … using the correct key

Tools work but every response ends Credits used: undefined

Stale tool schema from an older build of this server

Restart the MCP client — clients cache the schema at session start

Error: VALIDATION_ERROR on Instagram tools

Passing userId instead of uniqueId

IG endpoints take the handle as uniqueId. Older clients with stale schemas hit this most

npx install fails with EACCES: permission denied

npx cache permission issue

rm -rf ~/.npm/_npx and re-run

Error: ENOENT or cannot find dist/index.js

Method B didn't run npm run build

cd into the repo and run npm install && npm run build

Tool descriptions seem outdated vs this README

Schema cached from an old version

claude mcp remove creatordb && claude mcp add … to force a re-fetch

Why restarts matter — MCP clients fetch the tool list once at session start. Server updates (new tools, renamed params, fixed costs) only show up after the client reconnects. This is the single most common confusion.

Upgrading to a newer published version? npx caches packages by exact version, so a configured client keeps running whatever version it first downloaded. To force-pull the latest, either pin to @latest in your config (npx -y @creatordbai/mcp-server@latest re-resolves each launch) or clear the npx cache once (rm -rf ~/.npm/_npx). Then restart the MCP client.

Releasing (maintainers)

The .github/workflows/release.yml workflow publishes to npm whenever a v*.*.* tag is pushed.

# bump version, commit, tag, push
npm version patch              # or minor / major
git push && git push --tags

The workflow validates that the tag matches package.json version, runs npm ci, builds, and publishes via npm Trusted Publishing with sigstore provenance attestation. No long-lived NPM_TOKEN is stored — the workflow exchanges a GitHub OIDC token for a short-lived npm publish token at runtime.

Roadmap

  • Goal: list in the MCP registry and Claude's MCP marketplace so the server shows up when users browse MCP servers from inside their client.

  • Contributions, issues, and feedback welcome — see Getting help below.

Tools

45 tools across six categories. Every tool returns a structured JSON payload plus a Credits used: N | Remaining: M footer line.

Account (1)

Tool

Cost

Notes

get_api_usage

0

Daily request counts and credit consumption by endpoint. Defaults to last 7 days; takes optional start/end Unix-ms timestamps.

Search (4)

Tool

Cost

Notes

search_creators_nls

dynamic (token-based)

Natural-language search across all three platforms. The AI picks the platform and converts the query into filters.

search_youtube

1 per 10 filters

Structured filter search. Use totalSubscribers for count thresholds.

search_instagram

1 per 10 filters

Structured filter search. Use totalFollowers for count thresholds.

search_tiktok

1 per 10 filters

Structured filter search. Use totalFollowers for count thresholds.

Filter type gotcha: numeric ops (>, <, = on subscriber/follower/rate fields) require a number value, not a numeric string. "1000000"VALIDATION_ERROR; 1000000 → ok.

Hashtag value gotcha: stored hashtags on IG/TT carry the leading #, so filter values usually want "#beauty", not "beauty".

Sponsors / brand data (8)

Brand-side intelligence: which brands sponsor creators, how much they spend, which creators they work with. Sponsor data covers YouTube and Instagram only — TikTok is not indexed for brands.

Brand-key: brandId, typically the brand's primary domain (e.g. "acer.com", "nike.com").

Tool

Cost

Returns

search_sponsors

2 per page

Brand search by structured filters. Lean records (brandId, name, logo, industries, country).

list_sponsors

1 per page

Paginated directory of all 10K+ indexed brands.

get_sponsor_information

2

Full brand profile: aliases, keyPeople, industries, location, website, socialMedia, competitors.

get_sponsor_creators

25 per page

Inverse of get_*_sponsorship — which creators has this brand sponsored. Returns followers, lastSponsoredDate, sponsoredCount, topics, niches per creator.

get_sponsor_performance

25 per page

Per-content sponsorship perf. Three stats scopes per creator (creatorTotal, allSponsored lifetime, this-brand-only). YT-only: estimatedCost, CPM.

get_sponsor_audience

25

Aggregated audience demographics across the brand's sponsored creator pool. IG block reserved but null today (backend YT-only).

get_sponsor_summary

25

Cross-platform rollup: totalSponsoredCreators/Content, per-platform creators + performance + growth30d.

submit_sponsor

1 (0 if duplicate)

Submit a brand for indexing. Rate-limited 100/day per key. Returns submissionId + status.

Cost warningget_sponsor_creators, get_sponsor_performance, get_sponsor_audience, get_sponsor_summary each cost 25 credits per call. Use search_sponsors / list_sponsors / get_sponsor_information for cheap exploration first.

YouTube creator data (8 + 4 platform-specific)

Creator-key: channelId (the UC… form — @handle / /c/ / /user/ URLs are not accepted; resolve first).

Tool

Cost

Returns

get_youtube_profile

2

Identity, subscribers, country, language, linked socials, channel categories, plus the creator's topics and niches.

get_youtube_contact

15

Email addresses.

get_youtube_performance

2

R20 (last 20 videos) + all-time (up to 800) engagement metrics; consistency scores.

get_youtube_performance_history

3

Daily snapshots over the past N days. Takes pastDayRange (string integer, 1–365).

get_youtube_audience

10

Age buckets, gender split, top countries.

get_youtube_content_detail

3

Recent videos + shorts with per-item engagement.

get_youtube_sponsorship

5

Sponsored content grouped by indexed brand (recent posts only — empty list ≠ "no sponsors").

list_youtube_topics

1

The YT TOPIC taxonomy (~470 entries with channelCount), paged. YouTube-only — IG and TT do not have a topic taxonomy. search, category, minChannelCount, pageSize, offset.

list_youtube_niches

1

The YT NICHE taxonomy (~16K entries with channelCount), paged. search, category, minChannelCount, pageSize, offset.

search_youtube_content

2 per page

Search individual VIDEOS/SHORTS/STREAMS by content-level filters (different from search_youtube, which searches creators). Returns title, publishTime, views, isSponsored, partneredBrands, hashtags + nested creator block. Both content-level and creator-level filters supported.

get_youtube_subtitles_meta

1

Per-video subtitle track listing. Takes videoId (not channelId).

get_youtube_subtitles_download

3

Subtitle text for one video. Takes videoId, optional language (ISO 639-3).

Instagram creator data (8 + 1)

Creator-key: uniqueId (the handle, no @).

Tool

Cost

Returns

get_instagram_profile

2

Identity, followers, country, language, isBusinessAccount, linked socials, hashtags, account categories, plus the creator's niches.

get_instagram_contact

15

Email addresses.

get_instagram_performance

2

First-page image + reels engagement; consistency scores.

get_instagram_performance_history

3

Daily snapshots over the past N days. Takes pastDayRange.

get_instagram_audience

10

Age buckets, gender split, top countries.

get_instagram_content_detail

2

Recent images + reels with per-item engagement.

get_instagram_sponsorship

5

Sponsored content grouped by indexed brand (recent posts only).

search_instagram_content

2 per page

Search individual IMAGES/REELS by content-level filters (different from search_instagram, which searches creators). NO views or lengthSec (IG data model). Returns description, publishTime, likes, isSponsored, partneredBrands, hashtags + nested creator block.

list_instagram_niches

1

The IG NICHE taxonomy (~40K entries), paged. Instagram does NOT have a "topics" taxonomy. search, minChannelCount, pageSize, offset.

TikTok creator data (7 + 1)

Creator-key: uniqueId (the handle, no @).

Tool

Cost

Returns

get_tiktok_profile

2

Identity, followers, country, language, hashtags, plus the creator's niches.

get_tiktok_contact

15

Email addresses.

get_tiktok_performance

2

Recent videos engagement (views, likes, comments, shares); consistency scores.

get_tiktok_performance_history

3

Daily snapshots over the past N days. Takes pastDayRange.

get_tiktok_audience

10

Age buckets, gender split, top countries.

get_tiktok_content_detail

2

Recent videos with audio metadata, duet/stitch/commerce flags, per-item engagement.

search_tiktok_content

2 per page

Search individual VIDEOS by content-level filters (different from search_tiktok, which searches creators). NO isSponsored/partneredBrands (TT brand-attribution not implemented). Filter terminology uses diggs but response normalizes to likes.

list_tiktok_niches

1

The TT NICHE taxonomy (~40K entries), paged. TikTok does NOT have a topics taxonomy, and does NOT expose a per-brand sponsorship endpoint. search, minChannelCount, pageSize, offset.

Cross-platform differences cheat-sheet

Dimension

YouTube

Instagram

TikTok

Creator parameter

channelId (UC…)

uniqueId (handle)

uniqueId (handle)

Follower field

totalSubscribers

totalFollowers

totalFollowers

Has a topic taxonomy

list_youtube_topics

Has a niche taxonomy

list_youtube_niches

list_instagram_niches

list_tiktok_niches

Per-creator niches in /profile

Per-creator topics in /profile

Sponsorship per-brand endpoint

Content types in /content-detail

videos + shorts

images + reels

videos

/content-detail cost

3

2

2

Performance windows

R20 + all-time (up to 800)

First-page

Recent

Engagement formula

(L+C+V) / subscribers

(L+C) / followers

(L+C+Shares) / followers

Subtitles endpoints

Content-search endpoint

Brand-side sponsor data

Niche IDs are not interchangeable across platformsid_vlog_PeopleBlogs (YT) and id_love_All (IG) live in different namespaces. Niche/topic IDs follow the pattern id_{slug}_{Category}, so you can group by category by splitting on the last _.

Response shape highlights

These are the fields that aren't obvious from the endpoint name but you'll reach for constantly. All confirmed against live responses.

/profile

Shared across YT/IG/TT:

  • subscriberGrowth: { g7, g30, g90 } — % change in subscribers/followers over the last 7/30/90 days. Free trend signal — no need to call performance-history if you only want the headline number.

  • hashtags: [{ name, contentCount }] — hashtags the creator uses (note: name carries the # on IG/TT).

  • niches: ["id_vlog_PeopleBlogs", …] — per-creator niche IDs. To resolve the human-readable name + category + channelCount, cross-reference list_{platform}_niches.

  • relatedCreators — discovery vector. YT gives ~50–250 UC channelIds; IG gives ~50 handles. Cheap way to expand a seed list.

  • lastPublishTime / lastDbUpdateTime — Unix-ms; pair them to know how stale the snapshot is vs how recently the creator posted.

  • country — ISO 3166-1 alpha-3 (e.g. "USA", "JPN"). On IG this value is derived from a content classifier rather than a self-declared field, and can occasionally be wrong for creators with multi-country presence — cross-check against audienceLocations and the creator's bio if accuracy matters.

YT-only:

  • topics: ["id_challenges_Comedy", …] — coarse topic IDs (~470 universe). Resolve via list_youtube_topics.

  • videoPrice + shortsPrice: { cpmLow, cpmRaw, cpmHigh, priceLow, priceRaw, priceHigh } — sponsored video / shorts CPM and dollar rate bands. YouTube-only; IG/TT do not return pricing in /profile.

  • categoryBreakdown: [{ category, share }] — share of recent content by YouTube native category.

  • hasMemberOnlyContents — boolean.

IG-only:

  • isBusinessAccount, isPrivateAccount — flags worth checking before promising audience data; private accounts can't be scraped.

  • otherLinks — bio links array.

TT-only:

  • otherLinks — bio link (TikTok allows one).

/audience

Identical shape across platforms:

  • audienceLocations: [{ country, share }] — top 6 countries with shares summing to roughly 1.0.

  • audienceGender: { maleRatio, femaleRatio } — sums to ~1.0; binary split only.

  • audienceAvgAge — integer.

  • audienceAgeBreakdown: [{ ageRange, share }] — fixed buckets 13-17 | 18-24 | 25-34 | 35-44 | 45-54 | 55-64 | 65+. Always 7 entries; placeholder rows are all-zero (see footgun list below).

/performance

The R20-vs-all distinction is YT-only:

  • YT returns four sibling objects: videosPerformanceRecent, videosPerformanceAll, shortsPerformanceRecent, shortsPerformanceAll. "Recent" = R20 (last 20). "All" = up to 800. Each has likes/comments/views (with avg/median/min/max/percentile25/percentile75/iqr) and an engagement block.

  • IG returns imagesPerformanceRecent + reelsPerformanceRecent. No all-time window.

  • TT returns videosPerformanceRecent. No all-time window.

  • Every engagement block ends with engagementConsistency: { cv, medianVsMean, topBottomRatio, consistencyScore, consistencyLevel }. consistencyScore is 0–100; consistencyLevel is "high" (81–100), "moderate" (51–80), or "low" (0–50). Requires ≥6 content pieces, otherwise the consistency block is absent.

  • ranking block carries global, country, language percentile ranks for totalSubscribers/totalFollowers and avgEngagementRate — useful for "is this creator above average for their country" without separate benchmarking.

  • recentVideosGrowth.g7/g30/g90 — engagement-rate delta over 7/30/90 days. Negative numbers mean engagement is declining.

  • contentCountByDays: { 7d, 30d, 90d } — how many posts in each window (use to detect dormant creators).

/content-detail

Per-item objects across platforms:

  • publishTime (Unix-ms), contentId, likes, comments, views (YT/TT only — IG images have no view count), engagementRate (rounded to 4 decimals).

  • hashtags: ["#example", …] — already includes # prefix.

Platform-specific extras:

  • YT: length (seconds), isMemberOnly, content mix includes both videos and shorts.

  • IG: mentionedCreators@-mentions in caption.

  • TT: audioId, audioTitle, audioAuthor, audioAlbum, isDuetEnabled, isAd, length (seconds), shares. The audio block is the cheapest way to find trending sounds.

Freshness rule — content published within the last 4 days is excluded from all metric calculations (all platforms). Pinned-post rule — on IG/TT, a pinned post older than 90 days is excluded if it would be the oldest item in the sample.

/sponsorship

YT and IG only — TikTok does not have a per-brand sponsorship endpoint.

  • sponsorList: [{ brandName, brandId, brandIgIds, sponsoredVideos, sponsoredVideosPerformance }].

  • brandIgIds — the brand's IG handles. Use this to follow a brand from a sponsored creator back to the brand's own profile.

  • sponsoredVideos includes each sponsored content's full per-item engagement (same shape as /content-detail).

  • Important caveat — only scans the most recent ~20–30 posts and only detects brands already indexed in CreatorDB. An empty sponsorList is not proof the creator has no sponsors; it's "we didn't find indexed sponsors in their recent posts."

Structured search response:

  • creatorList: [{ displayName, uniqueId, channelId (YT only), avatarUrl, totalSubscribers | totalFollowers }] — minimal projection; hydrate with get_*_profile for full data.

  • totalResults — total matching the filter set, not just the page.

  • hasNextPage + nextOffset — pagination idiom. Pass nextOffset as the next request's offset to advance.

NLS response:

  • Same creatorList shape as structured search, plus a platform: "youtube" | "instagram" | "tiktok" field telling you which platform the AI routed to.

  • Streamed over SSE under the hood; the MCP layer collects the final data: event and returns it as one payload.

  • Dynamic pricing — typically 1–10 credits depending on input + output token count.

/usage

  • records: [{ date (YYYYMMDD), requestCount, totalQuotaUsed, endpoints: { …per-endpoint counts }, platforms: { …per-platform counts }, quotaByPlatform }].

  • totalQuotaUsed can be fractional (e.g. 4.49 for an NLS call).

  • endpoints keys are camelCase: getYoutubeProfile, getInstagramAudience, searchYoutube, getNLS, etc. Useful for building a spend dashboard.

Common footguns

  • Placeholder demographics: when CreatorDB doesn't have real audience data, /audience returns the all-zero shape (audienceGender: { maleRatio: 0, femaleRatio: 0 }, age buckets all 0.0). Treat any row where male+female=0 as missing, not as "no gender data."

  • Empty sponsorList ≠ no sponsors (see above).

  • relatedCreators is unranked — order is not significance. Don't slice the first N and call them "top related"; sample or rerank by your own metric.

  • Freshness laglastDbUpdateTime is when CreatorDB last refreshed. If it's older than ~14 days, the profile may not reflect recent breakout content.

  • Niche channelCount driftslist_*_niches is updated daily; don't cache it longer than that or your "creators in X niche" count will lag reality.

  • Search the taxonomy, don't page itlist_*_niches returns one page at a time (100 by default, largest first) because the full taxonomies run to ~40,000 entries on Instagram and TikTok. Both are a single flat "All" category with no structure to browse, and the top 100 entries account for only ~18% of creator assignments, so paging rarely gets you anywhere. Pass search to resolve a phrase to niche names instead. Matching is whole-word, so skin will not find Skincare; CamelCase names are split (StreetFood matches street food) and common variants are folded (vloggersvlog, japanesejapan). On TikTok ~44% of niches have under 100 creators — minChannelCount trims that tail.

  • IG country is modelled, not self-declared — YouTube and TikTok return the country a creator set on their own profile; for Instagram, CreatorDB's location model supplies it, so IG has country coverage where the profile states nothing.

Filter reference (search tools)

Common fields across all three platforms:

  • displayName — string, supports fuzzy

  • uniqueId — string, exact

  • country — string, ISO 3166-1 alpha-3 (e.g. "USA", "JPN", "GBR")

  • mainLanguage — string, ISO 639-3 (e.g. "eng", "jpn", "zhs")

  • hashtags — string (with # prefix on IG/TT)

  • niches — string (use IDs from the platform's list_*_niches)

  • mainAudienceLocation / mainAudienceAge / mainAudienceGender — string

  • hasSponsors — boolean

Platform-specific:

  • YouTube: totalSubscribers (number), topics (string from list_youtube_topics)

  • Instagram / TikTok: totalFollowers (number)

Operators: >, <, = for numbers; =, in for strings; = for booleans. in takes an array of up to 100 values. pageSize max 100; filters max 10 per request.

Response envelope

Every tool returns the underlying CreatorDB V3 envelope:

{
  "data": { },
  "creditsUsed": 2,
  "creditsAvailable": 953270.5,
  "traceId": "abc-123",
  "timestamp": 1779722787120,
  "errorCode": "",
  "errorDescription": "",
  "success": true
}

On error, the envelope carries errorCode, error, message, and details. The MCP layer flattens that into a clean error message with a TraceId: line for support.

Development

npm run dev   # tsc --watch
npm run build # tsc once
npm start     # node dist/index.js

Source layout:

src/
  index.ts                 # registers all tools, stdio transport
  tools/
    account.ts             # 1 tool
    search.ts              # 4 tools (NLS + 3 platform creator searches)
    youtube.ts             # 12 tools (incl. search_youtube_content)
    instagram.ts           # 9 tools (incl. search_instagram_content)
    tiktok.ts              # 8 tools (incl. search_tiktok_content)
    sponsors.ts            # 8 tools (brand-side sponsor intelligence)
  util/
    api-client.ts          # fetch wrapper for REST + SSE
    response.ts            # MCP result formatter (credits, errors)

Getting help

License

MIT

Available Tools

42 tools
get_api_usageAInspect

Get your CreatorDB API usage. Returns records: [{ date (YYYYMMDD), requestCount, totalQuotaUsed (can be fractional, e.g. NLS), endpoints (camelCase per-endpoint counts: getYoutubeProfile, searchInstagram, getNLS, etc.), platforms, quotaByPlatform }]. Free to call (0 credits). Defaults to last 7 days; pass start/end as Unix-ms strings to widen the window.

ParametersJSON Schema
NameRequiredDescriptionDefault
startNoStart date as Unix timestamp in milliseconds
endNoEnd date as Unix timestamp in milliseconds

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are present, so the description carries full burden. It discloses the tool is free ('0 credits'), defaults to last 7 days, and describes the output structure in detail. No destructive behavior is mentioned, which is appropriate for a read-only usage tool. The description adds significant behavioral context beyond the schema.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, highly efficient. The first sentence states purpose and output. The second covers cost, defaults, and parameter usage. Every sentence provides value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema is provided, but the description fully explains the return format (records array with fields). It covers all essential aspects: purpose, cost, parameter customization, and output structure. For a simple usage tool with well-documented parameters, this is complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with descriptions for both parameters. The description adds meaning beyond the schema by specifying they are 'Unix-ms strings' and explaining default behavior (defaults to last 7 days). This helps the agent understand format and usage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Get your CreatorDB API usage.' It specifies the output format (records with date, requestCount, etc.) and distinguishes itself from sibling tools focused on specific platform data or searches. The verb 'get' and resource 'API usage' are unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context: 'Free to call (0 credits). Defaults to last 7 days; pass start/end as Unix-ms strings to widen the window.' It gives default behavior and how to modify it. It does not explicitly state when not to use this tool but implies it for checking usage, not data retrieval.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_instagram_audienceAInspect

Get an Instagram creator's audience demographics: audienceLocations (top 6 countries with shares), audienceGender (maleRatio + femaleRatio, binary only), audienceAvgAge (integer), audienceAgeBreakdown (fixed 7 buckets: 13-17/18-24/25-34/35-44/45-54/55-64/65+). When data is missing the endpoint returns the placeholder shape (all 0.0) — treat male+female=0 as missing, not "no gender data." Costs 10 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
uniqueIdYesInstagram handle (e.g. "natgeo"). No "@" prefix and no URL.

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description fully covers behavioral traits: it explains that when data is missing the endpoint returns a placeholder shape (all 0.0), specifies how to interpret missing data (male+female=0 means missing, not no gender), and notes the credit cost. This is thorough beyond expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and well-structured: a single paragraph that starts with the main purpose, then details each returned field with types and examples, and ends with special behavior and cost. Every sentence contributes value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description adequately explains all return values, including field types, example values, and how missing data is represented. The parameter is simple and fully documented. No important context is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter 'uniqueId' is already well-described in the input schema (handle, no '@' prefix, no URL). The description repeats this information but adds no new semantic meaning beyond what the schema provides. Schema coverage is 100%, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool's purpose: retrieving an Instagram creator's audience demographics. It lists specific fields (audienceLocations, audienceGender, audienceAvgAge, audienceAgeBreakdown) and distinguishes from sibling tools like get_instagram_profile or get_instagram_performance by focusing on demographic data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for obtaining Instagram audience demographics and mentions a cost of 10 credits. However, it does not explicitly state when not to use this tool or suggest alternatives among the many sibling tools. No prerequisites or conditions are given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_instagram_contactAInspect

Get an Instagram creator's contact email addresses (business/public-listed emails). Costs 15 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
uniqueIdYesInstagram handle (e.g. "natgeo"). No "@" prefix and no URL.

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses cost (15 credits) and scope of emails, but no annotations are provided. Missing information on authentication requirements, rate limits, or behavior when no emails are available.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single, clear sentence with essential information. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Adequate for a simple tool with one parameter and no output schema. Covers purpose, scope, and cost, but lacks details on errors or empty results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema already describes the parameter well (100% coverage). Description adds no new meaning beyond what the schema provides.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it retrieves contact email addresses for Instagram creators, specifying the type (business/public-listed). Distinguished from siblings like get_instagram_audience and get_instagram_profile.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Implied usage by tool name and description, but no explicit guidance on when to use vs. alternatives or prerequisites. The cost mention provides some context but not comparative usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_instagram_content_detailAInspect

Get an Instagram creator's recent content (images + reels) with per-item engagement: likes, comments, views (reels only — images have no view count), caption, hashtags (with "#"), mentionedCreators (@-mentions), publishTime (Unix-ms), engagementRate. Content from the last 4 days is excluded from metric calculations. Pinned posts >90 days old are excluded if they would be the oldest item. Costs 2 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
uniqueIdYesInstagram handle (e.g. "natgeo"). No "@" prefix and no URL.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full responsibility. It discloses key behavioral traits: views only for reels, exclusion of content from the last 4 days from metric calculations, exclusion of old pinned posts, and the credit cost. This goes beyond basic functionality.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise (two sentences) yet packs essential information without superfluous words. It is front-loaded with the main purpose and then specifies nuances and constraints efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter tool with no output schema, the description is complete. It explains what content is retrieved, what metrics are included, exclusions, and cost. An agent has sufficient context to decide if this tool meets the need.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage for the single parameter 'uniqueId', with clear context (no '@' prefix, no URL). The description adds no new details beyond the schema, so the baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states that the tool retrieves recent Instagram content (images and reels) with per-item engagement details. It lists specific fields returned, and the resource and verb are clearly identified. It distinguishes from sibling tools that focus on other aspects like audience or profile.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides contextual details like credit cost and date exclusions, but does not explicitly state when to use this tool versus alternatives like search_instagram_content. There is no guidance on prerequisites or when not to use it, leaving usage implied rather than explicit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_instagram_performanceAInspect

Get an Instagram creator's engagement metrics on first-page content. Returns imagesPerformanceRecent + reelsPerformanceRecent with avg/median/min/max likes, comments, and (for reels) views, plus an engagement block using (L+C)/followers and consistencyScore (0–100; bands: high 81–100, moderate 51–80, low 0–50; requires ≥6 posts). ranking block carries global/country/language percentiles. recentReelsGrowth.g7/g30/g90 shows engagement-rate trend. contentCountByDays.7d/30d/90d shows posting cadence. IG has no all-time window (YouTube-only). Costs 2 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
uniqueIdYesInstagram handle (e.g. "natgeo"). No "@" prefix and no URL.

TDQS

A4.5/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It details the metrics returned (avg/median/min/max likes, comments, views; engagement formula; consistencyScore with bands and requirement; ranking; growth trends; content count). It also notes the credit cost (2 credits) and the limitation that IG has no all-time window.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the main purpose and then systematically details the data blocks. Every sentence adds value with no redundancy. It is appropriately sized given the complexity of the returned data.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, the description thoroughly explains what the tool returns, including the important metrics, consistency score bands, and growth trends. It also mentions the credit cost, making it complete for an agent to understand the tool's functionality.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The only parameter, uniqueId, is already described in the input schema (handle format, no '@' or URL). The tool description does not add further semantic meaning beyond this, but schema coverage is 100%, so a baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves engagement metrics for an Instagram creator's first-page content. It specifies the returned data blocks (imagesPerformanceRecent, reelsPerformanceRecent, engagement, ranking, growth trends, posting cadence) and distinguishes from siblings by noting IG has no all-time window (YouTube-only).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The purpose is clear, but there is no explicit guidance on when to use this tool versus alternatives like get_instagram_performance_history. However, the mention of 'first-page content' and 'IG has no all-time window' implies appropriate use cases.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_instagram_performance_historyAInspect

Get daily metric snapshots (followers, content count, first-page engagement) for an Instagram creator. Returns the histories array of timestamped snapshots over the past N days. Costs 3 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
uniqueIdYesInstagram handle (e.g. "natgeo"). No "@" prefix and no URL.
pastDayRangeYesHow many past days of daily snapshots to return. String integer, 1–365.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description reveals that the tool returns a 'histories' array of timestamped snapshots and costs 3 credits. This provides insight into output structure and resource usage. No annotations exist, so the description carries full burden and does so well, though it could mention error handling or authentication.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, each with distinct, essential information: first sentence states purpose and metrics, second sentence describes output and cost. No wasted words. Front-loaded with the core action.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given two simple parameters, no output schema, and no annotations, the description covers all critical aspects: what the tool does, what it returns (histories array), key metrics, time range, and cost. No major gaps for an agent to use it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema provides complete descriptions for both parameters (uniqueId and pastDayRange), covering 100% of parameters. The description adds no new information about parameters beyond what the schema already states, only confirming the time range concept.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states specific verb and resource: 'Get daily metric snapshots' and lists exact metrics (followers, content count, first-page engagement). It clearly distinguishes from sibling 'get_instagram_performance' by emphasizing the historical, snapshot-based nature and time range.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implicitly suggests use for historical daily data but does not explicitly mention when to use this tool versus alternatives like 'get_instagram_performance' or other sibling tools. No exclusion or context for when not to use is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_instagram_profileAInspect

Get an Instagram creator's profile: display name, follower count, biography, isVerified/isBusinessAccount flags, country (ISO 3166-1 alpha-3), main language, linked socials (YouTube/TikTok), hashtags used, account-level categories, and the creator's AI-classified niches. To browse the full IG niche taxonomy use list_instagram_niches. Costs 2 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
uniqueIdYesInstagram handle (e.g. "natgeo"). No "@" prefix and no URL.

TDQS

A4.1/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses the cost (2 credits) and implies a read operation via 'Get', but lacks explicit information about safety, authentication requirements, or error behavior. Without annotations, more transparency is needed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is highly concise: two sentences that efficiently convey purpose, returned fields, alternative tool, and cost. No unnecessary text.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (one parameter, no output schema), the description covers all essential aspects: what is returned, cost, and related tool. It is complete for the complexity level.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema already fully describes the single parameter with 100% coverage. The description does not add any additional meaning beyond what is in the schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves an Instagram creator's profile with a specific list of fields. It distinguishes itself from sibling tools like list_instagram_niches and get_instagram_audience by its focus on profile data.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit context by mentioning list_instagram_niches as an alternative for niche taxonomy browsing. However, it does not specify when to use this tool versus other profile-related siblings like get_instagram_audience, leaving some ambiguity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_instagram_sponsorshipAInspect

Get an Instagram creator's sponsored content grouped by brand. Returns sponsorList: [{ brandName, brandId, brandIgIds, sponsoredVideos, sponsoredVideosPerformance }]. Each sponsoredVideo carries per-item engagement (same shape as content-detail). CAVEAT: only scans the most recent ~20–30 posts AND only detects brands already indexed — an empty sponsorList is NOT proof the creator has no sponsors. Costs 5 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
uniqueIdYesInstagram handle (e.g. "natgeo"). No "@" prefix and no URL.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, description fully discloses behavioral traits: costs 5 credits, scans limited posts, only detects indexed brands, and that empty sponsorList is not proof of no sponsors. This helps set expectations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Concise at 3 sentences plus a bullet point, front-loaded with purpose, then return type, then caveats. Every sentence provides necessary information without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Although there is no output schema, the description thoroughly explains the return structure (sponsorList fields, engagement shape) and critical context (credit cost, limitations), making it complete for selection and invocation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and the description adds value beyond schema by specifying format restrictions (no '@' prefix, no URL) and providing an example ('natgeo'), which clarifies parameter usage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states the tool gets sponsored content grouped by brand, using specific verb 'Get' and resource 'creators sponsored content'. It distinguishes from siblings like get_sponsor_creators and get_sponsor_performance by focusing on brand-level grouping.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides implicit guidelines by explaining limitations (scans only ~20-30 posts, only indexed brands) and cost (5 credits), but does not explicitly mention when to use alternative tools among the many sibling sponsorship tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sponsor_audienceAInspect

Aggregated audience demographics across all creators a brand has sponsored. Returns data.youtube and/or data.instagram (each may be null) with audienceLocations (top 5 countries), audienceGender (maleRatio + femaleRatio), audienceAvgAge, audienceAgeBreakdown (fixed 7 buckets: 13-17/18-24/25-34/35-44/45-54/55-64/65+). IG block is reserved but always null today — backend only aggregates YT audience. Omit platform to request both. EXPENSIVE: costs 25 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
brandIdYesBrand ID (e.g. "acer.com").
platformNoPlatform scope. NOTE: TikTok sponsor data is not available — only YouTube and Instagram.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, description fully discloses important behavior: IG block is always null (backend limitation), the expensive nature (25 credits), and the fixed age breakdown buckets. This enables informed invocation decisions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is concise, covering all necessary details in a few sentences. Front-loaded with purpose and output structure. Slight redundancy in enumerating age buckets could be trimmed, but otherwise efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite no output schema, description thoroughly documents return structure: two optional blocks (data.youtube, data.instagram) each containing audienceLocations, audienceGender, audienceAvgAge, audienceAgeBreakdown (with explicit bucket list). Also covers cost and platform omission. All essential for agent to use correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with parameter descriptions. Description adds value by explaining how to omit platform to get both datasets and clarifying the enum values (though schema already lists them). The cost warning is an extra behavioral cue.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it returns aggregated audience demographics across all sponsored creators, distinguishing it from per-platform audience tools like get_youtube_audience. It specifies output fields and current limitation (IG always null), making purpose unmistakable.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear usage hint: 'Omit platform to request both.' Warns about high cost (25 credits). Does not explicitly exclude use cases or name alternatives, but the context of aggregated vs per-creator audience is implicit given sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sponsor_creatorsAInspect

List creators a brand has sponsored (inverse of get_*_sponsorship). Returns each creator with displayName, country, followers, sponsoredContent[] (URLs), topics, niches, sponsoredCount, lastSponsoredDate, avgRecentSponsoredEngagementRate (cross-brand aggregate: lifetime window on Instagram, R20 window on YouTube). EXPENSIVE: costs 25 credits per page.

ParametersJSON Schema
NameRequiredDescriptionDefault
brandIdYesBrand ID (e.g. "acer.com").
platformYesPlatform scope. NOTE: TikTok sponsor data is not available — only YouTube and Instagram.
pageSizeNoResults per page (max 100).
offsetNoNumber of records to skip for pagination.
sortByNoSort field.lastSponsoredDate
descNoSort descending (true) or ascending (false).

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description bears the full burden. It discloses the cost, aggregate nature of engagement rate, platform-specific windows, and pagination parameters. It omits read-only status (implied) and potential rate limits, but the coverage is good for a list endpoint.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, well-packed paragraph that front-loads the purpose, includes key result fields, and ends with cost. Every sentence adds necessary information without fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has 6 parameters and no output schema, the description explains most critical aspects: purpose, returned fields, platform nuance, and cost. It lacks explicit pagination metadata in the response but covers the essentials for a list tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds value by explaining that avgRecentSponsoredEngagementRate is cross-brand aggregate with platform-dependent windows, supplementing the schema. The cost note also informs parameter use.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists creators a brand has sponsored and explicitly calls it the inverse of get_*_sponsorship, effectively distinguishing it from sibling tools. It also specifies returned fields, leaving no ambiguity about its function.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description tells when to use it (list sponsored creators) and notes the cost (25 credits per page) and platform limitations (no TikTok). It indirectly guides against misuse by mentioning the inverse tool, but does not explicitly list when not to use or alternative tools for different queries.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sponsor_informationAInspect

Get a single brand's full profile: name, alias[], logo, description, companySize, keyPeople[], industries[], country, location, website, socialMedia[] (with platform-tagged URLs), competitors[], totalSponsoredContent, sponsoringPlatforms. Costs 2 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
brandIdYesBrand ID (typically the brand's primary domain, e.g. "acer.com", "nike.com").

TDQS

A3.8/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the burden. It discloses a cost of 2 credits, which is valuable behavioral info. However, it does not mention whether the operation is read-only, idempotent, or any side effects, leaving gaps for the agent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single sentence that effectively front-loads the purpose and lists all returned fields, plus a cost note. Every piece earns its place with no wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the simplicity (one parameter, no output schema), the description adequately lists all returned fields and cost. It lacks mention of error handling or edge cases (e.g., brand not found), but is otherwise complete for a straightforward retrieval tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% (brandId description provided). The tool description adds no additional parameter meaning beyond the schema, so baseline score of 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Get a single brand's full profile' and enumerates specific fields like name, alias[], logo, etc. This verb+resource structure distinguishes it from siblings such as get_sponsor_summary (presumably less detail) and list_sponsors (multiple brands).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for detailed brand profile retrieval but does not explicitly guide when to use this versus alternatives like get_sponsor_summary or search_sponsors. No when-not-to-use or alternative mention is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sponsor_performanceAInspect

Detailed per-content sponsorship performance for a brand. Returns sponsoredCreators[] each with three stats scopes (creatorTotalStats = all content, creatorAllSponsoredStats = all sponsored content lifetime, creatorSpecificSponsoredStats = for this brand only) plus estimatedCost / estimatedCreatorCPM (YouTube-only — null for Instagram) and a content[] array with per-item views7d/30d/90d/Lifetime, likes, comments, engagementRate. EXPENSIVE: costs 25 credits per page.

ParametersJSON Schema
NameRequiredDescriptionDefault
brandIdYesBrand ID (e.g. "acer.com").
platformYesPlatform scope. NOTE: TikTok sponsor data is not available — only YouTube and Instagram.
pageSizeNoResults per page (max 100).
offsetNoNumber of records to skip for pagination.
sortByNoSort field. Numeric sorts use per-creator averages; `views` uses viewsLifetime.publishTime
descNoSort descending (true) or ascending (false).

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description discloses the credit cost (25 credits per page) and platform-specific differences (YouTube-only for estimatedCost/estimatedCreatorCPM, null for Instagram). No annotations were provided, so the description carries the burden and does well, but could mention rate limits or whether modifications occur.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise, front-loads the purpose, and uses a clear structure: purpose, return fields, cost note. Each sentence adds value without unnecessary repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no output schema and no annotations, the description provides a good overview of return structure and cost. However, it lacks details on pagination behavior (how to iterate) and error conditions, leaving minor gaps for a tool with 6 parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

All parameters have descriptions in the schema (100% coverage), so the description does not need to elaborate much. It adds context about the return structure which indirectly helps choose values for parameters like sortBy, but does not directly enhance parameter understanding beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it returns detailed per-content sponsorship performance for a brand, listing the return fields and noting the credit cost. It distinguishes itself from generic performance tools by focusing on sponsorship data per content.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for brand sponsorship performance but does not explicitly state when to use this tool versus alternatives like get_sponsor_summary or get_sponsor_creators. No when-not-to-use or alternative guidance provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_sponsor_summaryAInspect

Cross-platform sponsorship rollup for a brand. Returns data.summary with totalSponsoredCreators, totalSponsoredContent, and per-platform youtube + instagram sub-objects each carrying a creators block (sponsoredCreators, sponsoredContent30d, top-5 creatorLocationBreakdown, top-5 creatorLanguageBreakdown) and a performance block (estimatedTotalSpend 7d/30d/90d, estimatedCPM30d, estimatedCPE30d, views/likes/comments aggregates, growth30d deltas). Instagram spend/CPM/CPE always null today. EXPENSIVE: costs 25 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
brandIdYesBrand ID (e.g. "acer.com").

TDQS

A4.3/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries full burden. It explicitly discloses that Instagram spend/CPM/CPE always return null and that the tool costs 25 credits, providing valuable behavioral traits beyond what annotations would typically cover.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with purpose, but the second sentence is a long, dense list of nested fields, which could be more readable. It earns its place but is not optimally structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description thoroughly explains the return value structure. However, it omits error handling, prerequisites (e.g., brand existence), or rate limits beyond the single cost warning. Still, for a simple one-parameter tool, it is fairly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single parameter, and the description adds no additional semantics for brandId beyond the schema's example. The detailed output structure indirectly helps, but per the guidelines, baseline is 3 when schema coverage is high.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Cross-platform sponsorship rollup for a brand', which is a specific verb+resource. It distinguishes itself from sibling tools like get_sponsor_creators or get_sponsor_performance by emphasizing the rollup nature across platforms and providing detailed output structure.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description notes that the tool is expensive (costs 25 credits), implying it should be used judiciously. However, it does not explicitly state when to use versus alternatives (e.g., use get_sponsor_creators for detailed creator lists), so it lacks exclusion guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_tiktok_audienceAInspect

Get a TikTok creator's audience demographics: audienceLocations (top 6 countries with shares), audienceGender (maleRatio + femaleRatio, binary only), audienceAvgAge (integer), audienceAgeBreakdown (fixed 7 buckets: 13-17/18-24/25-34/35-44/45-54/55-64/65+). When data is missing the endpoint returns the placeholder shape (all 0.0) — treat male+female=0 as missing. Costs 10 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
uniqueIdYesTikTok handle (e.g. "charlidamelio"). No "@" prefix and no URL.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses missing data placeholder shape (all 0.0) and interpretation rule (male+female=0 as missing). Mentions credi cost. No annotations provided, so description carries the burden; adequately covers key behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Concise, front-loaded with purpose. Every sentence adds value: purpose, field list, missing data handling, cost. No unnecessary words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers output fields, missing data behavior, and cost. No output schema exists, so description compensates well. Could optionally describe output format more, but sufficient for a simple retrieval tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Single parameter uniqueId is described in schema with 100% coverage. Description adds example and clarifies no '@' prefix and no URL, providing extra clarity beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states 'Get a TikTok creator's audience demographics' with specific fields listed. Distinguishes from sibling tools like get_instagram_audience via platform prefix.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool vs. alternatives. Usage is implied through purpose, but no when-to-use or when-not-to-use advice is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_tiktok_contactAInspect

Get a TikTok creator's contact email addresses (public-listed). Costs 15 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
uniqueIdYesTikTok handle (e.g. "charlidamelio"). No "@" prefix and no URL.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses cost (15 credits) but lacks other behavioral traits such as authentication requirements, rate limits, or error responses. No annotations exist, so description carries the full burden but does not fully cover.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single, focused sentence with no unnecessary text. Efficiently conveys purpose, data scope, and cost.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Provides essential information for a low-complexity tool: what it does, input format, and cost. Could mention return structure (e.g., an array of emails) but not critical for basic selection.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with one parameter. Description adds value by specifying format (no '@' prefix, no URL) beyond the schema's example. Provides concrete usage guidance.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the verb 'Get' and the resource 'a TikTok creator's contact email addresses (public-listed)'. Distinguishes from sibling tools like get_instagram_contact by specifying platform and data type.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use vs alternatives. The description implies usage for TikTok contact retrieval, but does not mention when not to use or compare with other TikTok tools like get_tiktok_profile.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_tiktok_content_detailAInspect

Get a TikTok creator's recent videos with per-item engagement: views, likes, comments, shares, engagementRate, length (seconds), isAd, hashtags (with "#"), publishTime (Unix-ms). Each item also carries TT-only audio metadata (audioId, audioTitle, audioAuthor, audioAlbum) and isDuetEnabled — the audio block is the cheapest hook into trending-sound analysis. Content from the last 4 days is excluded from metric calculations. Pinned posts >90 days old are excluded if they would be the oldest item. Costs 2 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
uniqueIdYesTikTok handle (e.g. "charlidamelio"). No "@" prefix and no URL.

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so the description fully covers behavioral traits: exclusions (last 4 days excluded from metrics, pinned posts >90 days excluded), cost (2 credits), and special fields (audio metadata). This is thorough.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured, starting with the main purpose, then detailing returned fields, exclusions, and cost. Each sentence adds value, though it could be slightly more concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter tool with no output schema, the description fully explains what is returned, special cases, and cost. No gaps remain for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The single parameter uniqueId is described with formatting rules (no '@', no URL) beyond the schema's type/description. Schema coverage is 100%, but the description adds practical usage guidance.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves a TikTok creator's recent videos with per-item engagement metrics. The verb 'Get' and resource 'videos' are explicit. It distinguishes from siblings like get_tiktok_profile by focusing on content detail.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies a use case (trending-sound analysis via audio metadata) but lacks explicit when-to-use or when-not-to-use guidance. It does not compare with siblings like search_tiktok_content.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_tiktok_performanceAInspect

Get a TikTok creator's engagement metrics on recent videos. Returns videosPerformanceRecent with avg/median/min/max views, likes, comments, shares, plus an engagement block using (L+C+Shares)/followers and consistencyScore (0–100; bands: high 81–100, moderate 51–80, low 0–50; requires ≥6 videos). ranking block carries global/country/language percentiles. recentVideosGrowth.g7/g30/g90 shows engagement-rate trend. contentCountByDays.7d/30d/90d shows posting cadence. TikTok has no all-time window (YouTube-only). Costs 2 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
uniqueIdYesTikTok handle (e.g. "charlidamelio"). No "@" prefix and no URL.

TDQS

A4.2/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description thoroughly discloses behavioral traits: returns videosPerformanceRecent with detailed metrics, engagement block, consistencyScore requirements, ranking blocks, growth trends, posting cadence, and cost. No annotations exist, so the description carries full burden and meets it.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single paragraph but well-structured with clear sections for different metric groups. It is informative without being overly verbose, though could be slightly more concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description fully explains return values, including engagement metrics, consistencyScore bands, percentiles, growth trends, and posting cadence. Also includes cost. Complete for a retrieval tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% for the single parameter uniqueId. The description adds minimal extra context beyond the schema (e.g., no '@' prefix), so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it gets a TikTok creator's engagement metrics on recent videos, listing specific metrics. It distinguishes from sibling tools like get_tiktok_performance_history and get_tiktok_profile by focusing on engagement metrics.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for TikTok performance data and notes TikTok's lack of an all-time window, but does not explicitly state when to use this tool vs alternatives or provide exclusion criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_tiktok_performance_historyBInspect

Get daily metric snapshots (followers, content count, recent engagement) for a TikTok creator. Returns the histories array of timestamped snapshots over the past N days. Costs 3 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
uniqueIdYesTikTok handle (e.g. "charlidamelio"). No "@" prefix and no URL.
pastDayRangeYesHow many past days of daily snapshots to return. String integer, 1–365.

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description is the sole source of behavioral info. It notes the cost but does not disclose rate limits, authentication needs, or any side effects. The read-only nature is implied but not explicit.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no fluff. Front-loaded with purpose and key details like the return array and cost. Every sentence is informative.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers the basic purpose and return type but lacks details on snapshot structure (e.g., which metrics are in each object) despite being a history tool. No output schema, so description should elaborate more.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with clear parameter descriptions. The description adds minimal extra meaning (e.g., 'over the past N days' is redundant with schema). No new syntax or constraints beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves daily metric snapshots for a TikTok creator, naming specific metrics (followers, content count, recent engagement). However, it does not distinguish from sibling tools like get_tiktok_performance or get_tiktok_profile.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this tool versus alternatives. It mentions the cost (3 credits) but lacks context on prerequisites or exclusion criteria.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_tiktok_profileAInspect

Get a TikTok creator's profile: display name, follower count, biography, isVerified flag, country (ISO 3166-1 alpha-3), main language, linked socials, hashtags, and the creator's AI-classified niches. To browse the full TT niche taxonomy use list_tiktok_niches. Costs 2 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
uniqueIdYesTikTok handle (e.g. "charlidamelio"). No "@" prefix and no URL.

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It mentions cost (2 credits) and lists returned fields, but does not disclose authentication requirements, rate limits, or behavior on missing profiles. This is a moderate gap given no annotation support.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three concise, front-loaded sentences with no fluff. Every sentence adds value: purpose, returned fields, alternative tool, and cost.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no annotations, the description sufficiently lists returned fields and provides cost. It lacks error handling or null field behavior, but overall is fairly complete for a straightforward profile retrieval tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema provides 100% coverage for the single parameter (uniqueId) with a clear description. The tool description adds no additional param info beyond schema, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves a TikTok creator's profile and lists specific fields (display name, follower count, etc.). It distinguishes from sibling tool list_tiktok_niches by noting that tool is for browsing niche taxonomy.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides context on when to use this tool vs alternatives: directs to list_tiktok_niches for browsing niche taxonomy. It also mentions cost (2 credits). However, it does not explicitly state when NOT to use this tool or cover other sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_youtube_audienceAInspect

Get a YouTube creator's audience demographics: audienceLocations (top 6 countries with shares), audienceGender (maleRatio + femaleRatio, binary only), audienceAvgAge (integer), audienceAgeBreakdown (fixed 7 buckets: 13-17/18-24/25-34/35-44/45-54/55-64/65+). When data is missing the endpoint returns the placeholder shape (all 0.0) — treat male+female=0 as missing. Costs 10 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
channelIdYesYouTube channel ID (the immutable UC… form, e.g. "UCX6OQ3DkcsbYNE6H8uQQuVA"). "@handle", "/c/vanity", and "/user/legacy" URLs are NOT accepted here — resolve them to a UC channelId first.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. Discloses data fields, placeholder shape for missing data, and cost. Lacks rate limits or error conditions but sufficient for core behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with main purpose, then details. No fluff, every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, so description explains return fields adequately. Missing details on error handling or rate limits, but for a single-parameter tool it's fairly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but description adds meaning by explaining channelId must be UC form and what forms are not accepted, which is beyond schema description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it gets a YouTube creator's audience demographics and lists specific fields. Distinguishes from siblings by being platform-specific and audience-focused.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides context on cost and missing data behavior but does not specify when to use over alternatives like get_tiktok_audience or get_instagram_audience. Implicit context but no explicit guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_youtube_contactAInspect

Get a YouTube creator's contact email addresses (channel "for business" + public). Costs 15 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
channelIdYesYouTube channel ID (the immutable UC… form, e.g. "UCX6OQ3DkcsbYNE6H8uQQuVA"). "@handle", "/c/vanity", and "/user/legacy" URLs are NOT accepted here — resolve them to a UC channelId first.

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the burden. It discloses the credit cost and the specific input format requirement, but does not reveal whether the operation is read-only, any potential rate limits, or what happens if the channel has no contact info.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description consists of two short sentences that efficiently convey the purpose, input restriction, and cost. No unnecessary words, and the critical information is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no annotations and no output schema, the description provides basic purpose and input constraints but does not explain the output structure (e.g., what 'for business + public' means in practice). It is adequate for a simple tool but leaves some context gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with one parameter fully described in the schema. The description adds value by clarifying that only the immutable UC form is accepted and explicitly listing rejected URL types (@handle, /c/vanity, /user/legacy), which is beyond the schema's generic description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves contact email addresses for a YouTube creator, specifying both 'for business' and public emails. The verb 'Get' and resource 'YouTube creator's contact email addresses' are precise, and it distinguishes from other YouTube tools by focusing on contact info.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description mentions credit cost and the input constraint (only UC channel ID accepted, not handles or vanity URLs), providing some guidance on when to use. However, it does not explicitly state when to use this tool versus alternatives or when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_youtube_content_detailAInspect

Get a YouTube creator's recent content (videos + shorts) with per-item engagement: views, likes, comments, length (seconds), isMemberOnly flag (filter for member-only content), hashtags (with "#"), publishTime (Unix-ms), engagementRate. Content from the last 4 days is excluded from metric calculations. Costs 3 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
channelIdYesYouTube channel ID (the immutable UC… form, e.g. "UCX6OQ3DkcsbYNE6H8uQQuVA"). "@handle", "/c/vanity", and "/user/legacy" URLs are NOT accepted here — resolve them to a UC channelId first.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully handles disclosure. It reveals credit cost (3 credits), the 4-day exclusion from metric calculations, and lists return fields. No contradictions, but missing details like authentication requirements or rate limits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, each carrying essential information. No redundancy or filler; efficient and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, the description adequately outlines return fields (views, likes, etc.) and mentions credit cost. Minor gap: does not specify if pagination applies or what 'recent' means in terms of time range.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema covers the single parameter (channelId) fully with a clear description. The tool description adds no further parameter meaning beyond 'recent content' context. With 100% schema coverage, baseline score 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it retrieves a YouTube creator's recent content (videos and shorts) with per-item engagement metrics like views, likes, comments, length, etc. This distinguishes it from siblings like get_youtube_performance (aggregate) and search_youtube_content (cross-creator search).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains what it returns but does not provide explicit guidance on when to use this tool versus alternatives. It mentions filtering options and metric exclusions but lacks direct comparison to sibling tools.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_youtube_performanceAInspect

Get a YouTube creator's engagement metrics. Returns four sibling objects: videosPerformanceRecent + shortsPerformanceRecent (R20: last 20 of each) and videosPerformanceAll + shortsPerformanceAll (up to 800). Each has avg/median/min/max/percentile25/percentile75/iqr for likes/comments/views, plus an engagement block with (L+C+V)/subscribers and consistencyScore (0–100; bands: high 81–100, moderate 51–80, low 0–50; requires ≥6 content pieces). ranking block carries global/country/language percentiles. recentVideosGrowth.g7/g30/g90 shows engagement-rate trend. contentCountByDays.7d/30d/90d shows posting cadence. Costs 2 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
channelIdYesYouTube channel ID (the immutable UC… form, e.g. "UCX6OQ3DkcsbYNE6H8uQQuVA"). "@handle", "/c/vanity", and "/user/legacy" URLs are NOT accepted here — resolve them to a UC channelId first.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It discloses the credit cost (2 credits) and the data structure. However, it does not mention rate limits, authentication requirements, or potential side effects. For a read-only tool, the cost disclosure is useful, but other behavioral aspects are missing.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is front-loaded with the main purpose and then details the return structure efficiently. It is comprehensive but not overly verbose, with each sentence providing distinct information. The use of parentheses for the consistency score bands and growth metrics adds clarity without clutter.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description must explain the return values thoroughly. It covers all major components: four sibling objects, statistics, engagement block, ranking, growth trends, and posting cadence. This is sufficient for an agent to understand the tool's output and differentiate it from other performance-related tools.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a single parameter (channelId) that has a description. The description reinforces the format requirement (UC… form) but does not add new semantic meaning beyond the schema. Baseline 3 is appropriate as schema already documents the parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Get a YouTube creator's engagement metrics.' It details the specific return objects (videosPerformanceRecent, shortsPerformanceRecent, etc.) and metrics, distinguishing it from sibling tools like get_youtube_performance_history which likely focuses on historical data. The verb 'Get' and the resource 'engagement metrics' are specific and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description lacks explicit guidance on when to use this tool versus alternatives. It mentions the credit cost but does not specify prerequisites, exclusion criteria, or compare with sibling tools (e.g., when to use get_youtube_performance_history instead). The usage context is implied but not clearly stated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_youtube_performance_historyAInspect

Get daily metric snapshots (subscribers, total content count, all-time performance) for a YouTube creator. Returns the histories array of timestamped snapshots over the past N days. Costs 3 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
channelIdYesYouTube channel ID (the immutable UC… form, e.g. "UCX6OQ3DkcsbYNE6H8uQQuVA"). "@handle", "/c/vanity", and "/user/legacy" URLs are NOT accepted here — resolve them to a UC channelId first.
pastDayRangeYesHow many past days of daily snapshots to return. String integer, 1–365.

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose all behavioral traits. It states the cost (3 credits) and that it returns an array of timestamped snapshots. However, it does not mention side effects (none expected), rate limits, or authorization requirements, leaving gaps for a tool that credits cost.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three concise sentences, front-loaded with purpose, and includes essential details (metrics returned, array structure, cost). No redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema is provided, so the description should fully explain the return format. It mentions the 'histories' array but does not detail the structure of each snapshot (e.g., field names, types). Metrics are listed but not mapped to fields, leaving ambiguity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Both parameters are fully described in the schema (100% coverage). The description adds no new parameter meaning beyond the schema's detailed notes (e.g., channelId format restrictions). Baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves daily metric snapshots for a YouTube creator, specifying subscribers, total content count, and all-time performance. It distinguishes from sibling tools like get_youtube_performance (likely current data) and get_youtube_audience (audience-specific) by focusing on historical time series.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for historical performance data over N days but lacks explicit guidance on when to use over alternatives. No mention of prerequisites (e.g., valid channelId) or when not to use (e.g., if only current data needed).

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_youtube_profileAInspect

Get a YouTube creator's profile: display name, subscriber count, description, isVerified, country (ISO 3166-1 alpha-3), main language, linked socials, channel-level hashtags, YouTube native channel categories, AI-classified topics (coarse) and niches (granular), subscriberGrowth.g7/g30/g90 trend deltas, relatedCreators UC IDs for discovery, and sponsored videoPrice + shortsPrice blocks with low/raw/high CPM and dollar bands (YouTube-only — IG/TT do not return pricing). Use list_youtube_topics / list_youtube_niches to resolve topic/niche IDs to human names. Costs 2 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
channelIdYesYouTube channel ID (the immutable UC… form, e.g. "UCX6OQ3DkcsbYNE6H8uQQuVA"). "@handle", "/c/vanity", and "/user/legacy" URLs are NOT accepted here — resolve them to a UC channelId first.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must disclose behavior fully. It mentions the cost of 2 credits, outlines what data is returned (including specific fields), and clarifies that certain fields are platform-specific. It does not mention side effects, prerequisites, or potential errors, but lacks any contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is detailed but efficient given the complexity of the return data. It front-loads the main purpose and then lists fields concisely. The list is somewhat long but each item is necessary to convey the scope of the profile data. No unnecessary filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Since there is no output schema, the description fully explains what data is returned, including nested fields like subscriberGrowth and pricing blocks. It also references related tools for resolving IDs and notes credit cost. For a single-parameter tool, this is complete and self-contained.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 100% schema description coverage, the parameter already has a description explaining the format. The tool description adds substantial context: it specifies the required UC… form, provides an example, and explicitly warns against using @handle, /c/vanity, or /user/legacy URLs, which is valuable beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Get a YouTube creator's profile:' followed by a comprehensive list of returned fields. The verb ('get') and resource ('youtube profile') are clear, and the tool is distinct from sibling tools like get_youtube_audience which focus on different aspects.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear guidance on when to use the tool (to retrieve profile data) and instructs to use list_youtube_topics/list_youtube_niches for resolving topic/niche IDs. It also notes that pricing data is YouTube-only, implying not to use it for Instagram/TikTok. However, it does not explicitly contrast with siblings like get_youtube_sponsorship that may share some fields.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_youtube_sponsorshipAInspect

Get a YouTube creator's sponsored content grouped by brand. Returns sponsorList: [{ brandName, brandId, brandIgIds, sponsoredVideos, sponsoredVideosPerformance }]. brandIgIds are the brand's Instagram handles — useful to pivot from a sponsored creator back to the brand's own IG profile. sponsoredVideos carries per-item engagement (same shape as content-detail). CAVEAT: only scans the most recent ~20–30 posts AND only detects brands already indexed in CreatorDB — an empty sponsorList is NOT proof of no sponsorships. Costs 5 credits.

ParametersJSON Schema
NameRequiredDescriptionDefault
channelIdYesYouTube channel ID (the immutable UC… form, e.g. "UCX6OQ3DkcsbYNE6H8uQQuVA"). "@handle", "/c/vanity", and "/user/legacy" URLs are NOT accepted here — resolve them to a UC channelId first.

TDQS

A4.5/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, but the description covers limitations (only recent posts, only detected brands), cost, and return shape. It lacks mention of authorization requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is slightly long but all sentences add value. It is front-loaded with purpose, then details, then caveats, making it efficient despite length.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given only 1 parameter, no output schema, and no annotations, the description covers all necessary aspects: input requirements, output structure, caveats, and cost. It is fully complete for correct tool usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema coverage is 100% and the description adds crucial meaning beyond the schema, specifying the exact format of channelId (UC… form) and what is not accepted.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'Get' and the resource 'YouTube creator's sponsored content grouped by brand'. It specifies the return structure and caveats, and the tool name distinguishes it from siblings by platform.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear context on when to use (for YouTube sponsorship data) and includes caveats about scope and cost, but does not explicitly contrast with alternative tools like get_instagram_sponsorship.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_youtube_subtitles_downloadAInspect

Download the subtitle track for a specific YouTube video. Per-video — pass videoId, not channelId. Costs 3 credits per download.

ParametersJSON Schema
NameRequiredDescriptionDefault
videoIdYesYouTube video ID (the v= value in a watch URL)
languageNoSubtitle language code (ISO 639-3, e.g. "eng", "jpn"). Defaults to the primary track.

TDQS

A3.7/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided. The description discloses the credit cost (3 credits) and implies a read operation, but lacks details on authentication requirements, rate limits, or error behavior when subtitles are unavailable. It provides some value beyond annotations but is not fully transparent.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two concise sentences: the first states the purpose, the second provides a critical usage constraint and cost. No unnecessary words, well front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema, but the description does not hint at the output format (e.g., SRT, VTT). It also omits error cases. However, it covers key usage constraints and cost, making it moderately complete for a simple tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, with both parameters (videoId and language) fully described in the schema. The description adds no additional parameter meaning, so the baseline score of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (download subtitle track), the resource (specific YouTube video), and distinguishes itself from sibling tools like get_youtube_subtitles_meta by specifying 'Download' vs 'Meta', and explicitly says 'pass videoId, not channelId' to avoid channel-level confusion.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides context that it is per-video with a videoId, and mentions a credit cost, but does not specify when to use this tool versus alternatives like get_youtube_subtitles_meta. No explicit when-not-to-use guidance is given.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_youtube_subtitles_metaAInspect

List available subtitle tracks for a SINGLE YouTube video: language codes, auto-generated vs human-uploaded. Per-video, not per-channel — pass the videoId of one video at a time. Use this before calling get_youtube_subtitles_download to know what languages exist. Costs 1 credit.

ParametersJSON Schema
NameRequiredDescriptionDefault
videoIdYesYouTube video ID (the v= value in a watch URL)

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided. The description discloses a cost of 1 credit but does not mention rate limits, authentication needs, or other behavioral traits. Adequate for a simple read operation.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four sentences with no waste. Purpose is stated first, followed by constraints, usage hint, and cost. Well-structured and efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given one parameter, no output schema, and simple functionality, the description adequately explains what the tool returns (language codes, auto vs human). References sibling tool for download. No gaps for this complexity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% for the single parameter videoId, which includes the YouTube video ID explanation. The description adds context about single video usage but does not enhance semantic detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists available subtitle tracks for a single YouTube video, including language codes and type (auto vs human). It differentiates from siblings by emphasizing per-video usage and relation to get_youtube_subtitles_download.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly instructs to use before get_youtube_subtitles_download and notes per-video, not per-channel. Does not state when not to use, but context is clear for a listing tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_instagram_nichesAInspect

List the full Instagram NICHE taxonomy used by CreatorDB — every available niche with channelCount per niche (the response is large: ~10K+ entries). NICHES are granular subcategories (e.g. "love/All", "fashion/All"). To see which niches a specific creator is classified under, use get_instagram_profile and read the niches field. Per-platform: IG/YT/TT each have their own niche taxonomy — they are not interchangeable. Instagram does NOT have a "topics" taxonomy (that is YouTube-only). Takes no parameters. Costs 1 credit.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses no parameters, costs 1 credit, large response (~10K+ entries), and granular subcategory format. No contradictions.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Four sentences with dense information, no redundancy. Front-loaded with main purpose. Could be slightly more structured but still concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, no annotations, and zero parameters, the description fully explains the tool's behavior, cost, response size, and relationship to other tools. Complete for its simplicity.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Input schema has zero parameters; schema coverage is 100% trivially. Description explicitly states 'Takes no parameters', which adds confirmation but no extra meaning beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'List the full Instagram NICHE taxonomy' with specific verb and resource. It distinguishes from siblings by noting per-platform taxonomies are not interchangeable and mentions no 'topics' taxonomy for Instagram.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly tells when to use (to see all niches) and when not (use get_instagram_profile for a specific creator's niches). Also warns about response size and clarifies Instagram vs YouTube taxonomy.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_sponsorsAInspect

Paginated directory of every brand indexed in CreatorDB (10K+ brands). Returns brandId, name, logo, industries, country, sponsoringPlatforms (TitleCase strings: "YouTube", "Instagram"), totalSponsoredContent. Use search_sponsors when you need filtering; this is for browsing the full catalog. Costs 1 credit per page.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageSizeNoResults per page (max 100).
offsetNoNumber of records to skip for pagination.
sortByNoSort field.name
descNoSort descending (true) or ascending (false).

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses pagination, credit cost, and the output fields. Though no annotations exist, the description implies a read-only operation without explicitly stating so, which is a minor gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences cover purpose, output, alternative, and cost. No wasted words, front-loaded with key information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Describes returned fields, pagination mechanics, and sorting options. Lacks details on field interpretation (e.g., sponsoringPlatforms format) but overall adequate for a list tool with well-documented parameters.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with good parameter descriptions. The description does not add additional meaning beyond what the schema provides, so baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool lists every brand in CreatorDB with specific fields, and distinguishes from search_sponsors for filtered browsing. The verb 'list' and resource 'sponsors' are precise.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says to use search_sponsors when filtering is needed and that this tool is for browsing the full catalog. Also mentions credit cost per page, guiding efficient use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_tiktok_nichesAInspect

List the full TikTok NICHE taxonomy used by CreatorDB — every available niche with channelCount per niche (the response is large: ~10K+ entries). NICHES are granular subcategories (e.g. "Capcut/All", "Dance/All"). To see which niches a specific creator is classified under, use get_tiktok_profile and read the niches field. Per-platform: TT/YT/IG each have their own niche taxonomy — they are not interchangeable. TikTok does NOT have a "topics" taxonomy (that is YouTube-only) and does NOT have a per-brand sponsorship endpoint. Takes no parameters. Costs 1 credit.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully discloses behavioral traits: large response (~10K+ entries), credits cost, no parameters, and per-platform taxonomy distinctions. Also clarifies what TikTok does not have, preventing misuse.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense and informative but slightly long as a single paragraph. Every sentence earns its place, but a structured format (e.g., bullet points) could improve scannability. Still concise overall.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and no parameters, the description covers all necessary aspects: purpose, usage, behavioral traits, and differentiators. Fully complete for a list endpoint.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters, so baseline 4. Description adds value by explaining the behavior and constraints, even though schema provides full coverage (no params).

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it lists the full TikTok niche taxonomy with channel counts, distinguishes from sibling tools like list_youtube_niches by specifying per-platform taxonomies, and clarifies TikTok does not have 'topics'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear context: to see a creator's niches use get_tiktok_profile, warns about large response size, and mentions it costs 1 credit. Does not explicitly list when not to use but given alternatives, it is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_youtube_nichesAInspect

List the full YouTube NICHE taxonomy used by CreatorDB — every available niche (14000+ entries) with channelCount per niche. NICHES are granular subcategories (e.g. "Vlog/People Blogs", "ASMR/People Blogs"). To see which niches a specific creator is classified under, use get_youtube_profile and read the niches field. Per-platform: YT/IG/TT each have their own niche taxonomy — they are not interchangeable. Takes no parameters. Costs 1 credit.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. It discloses cost (1 credit) and no parameters, but does not specify response structure or pagination. However, for a simple list tool, this is adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Highly concise; every sentence earns its place. The purpose is front-loaded, with details and guidance following efficiently.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a zero-parameter tool with no output schema, the description is complete. It covers what the tool does, what data it returns, when to use alternatives, and cost.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist, so baseline is 4. The description adds value by specifying output includes channelCount and gives examples, which enriches understanding beyond the empty schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it lists the full YouTube NICHE taxonomy with 14,000+ entries and channelCount per niche. It distinguishes from platform-specific sibling tools (list_instagram_niches, list_tiktok_niches) and provides examples.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly tells when to use (list all niches) and when not (to see a specific creator's niches, use get_youtube_profile). It also warns that per-platform taxonomies are not interchangeable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_youtube_topicsAInspect

List the full YouTube TOPIC taxonomy used by CreatorDB — every available topic (~470+ entries) with channelCount per topic. TOPICS are a coarse, evolving classification (e.g. "Academic", "Finance", "Health Education"). YOUTUBE-ONLY: Instagram and TikTok do not have a topic taxonomy. To see which topics a specific creator is classified under, use get_youtube_profile and read the topics field. Takes no parameters. Costs 1 credit.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.8/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

The description fully discloses behavior: lists ~470+ entries, includes channelCount, takes no parameters, costs 1 credit, and is YouTube-only. No annotations exist, so the description carries the full burden and meets it.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and informative, but could be slightly more structured. It front-loads the main action and details, with minimal waste.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool has no parameters and no output schema, the description provides complete context: what it returns, its limitations, and cost. No gaps remain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

No parameters exist; schema coverage is 100%. The description adds value by explicitly stating 'Takes no parameters' and explaining the output content (topics with channelCount), earning a baseline 4.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states it lists the full YouTube topic taxonomy with channelCount per topic, and distinguishes it from sibling tools like get_youtube_profile. It also notes that Instagram and TikTok lack a topic taxonomy, reinforcing its unique scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It clearly states when to use (to see full taxonomy) and when not to (for a specific creator's topics, use get_youtube_profile). It also mentions cost (1 credit) and platform specificity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_creators_nlsAInspect

Search for creators using natural language across YouTube, Instagram, and TikTok. The AI determines the platform from your query and converts it into structured filters. Response includes creatorList AND a platform field telling you which platform was chosen. Best for exploratory queries where you don't know exact filter names — fall back to search_youtube/instagram/tiktok when you need precise control over filters. Credit cost is dynamic (token-based, typically 1–10 credits).

ParametersJSON Schema
NameRequiredDescriptionDefault
descriptionYesNatural language search query, e.g. "Find US-based YouTube beauty creators with over 1M subscribers".

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided, so description carries full burden. Mentions dynamic credit cost (1-10 credits based on tokens) and that response includes a 'platform' field. Could be more explicit about read-only nature, but implied as a search tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Five sentences covering purpose, behavior, output, usage guidelines, and credit cost. Efficiently front-loaded with no redundant information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and one parameter, the description covers the essential aspects: input, output fields (creatorList, platform), dynamic credit cost, and fallback guidance. Could benefit from mentioning additional response fields, but sufficient for a simple tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% for the single parameter 'description', which already has a good description. The tool description adds context about AI processing but doesn't significantly enhance parameter understanding beyond schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool searches for creators using natural language across YouTube, Instagram, and TikTok. It distinguishes itself from sibling tools like search_youtube/instagram/tiktok by emphasizing its natural language interface and platform detection.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly says 'Best for exploratory queries where you don't know exact filter names — fall back to search_youtube/instagram/tiktok when you need precise control over filters.' Provides clear when-to-use and when-not-to-use guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_instagramAInspect

Search Instagram creators using structured filters. Costs 1 credit per 10 filters (max 10). Use totalFollowers (NOT totalSubscribers) for count thresholds. IG has niches but NOT topics (YouTube-only). Hashtag values need the "#" prefix to match the indexed hashTagsSearch field. Response: creatorList, totalResults, hasNextPage, nextOffset.

ParametersJSON Schema
NameRequiredDescriptionDefault
filtersYesSearch filters (max 10). Billed at 1 credit per 10 filters.
pageSizeNoResults per page (max 100).
offsetNoNumber of records to skip for pagination.
sortByNoField to sort by (e.g. totalSubscribers, totalFollowers, avgEngagementRate).
descNoSort descending (true) or ascending (false).

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully covers behavioral traits: cost model (1 credit per 10 filters, max 10), hashtag indexing, and the response structure. No contradictions exist, and all important operational details are disclosed.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with no superfluous sentences. It front-loads the core purpose and cost, then logically presents platform-specific constraints and response format. Every sentence conveys necessary information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite lacking an output schema, the description explicitly lists the response fields (creatorList, totalResults, hasNextPage, nextOffset). All critical aspects for invoking the tool are covered: pricing, pagination, field mappings, and search options. No gaps remain.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Despite 100% schema coverage, the description adds significant value beyond the schema: it explains platform-specific field differences (totalFollowers vs totalSubscribers, niches vs topics) and provides concrete examples for hashtag values. This context helps the agent avoid common errors.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool searches Instagram creators with structured filters. It distinguishes from sibling tools like search_tiktok and search_youtube by mentioning platform-specific fields (totalFollowers, niches, hashtags). The verb 'Search' and resource 'Instagram creators' are unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit guidance on when to use totalFollowers instead of totalSubscribers, mentions that Instagram uses 'niches' not 'topics', and explains the '#' prefix for hashtags. It implies the tool is for finding Instagram creators, but does not explicitly state when not to use it or list alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_instagram_contentAInspect

Search individual Instagram content (images, reels, slideshows) across CreatorDB's index. Different from search_instagram (which searches CREATORS) — this returns individual posts. Response includes contentList[] with contentId, contentType (slideshow|reel|video, sometimes null for legacy posts), description, thumbnail, url, publishTime (Unix-ms), isSponsored, partneredBrands[], likes/comments/engagementRate, hashtags, and a nested creator block. NO views and NO lengthSec (IG data model). Content-level filterable: postType, description (searches caption AND reel title together), hashtag, publishTime (integer "days ago" — semantic split with response field), likes, comments, engagement, isSponsored, partneredBrands, performanceLikes, performanceEngagement. Creator-level filters also supported. Costs 2 credits per page.

ParametersJSON Schema
NameRequiredDescriptionDefault
filtersYesContent filters (1–10).
pageSizeNoResults per page (max 100).
offsetNoNumber of records to skip for pagination.
sortByNoSort field.publishTime
descNoSort descending (true) or ascending (false).

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

In absence of annotations, description thoroughly discloses behavior: response structure, field details, missing fields (no views/lengthSec), credit cost (2 credits per page), and semantic nuances (publishTime integer as 'days ago').

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Well-structured single paragraph that front-loads purpose and differentiation. Packs substantial information but remains readable. Could be slightly more concise by breaking into sections.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema, but description covers all necessary context: response fields, filter capabilities, pagination, credit cost, data limitations. Complete for a search tool with complex filtering.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% but description adds significant extra meaning: lists filterable fields, explains sort options, clarifies publishTime semantic split, and notes credit cost. Goes well beyond schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Explicitly states it searches Instagram content (images, reels, slideshows) across CreatorDB's index, and clearly distinguishes from search_instagram which searches creators. Provides specific verb and resource.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Clearly differentiates from sibling tool search_instagram by stating it returns posts instead of creators. Implies when to use but lacks explicit 'when not to use' statements.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_sponsorsAInspect

Search the CreatorDB brand index using structured filters. Returns lean brand records (brandId, name, logo, industries, country). Costs 2 credits per page. Sponsor data covers YouTube and Instagram only — TikTok is not indexed for brands.

ParametersJSON Schema
NameRequiredDescriptionDefault
filtersNoBrand filters (max 10). Pass empty array to list unfiltered.
pageSizeNoResults per page (max 100).
offsetNoNumber of records to skip for pagination.
sortByNoSort field. One of: name, totalSponsoredContent, estimatedTotalSpend7d / 30d / 90d.
descNoSort descending (true) or ascending (false).

TDQS

A4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses the credit cost and data coverage, which are useful behavioral traits. However, it does not mention authentication requirements, rate limits, or behavior for empty results.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences long, each providing essential information: purpose and return fields, then cost and coverage. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The description explains the return fields, cost, and coverage, which is sufficient for a search tool with a well-documented input schema. However, without an output schema, it could mention pagination behavior or error cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The description does not add any parameter information beyond what the schema provides, so it neither improves nor detracts.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: 'Search the CreatorDB brand index using structured filters' and specifies the return fields. This distinguishes it from sibling tools that retrieve individual records (get_*) or search other content (e.g., search_creators_nls).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description notes the cost ('Costs 2 credits per page') and coverage limitations ('Sponsor data covers YouTube and Instagram only — TikTok is not indexed for brands'). This helps the agent understand when to use the tool, but it doesn't explicitly contrast with alternatives or state when not to use it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_tiktokAInspect

Search TikTok creators using structured filters. Costs 1 credit per 10 filters (max 10). Use totalFollowers (NOT totalSubscribers) for count thresholds. TT has niches but NOT topics (YouTube-only). Hashtag values need the "#" prefix. Note: TikTok does not expose a per-brand sponsorship endpoint, so hasSponsors-style filtering is coarser than on YT/IG. Response: creatorList, totalResults, hasNextPage, nextOffset.

ParametersJSON Schema
NameRequiredDescriptionDefault
filtersYesSearch filters (max 10). Billed at 1 credit per 10 filters.
pageSizeNoResults per page (max 100).
offsetNoNumber of records to skip for pagination.
sortByNoField to sort by (e.g. totalSubscribers, totalFollowers, avgEngagementRate).
descNoSort descending (true) or ascending (false).

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses cost, pagination with nextOffset, response shape (creatorList, totalResults, hasNextPage), and coarser sponsorship filtering. No annotations exist, so description carries full behavioral burden.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Single paragraph with dense, valuable info. Could be slightly better structured (e.g., bullet points) but is front-loaded with purpose and efficient in word count.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers cost, filter count, pagination, response fields, and platform differences. No output schema, but response fields are listed. Missing potential details like data freshness, but complete enough for selection.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but description adds meaningful guidance: 'Use totalFollowers (NOT totalSubscribers)' for count thresholds, 'Hashtag values need the "#" prefix.' These go beyond schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states 'Search TikTok creators using structured filters,' specifying the action and resource. It distinguishes from sibling tools by mentioning platform-specific fields like totalFollowers and niches vs topics, making it unique among search tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit guidelines: credit cost per 10 filters, max 10 filters, and platform-specific instructions (use totalFollowers, hashtag '#'). Lacks a direct contrast with search_creators_nls but offers clear context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_tiktok_contentAInspect

Search individual TikTok content (videos) across CreatorDB's index. Different from search_tiktok (which searches CREATORS) — this returns individual posts. Response includes contentList[] with contentId, description, thumbnail, url, publishTime (Unix-ms), lengthSec, plays/likes/comments/shares/engagementRate, hashtags, audioTitle, audioAuthor, and a nested creator block. NO contentType field. NO isSponsored / partneredBrands — TikTok brand-attribution is not implemented (native isAd flag exists on get_tiktok_content_detail only). Content-level filterable: description, hashtag, publishTime (integer "days ago"), plays, diggs (request name) / likes (response name), comments, shares, engagement, lengthSec, performanceDiggs, performanceEngagement. Creator-level filters also supported. Engagement formula = (likes+comments+shares)/followers. Costs 2 credits per page.

ParametersJSON Schema
NameRequiredDescriptionDefault
filtersYesContent filters (1–10).
pageSizeNoResults per page (max 100).
offsetNoNumber of records to skip for pagination.
sortByNoSort field.publishTime
descNoSort descending (true) or ascending (false).

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses response structure, missing fields (no contentType, no isSponsored), engagement formula, and brand-attribution limitations. Adds context beyond typical, though no annotations are present to rely on.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Dense single paragraph with front-loaded purpose; all sentences add value. Could benefit from bullet points but length is justified by complexity.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers essential aspects: what it returns, what it doesn't, filterable fields, sorting, cost. Lacks explicit pagination explanation but offset/pageSize are in schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Adds value beyond 100% schema coverage by listing filterable fields in natural language, clarifying request/response naming (diggs vs likes), and explaining engagement formula.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states it searches individual TikTok videos, distinguishes from sibling search_tiktok (creators), and specifies the resource as 'individual posts'.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly contrasts with search_tiktok for creators, lists filterable fields, notes cost per page. Could add explicit when-not-to-use scenarios but is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_youtubeAInspect

Search YouTube creators using structured filters. Costs 1 credit per 10 filters (max 10). Use totalSubscribers (NOT totalFollowers) for count thresholds. YT-specific filterable fields: topics (coarse ~400-theme taxonomy — IG/TT don't have it), niches (granular; also on IG/TT but derived separately). Response: creatorList, totalResults, hasNextPage, nextOffset — pass nextOffset as the next request's offset to paginate.

ParametersJSON Schema
NameRequiredDescriptionDefault
filtersYesSearch filters (max 10). Billed at 1 credit per 10 filters.
pageSizeNoResults per page (max 100).
offsetNoNumber of records to skip for pagination.
sortByNoField to sort by (e.g. totalSubscribers, totalFollowers, avgEngagementRate).
descNoSort descending (true) or ascending (false).

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It reveals credit cost, filter limits, platform-specific field usage (totalSubscribers vs totalFollowers), and pagination mechanics. It does not mention side effects (likely read-only) or authentication, but the behavioral traits are well covered for a search tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is four sentences, each dense with useful information: purpose, billing, platform-specific field guidance, and response pagination. No extraneous words. It is well front-loaded with the main purpose.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of the tool (5 parameters, no output schema), the description covers the essential points: what the tool does, how filtering works (including costs and field naming), and how to paginate. The output schema is absent, but the description lists the response fields and pagination mechanism. It does not cover error handling or edge cases, but it is adequate for typical usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds significant value beyond the schema: it explains the credit cost relation to filters, emphasizes using totalSubscribers over totalFollowers, and provides context about YouTube-specific fields (topics, niches) and pagination response structure. This extra information helps the agent use parameters correctly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool searches YouTube creators using structured filters. It distinguishes from sibling tools like search_instagram by highlighting YouTube-specific fields (topics, totalSubscribers vs totalFollowers) and explaining pagination. The verb 'search' and resource 'YouTube creators' are specific and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit billing context (1 credit per 10 filters, max 10) and warns to use totalSubscribers not totalFollowers for count thresholds. It explains YouTube-only fields and pagination response fields (creatorList, totalResults, hasNextPage, nextOffset) with instructions to pass nextOffset for pagination. While it doesn't explicitly state when not to use this tool, the platform context gives clear alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_youtube_contentAInspect

Search individual YouTube content (videos, shorts, streams) across CreatorDB's index. Different from search_youtube (which searches CREATORS) — this returns individual posts matching content-level filters. Response includes contentList[] with contentId, contentType (video|shorts|stream), title, description, thumbnail, url, publishTime (Unix-ms), lengthSec, isSponsored, partneredBrands[], views/likes/comments/engagementRate, hashtags, language, category, and a nested creator block. Plus totalResults, hasNextPage, nextOffset for pagination. Content-level filterable fields: postType, title, description (NOTE: description filter is currently deferred — returns 400), hashtag, publishTime (filter value is integer "days ago", not Unix-ms — semantic split with the response field), views, likes, comments, engagement, isSponsored, partneredBrands, lengthSec, language, category, performanceViews, performanceEngagement. Creator-level filters also supported (creatorDisplayName, country, contentTopics, contentNiches, audienceLocation, etc.). The 4-day fresh-content exclusion does NOT apply here. Costs 2 credits per page.

ParametersJSON Schema
NameRequiredDescriptionDefault
filtersYesContent filters (1–10).
pageSizeNoResults per page (max 100).
offsetNoNumber of records to skip for pagination.
sortByNoSort field.publishTime
descNoSort descending (true) or ascending (false).

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description fully carries behavioral disclosure. It details response structure, a deferred filter (returns 400), semantic nuance about publishTime filter value vs response field, and pagination fields. This provides rich behavioral transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but each sentence adds valuable information. It is well-structured: purpose, differentiation, response fields, filter fields, and additional notes. Slightly verbose but not wasteful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema and 5 parameters, the description thoroughly covers response format, filterable fields, pagination, and credit cost. The tool's complexity is well addressed, leaving no major gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but the description adds significant value: lists many filterable fields, notes a deferred filter, clarifies publishTime semantic split, and explains pagination parameters. This goes well beyond the schema's descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it searches individual YouTube content (videos, shorts, streams) and explicitly differentiates from sibling 'search_youtube' which searches creators. The verb 'search' and resource 'YouTube content' are specific and unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly distinguishes from search_youtube ('Different from search_youtube (which searches CREATORS)') and notes that the 4-day fresh-content exclusion does not apply here. While it doesn't explicitly state when not to use, the differentiation is strong and covers context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

submit_sponsorAInspect

Submit a brand for indexing. Returns submissionId + status ("accepted" / "processing" / "done" / "rejected") and existingBrandId if the brand was already indexed. Costs 1 credit on acceptance, 0 on duplicate (status=done) or rejection. Rate-limited to 100 submissions/day per API key (separate from the credit pool).

ParametersJSON Schema
NameRequiredDescriptionDefault
brandNameYesBrand name (1–100 chars).
brandUrlYesBrand website URL — must include http:// or https://.
competitorsNoOptional competitor brand names or URLs (max 10).
notesNoOptional free-form notes (≤500 chars).

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Without annotations, the description fully discloses behavioral traits: cost implications (1 credit on acceptance, 0 on duplicate/rejection) and rate limits (100/day per API key). It also details the return values and statuses. No contradictions with annotations (none provided).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences, front-loaded with the core purpose and return values, then adds cost and rate-limit details. Every sentence adds unique value with no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no output schema, the description provides essential return fields. It covers cost and rate limits. It could mention error handling or validation of inputs but is sufficient for a submission tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with each parameter described in the schema. The description does not add extra meaning beyond the schema; it only repeats the return values. Baseline 3 is appropriate as the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Submit a brand for indexing') and the resource (brand). It specifies the return values, and the sibling tools are all read-only queries, so this tool's distinct purpose is evident.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage for indexing new brands, and the sibling tools are all get/list/search operations, making the contextual choice clear. However, it does not explicitly state when not to use it or provide direct comparisons to alternatives.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 42 tool updatesv1.3.0
    • First observedget_api_usage
    • First observedget_instagram_audience
    • First observedget_instagram_contact
    • First observedget_instagram_content_detail
    • First observedget_instagram_performance
    • First observedget_instagram_performance_history
    • First observedget_instagram_profile
    • First observedget_instagram_sponsorship
    • First observedget_sponsor_audience
    • First observedget_sponsor_creators
    • First observedget_sponsor_information
    • First observedget_sponsor_performance
    • First observedget_sponsor_summary
    • First observedget_tiktok_audience
    • First observedget_tiktok_contact
    • First observedget_tiktok_content_detail
    • First observedget_tiktok_performance
    • First observedget_tiktok_performance_history
    • First observedget_tiktok_profile
    • First observedget_youtube_audience
    • First observedget_youtube_contact
    • First observedget_youtube_content_detail
    • First observedget_youtube_performance
    • First observedget_youtube_performance_history
    • First observedget_youtube_profile
    • First observedget_youtube_sponsorship
    • First observedget_youtube_subtitles_download
    • First observedget_youtube_subtitles_meta
    • First observedlist_instagram_niches
    • First observedlist_sponsors
    • First observedlist_tiktok_niches
    • First observedlist_youtube_niches
    • First observedlist_youtube_topics
    • First observedsearch_creators_nls
    • First observedsearch_instagram
    • First observedsearch_instagram_content
    • First observedsearch_sponsors
    • First observedsearch_tiktok
    • First observedsearch_tiktok_content
    • First observedsearch_youtube
    • First observedsearch_youtube_content
    • First observedsubmit_sponsor

TDQS

A4.1/5.0
Disambiguation5/5

Each tool targets a distinct platform, resource, and action. The three platforms (YouTube, Instagram, TikTok) are clearly separated, and within each, tools follow a consistent pattern (profile, audience, contact, content, performance, etc.). Sponsor tools are distinct. There is no ambiguity between tools.

Naming Consistency5/5

All tool names use a consistent verb_noun pattern with snake_case (e.g., get_instagram_profile, search_youtube_content, list_sponsors). The pattern is predictable and uniform across the entire set.

Tool Count4/5

With 42 tools, the count is high but justified by the multi-platform scope (three platforms plus sponsor data). Each tool serves a specific purpose, though the set could be slightly reduced by consolidating some platform-specific patterns. Overall, it's reasonable for a comprehensive creator marketing API.

Completeness5/5

The tool surface covers the full lifecycle of creator discovery and analysis: profiles, audiences, contacts, content, performance, history, sponsors, and searches. Taxonomy lists and sponsor submission are also included. There are no obvious gaps for the stated purpose of a creator database.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides comprehensive influencer marketing data from Instagram, YouTube, and TikTok via the CreatorDB Headless API V3. It enables advanced creator search, profile analysis, and access to performance metrics and audience demographics.
    -
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI-native creator discovery for influencer marketing, including creator search, lookalikes, profile lookup, and Instagram post transcript analysis.
    14
    75
    1
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables Claude to pull exact YouTube creator stats (subscribers, views, engagement) and discover new creators, then write them into a Notion Influencers roster.
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides AI applications with real-time, evidence-backed context on creators, audiences, brands, trends, and sponsorships, including breakout topic search and browsing tools.
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/CreatorDB/creatordb-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server