tiktokporn
Server Details
Search adult porn video (NSFW, 18+): nude clips, creators, hashtags. Read-only, no API key.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 7 tools
Each tool targets a distinct resource or action: feed/trending return different video collections, get_user/get_video fetch single entities, list_creators/list_tags enumerate catalogs, and search_content queries across all. No two tools overlap in purpose.
Tool names follow a predictable pattern: get_ for specific resources/streams, list_ for directory-style enumerations, and search_ for querying. This is a clear and consistent convention.
Seven tools is well within the ideal range and covers the server's read-only content discovery scope without redundancy. Each tool earns its place.
The set covers the core browsing workflows: discovering videos via feed/trending/search, exploring creators, viewing individual profiles and videos, and browsing tags. There are no obvious dead ends or gaps for this domain.
Available Tools
7 toolsget_feedBInspect
Get a sample of the newest public adult videos on tik-tok.porn (max 20).
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (1-based) | |
| cursor | No | Opaque pagination cursor from a prior call | |
| per_page | No | Items per page (max 20) |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | No | |
| videos | No | |
| has_more | No | |
| next_cursor | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It does disclose that this returns only a sample and is capped at 20 items, which is useful. It does not mention pagination behavior, authentication requirements, or content-safety caveats, but for a read-only feed these are relatively minor gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with no filler; the core action is front-loaded and the item cap is stated parenthetically. Every word earns its place, and there is no redundant elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The output schema and input schema cover return values and parameter semantics, while the description clarifies the feed's scope (newest, public, adult, sample, max 20). The main missing element is an explicit note on how page and cursor relate, but the opaque-cursor description in the schema mitigates that concern.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already documents all three parameters with descriptions at 100% coverage, so the baseline is 3. The description only restates the per_page maximum ('max 20') and adds no new meaning about page or cursor semantics that is not already in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Get') and names the resource ('newest public adult videos') on a particular site, making the function clear. It implicitly distinguishes from the sibling get_trending by emphasizing 'newest' versus trending, but does not explicitly contrast with any sibling, so it falls short of full differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is given about when to use get_feed versus alternatives like get_trending or search_content. There are no exclusions, alternative routing hints, or contextual conditions beyond the basic action, leaving the agent to infer the appropriate use case.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_trendingAInspect
Get trending adult videos on tik-tok.porn by engagement for a time window (max 20).
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (1-based) | |
| cursor | No | Opaque pagination cursor from a prior call | |
| window | No | Time window | |
| per_page | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | No | |
| videos | No | |
| has_more | No | |
| next_cursor | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the burden. It discloses the engagement-based ordering and the 20-result cap, but it does not describe pagination semantics, result direction, or any access constraints. 'Get' implies a read, but the behavioral profile is thin.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence with no filler; it front-loads the action and resource, states the ordering criterion, and places the limit at the end. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read-only list tool with an output schema and a well-described parameter schema, this is almost complete: it states purpose, ordering, and cap. It only lacks explicit alternative routing and deeper behavioral details, which are covered in other dimensions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description adds meaning beyond the schema by specifying the ordering key ('by engagement') and the 20-item cap, and it ties the window parameter to time windows. Page and cursor semantics remain in the schema, which already documents them, so the 75% coverage is adequately supplemented.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names the exact operation ('Get'), the resource ('trending adult videos on tik-tok.porn'), the ordering principle ('by engagement'), and a constraint ('time window', 'max 20'). This provides enough specificity to distinguish it from generic feed/search siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No alternatives or when-not-to-use conditions are stated; there is no mention of get_feed or search_content. The usage context is only implied: use when trending videos are wanted.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_userAInspect
Fetch a tik-tok.porn creator's public profile plus their newest videos.
| Name | Required | Description | Default |
|---|---|---|---|
| username | Yes | Creator username (without @) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full transparency burden. It only states that it fetches public data, but does not disclose potential behaviors like error handling for missing usernames, pagination of videos, rate limits, or auth requirements. The description is too thin for full behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the main verb and resource. Every word earns its place with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's low complexity (one parameter, no output schema, no annotations), the description is reasonably complete: it states the action and the high-level return content (profile and videos). However, it could note whether the 'newest videos' are limited in count or paginated, which would add completeness. Still, for a simple read tool, it covers the essential context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 'username' parameter, so the baseline is 3. The description adds no additional parameter semantics beyond the schema, which already clearly states 'Creator username (without @)'.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description specifies a clear verb ('Fetch') and resource ('a creator's public profile plus their newest videos'). It distinguishes from sibling tools like get_video (which fetches a video) and list_creators (which lists creators), making the tool's unique purpose obvious.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage: when you need a single creator's profile and recent videos, use this tool. However, it does not explicitly state when to prefer alternatives or provide exclusions (e.g., 'for list of creators, use list_creators'). The guideline is implied, not explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_videoAInspect
Fetch metadata for one tik-tok.porn video by hash. Returns page_url to link to (no direct media URL).
| Name | Required | Description | Default |
|---|---|---|---|
| hash | Yes | Video hash (8+ hex chars) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It transparently discloses that the tool returns a page_url and no direct media URL, which is a key behavioral trait. It does not mention auth or rate limits, but for a simple fetch this is reasonable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence with a helpful parenthetical. It is front-loaded and contains no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (one parameter, no output schema), the description adequately covers purpose, input, and a key output limitation. It might be enhanced by listing the metadata fields returned, but this is not essential.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents the hash parameter. The description only says 'by hash', adding little beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool fetches metadata for a specific video by hash, which is a specific verb+resource. It distinguishes from sibling tools like get_feed and get_trending by targeting a single video identified by hash.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when you have a video hash, but it does not explicitly compare to alternatives or state when not to use it. The context is clear but exclusionary guidance is absent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_creatorsCInspect
Browse the public tik-tok.porn creator directory by follower count (max 20).
| Name | Required | Description | Default |
|---|---|---|---|
| page | No | Page number (1-based) | |
| cursor | No | Opaque pagination cursor from a prior call | |
| per_page | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits but only mentions 'public' and 'max 20'. It doesn't explain pagination mechanics, result ordering, rate limits, or return structure. This leaves significant behavioral unknowns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no wasted words. However, its brevity comes at the cost of critical information, making it efficient but not necessarily appropriate.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema or annotations are present, and the description doesn't specify the return format, pagination details, or ordering. For a list tool with 3 parameters and sibling tools, this is insufficient context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers page and cursor descriptions, but per_page has no description. The description's 'max 20' simply repeats the schema's per_page maximum, adding no new meaning. No additional detail on parameter usage is provided.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it browses the public creator directory, using a specific verb and resource. It distinguishes from sibling tools like get_user and search_content by focusing on the directory list. However, 'by follower count' is somewhat ambiguous as to whether it sorts or filters.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like search_content or get_user. The description gives context but no exclusions or explicit alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_tagsAInspect
List the most popular adult hashtag categories on tik-tok.porn by video count (max 20).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of behavior disclosure. It conveys that the operation is a read-only list, that results are ordered by video count, and that at most 20 items are returned. Minor behavioral details such as authentication or exact response shape are not mentioned, but for a zero-parameter listing tool this is reasonably transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with no filler: it opens with the action, states the resource, specifies the ordering, and gives the result limit. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is complete enough for selection and invocation of a zero-parameter, read-only tool: it states what is listed, the domain, the ranking metric, and the maximum result count. It is slightly light on the exact output shape (e.g., category strings only vs. categories with counts), but no output schema exists and this does not block correct use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has zero parameters, so there is nothing to document; per the baseline for no-parameter tools this is a 4. The description's mention of 'by video count' adds context about how results are ordered, but no parameter semantics are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb ('List'), a concrete resource ('adult hashtag categories on tik-tok.porn'), and a ranking criterion ('by video count') with a cap ('max 20'). This clearly differentiates it from sibling tools like get_feed, get_trending, and list_creators.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The intended use case is immediately clear: when an agent needs the top adult hashtag categories by video count. It does not explicitly contrast with alternatives or state exclusions, but no sibling has an overlapping purpose, so the context is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_contentAInspect
Search tik-tok.porn for adult videos (porn, NSFW, nude, 18+), hashtags and creators by keyword.
| Name | Required | Description | Default |
|---|---|---|---|
| q | Yes | Search query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral burden. It discloses that the tool searches an adult-content domain and targets multiple content types, which is useful. It does not mention pagination, result ordering, or output shape, but the core read-only search behavior is clear enough for basic use.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that immediately states the action, source, content types, and search method. There is no filler or redundant repetition, and every word contributes meaning.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter search tool, the description is adequate for selecting and invoking the tool. The absence of an output schema and lack of detail about result structure or pagination leave minor gaps, but no essential invocation information is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and the only parameter q is already documented as 'Search query'. The description's phrase 'by keyword' adds minimal semantic value, 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Search'), names the resource ('tik-tok.porn'), and defines the scope ('adult videos, hashtags and creators') and method ('by keyword'). This clearly distinguishes it from sibling browse/list tools like get_feed, get_trending, list_creators, and list_tags.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when a user wants keyword-based discovery across videos, hashtags, or creators. However, it does not explicitly state when to prefer this over the sibling browsing tools, nor does it mention any exclusions or alternative conditions.
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.
7 tool updates
- First observed
get_feed - First observed
get_trending - First observed
get_user - First observed
get_video - First observed
list_creators - First observed
list_tags - First observed
search_content
Related MCP Connectors
Search adult porn video (NSFW, 18+): nude clips, creators, hashtags. Read-only, no API key.
Search adult porn video (NSFW, 18+): nude clips, creators, hashtags. Read-only, no API key.
Search, video, channel, playlist, comments, trending and related items from YouTube. Hosted by the p
Video analytics for TikTok, Instagram, and YouTube. Track, analyze, and discover content.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides a robust interface for searching TikTok videos by hashtags and retrieving trending content, with anti-detection measures and comprehensive metadata extraction.76MIT
- AlicenseNot gradedqualityBmaintenanceRead-only Douyin / 抖音 MCP by SocialDataX for hot search, work search/details, comments and replies, creator profiles, creator works, and creator series.38 npm1MIT
- AlicenseNot gradedqualityDmaintenanceSearch archived YouTube videos — including deleted, private, or region-blocked content. 1B+ videos indexed since 2005, with AI summaries, subtitles, and transcripts.34 npm1MIT
- AlicenseNot gradedqualityCmaintenanceAgent-first video-data API + MCP across 6 platforms (YouTube/Shorts, TikTok, Reddit, Instagram, Pinterest): metadata, insights, Whisper transcript, and parametric frames. Pay-per-call via x402 (USDC) or Stripe.6 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.