nuditok
Server Details
Search adult porn video (NSFW, 18+): nude clips, creators, hashtags. Read-only, no API key.
- Status
- Healthy
- Uptime
- 81.4% over 41 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 7 tools
Each tool targets a distinct retrieval mode: feed, trending, user profile, single video, creator directory, tags, and keyword search. Even the list-returning tools are clearly separated by their filters and use cases.
All tool names follow a consistent snake_case verb_noun pattern: get_ for direct lookups and feeds, list_ for directory-style browsing, and search_ for keyword queries. The convention is predictable and easy to follow.
Seven tools is well-scoped for a read-only discovery platform. The count is not bloated, and each tool makes sense as part of a minimal but functional browsing API.
Core discovery workflows are covered: browsing new and trending videos, viewing user profiles and video metadata, listing creators and tags, and searching. Minor gaps like a dedicated tag-to-video feed or related video endpoint exist, but agents can work around them.
Available Tools
7 toolsget_feedAInspect
Get a sample of the newest public adult videos on NudiTok (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?
No annotations are present, so the description carries the burden. It does indicate this is a read operation that returns a limited sample of public items, which is useful. However, it does not disclose pagination behavior, result ordering guarantees, authentication needs, or whether cursor and page are mutually exclusive.
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 no filler. The key facts—newest, public, adult videos, sample, max 20—are all front-loaded and easy to parse.
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 covers return values, and the input schema covers parameters, but the description omits how page and cursor relate for pagination. An agent could reasonably be unsure whether to supply one, the other, or both, especially given both are optional.
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 all three parameters. The description adds only the 'max 20' constraint, which is already present in per_page's schema, so it provides no additional parameter meaning.
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 identifies the operation as getting a feed of the newest public adult videos on NudiTok, with a maximum of 20 items. This is a specific verb and resource, but it does not explicitly differentiate from siblings like get_trending or search_content.
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 the tool is for browsing the newest public videos, but it gives no explicit when-to-use guidance or exclusions. It does not mention alternatives such as get_trending for popular videos or search_content for filtered lookup.
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 NudiTok 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?
With no annotations provided, the description carries the disclosure burden. It does convey that the result is limited to 20 items and that ranking is by engagement, which is useful. However, it does not disclose pagination behavior, whether anything is filtered by default, or any authentication/access considerations. 'Get' implies read-only but this is 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the verb and resource, then adds the key qualifiers. Every phrase earns its place: 'trending', 'adult videos', 'by engagement', 'time window', and 'max 20'.
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 output schema exists and the tool is a straightforward listing operation with no required parameters, the description is mostly complete. The main omission is any mention of how pagination should be used, though page and cursor are documented in the schema. Overall, an agent has enough information to call the tool correctly.
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 75%, so the schema already documents most parameters. The description adds 'max 20', but that only restates the per_page maximum already present in the schema. The phrase 'time window' maps to the window parameter but does not add new meaning beyond the enum values.
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 states a specific verb ('Get'), a resource ('trending adult videos on NudiTok'), and the selection criterion ('by engagement for a time window'). It is clear and distinct from sibling tools like get_user or get_video, though it does not explicitly name or contrast with get_feed or search_content.
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 the right context: use this tool when you need trending videos ranked by engagement within a time window. It does not provide explicit exclusions or alternatives, but the context is clear enough for an agent to choose between this and the listed siblings.
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 NudiTok 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, the description carries the full burden. It usefully discloses that the profile is public and that videos are the newest, which implies a read-only operation, but it does not mention limits, pagination, ordering details, or error behavior.
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 concise sentence that front-loads the action and outcome with no filler or redundant details. 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 one-parameter read-only tool, the description adequately states both input intent and returned content despite lacking an output schema. Minor gaps like exact response fields or video count limits prevent a perfect score.
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%: the only parameter, username, is already described as 'Creator username (without @)'. The tool description adds the NudiTok context but no additional parameter-level semantics, so the baseline of 3 applies.
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 ('Fetch') and names the resource ('NudiTok creator's public profile') as well as the returned content ('newest videos'). It clearly distinguishes this tool from siblings like get_video or list_creators even without reading their schemas.
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?
Usage is implied: use this when you need a creator's public profile and their recent videos. However, the description does not explicitly mention alternatives or situations when another tool should be preferred, so guidance is indirect 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_videoAInspect
Fetch metadata for one NudiTok 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 supplied, the description carries the behavioral burden. It meaningfully discloses the important output behavior: it returns a page_url link, not a direct media URL, which prevents the agent from expecting media content. It does not mention errors, auth, or rate limits, but those are less critical for a simple metadata fetch.
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?
Two short sentences with no filler. The first sentence states the purpose, and the second adds the essential output caveat about page_url versus direct media URL. 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 input side is fully covered by one documented required parameter. There is no output schema, but the description partially fills that gap by naming the key return value, page_url. It could describe the metadata fields or page_url format more explicitly, but nothing needed to invoke the tool correctly 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?
The input schema already documents `hash` as 'Video hash (8+ hex chars)' with 100% coverage, and the description only repeats 'by hash.' The description adds no new meaning beyond what the schema already provides, 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.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('Fetch metadata'), a concrete resource ('one NudiTok video'), and the lookup key ('by hash'). This clearly distinguishes it from sibling list/search tools such as get_feed, get_trending, and search_content.
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 phrase 'for one NudiTok video by hash' clearly establishes the condition for use: when the agent has a video hash and needs that video's metadata. It does not explicitly contrast with sibling tools, but the single-video-by-hash context is clear and effectively excludes list or search use cases.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_creatorsBInspect
Browse the public NudiTok 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 carries the behavioral burden. It discloses that the data is 'public' and that results are sorted by follower count with a 'max 20' cap, which suggests a read-only directory operation. However, it does not mention pagination behavior, whether the operation requires authentication, or what fields are returned.
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 single sentence is compact, front-loaded with the core purpose, and avoids wordiness. It earns its place by conveying resource, scope, ordering, and a limit, though it leaves behavioral details absent.
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 paginated list tool with three parameters and no output schema, the description is too sparse. It omits guidance on cursor usage, per_page semantics, response shape, and how the tool differs from search_content — all of which an agent would need to invoke it correctly.
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 coverage is 67%, with page and cursor documented in the schema. The description adds context by indicating follower-count ordering and a max of 20 results, which aligns with per_page's maximum. It does not add meaningful detail about how page, cursor, or per_page interact.
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 states a clear verb ('Browse'), a specific resource ('the public NudiTok creator directory'), and an ordering criterion ('by follower count'). It distinguishes this from the sibling tools by identifying the resource as a directory of creators, though it does not explicitly contrast it with search_content or get_user.
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 about when to use this tool versus alternatives such as search_content or get_user. The description implies a browsing use case but does not state exclusions, preferred scenarios, or relationships to sibling tools.
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 NudiTok 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, the description carries the full burden. It does disclose the list is limited to a maximum of 20 and sorted by video count, which is useful behavioral context. However, it does not describe the return format, whether results are strictly ordered descending, or whether any authentication/access constraints apply.
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 clear sentence with no filler. It front-loads the action and resource, then immediately provides the ordering and limit information.
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 parameterless list operation, the description is largely complete: it states what is listed, the ordering logic, and the maximum result count. There is no output schema, so a more explicit return format would help, but the current description is sufficient for an agent to understand the tool's basic behavior.
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 tool has zero parameters, so detailed parameter semantics are unnecessary. The baseline of 4 applies, and the description adds context about the output scope without needing to explain any input fields.
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 action ('List'), the resource ('adult hashtag categories on NudiTok'), and the basis ('by video count'). This is distinct from sibling tools like get_feed, get_trending, or search_content, so the agent can easily identify what this tool does.
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 gives no guidance on when to use this tool versus alternatives such as get_trending or search_content. There are no context cues like 'use this for exploring hashtags' or 'for content discovery, use search_content instead.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_contentAInspect
Search NudiTok 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 or output schema, the description must carry the behavioral disclosure burden. It communicates the search scope but not what the response contains, whether results are mixed, or if pagination/sorting applies. This is adequate for a simple search tool but 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no filler. Every phrase ('adult videos', 'hashtags', 'creators', 'by keyword') earns its place by defining scope.
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 one-parameter search tool, this is nearly sufficient: the agent knows what to send and roughly what will be searched. But without an output schema or annotations, the absence of any statement about the returned shape or result grouping leaves a notable gap.
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 has 100% coverage for the single required q parameter, so the description does not need to compensate heavily. It adds that q is a keyword applied to videos, hashtags, and creators, but gives no further formatting or syntax details 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 uses a specific verb ('Search') and identifies the resource (NudiTok) and target content types: adult videos, hashtags, and creators, by keyword. It makes the tool's purpose clear, though it does not explicitly contrast itself with sibling tools like list_creators or get_video.
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 phrase 'by keyword' implies the tool should be used for keyword-driven discovery, which distinguishes it from feed, trending, get-by-id, and list-all siblings. However, it never states when-not-to-use it or names an alternative, leaving the agent to infer the boundary.
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
Public Instagram reels, posts, profiles and comments, plus reel-to-text transcripts. No login.
1
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.77MIT
- AlicenseNot gradedqualityBmaintenanceRead-only Douyin / 抖音 MCP by SocialDataX for hot search, work search/details, comments and replies, creator profiles, creator works, and creator series.263 npm2MIT
- AlicenseNot gradedqualityDmaintenanceSearch archived YouTube videos — including deleted, private, or region-blocked content. 1B+ videos indexed since 2005, with AI summaries, subtitles, and transcripts.25 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.8 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.