benchmark_video
Benchmark a single YouTube video against its niche.
MCP
benchmark_video
3 credits
REST equivalent: POST /v1/benchmark/video
REST vs MCP response shape
MCP tool responses include two extra fields that the REST endpoint does not return:
score_id— an immutable identifier for the call, useful for client-side correlation and replay.credits_remaining— your balance after this call. REST clients fetch the balance viaGET /v1/usage/.
benchmark_channel and benchmark_video additionally wrap the response body under a payload field, so the envelope is {score_id, credits_remaining, payload}. The other tools merge the fields at the top level.
This is intentional. Tool-using agents typically want both pieces of state inline; HTTP clients usually do not.
Parameters
| Parameter | Type | Description |
|---|---|---|
|
url
required
|
url (≤1024 chars) | Public YouTube video URL. Accepts watch URLs, youtu.be, /shorts/, /embed/. |
Example call
Tool invocation via an MCP client (JSON arguments):
{
"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
}
Example response
{
"score_id": "01J7K8...",
"credits_remaining": 321,
"payload": {
"video": {
"video_id": "dQw4w9WgXcQ",
"title": "Example video",
"channel_title": "Example channel",
"published_at": "2025-11-04T12:00:00Z",
"view_count": 142000,
"like_count": 5800,
"comment_count": 312,
"engagement_percentiles": {
"view_to_sub_ratio": 62,
"like_to_view_ratio": 71,
"comment_to_view_ratio": 48,
"overall": 60
},
"title_patterns": {
"length_chars": 38,
"has_question": false,
"has_number": true,
"has_emoji": false,
"fits_niche_patterns": true
}
},
"niche": {
"slug": "tech-tutorials",
"name": "Tech Tutorials",
"match_strength": "moderate"
}
}
}
Client setup
See Client setup for Claude Desktop and Cursor configuration. Once configured, ask your client to call benchmark_video.