Koskamo

DesAira MCP

An official Model Context Protocol server for the DesAira platform, allowing AI agents to search and retrieve AI-generated adult content, including videos, creators, and trending feeds, without requiring authentication for read-only access.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

DesAira MCP logo, by DesAiraVendor evidenceStreamable HTTPNo sign-inEndpoint checked 2026-11-06Operated by DesAira
MCP endpoint (Streamable HTTP)
https://desaira.com/mcp
Vendor documentation

What its tools do

7 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.

7 of 7 have a description · 0 of 7 declare behavior hints · 4 of 6 with parameters document them all

Checks and signals

Each line is separate evidence, not a trust score.

  • Passed Endpoint answered the live check ·
  • Passed Official MCP Registry namespace is tied to desaira.com ·
  • Passed Endpoint is on the registry namespace domain ·
  • Availability 1 of 1 checks passed in 30 days

What you can do with it

  • Search for specific adult content by keywords or hashtags
  • Retrieve details for a specific video by ID or slug
  • Fetch personalized or trending video feeds
  • List available creators or content categories

Source and maintenance

Vendor evidenceRegistry 1.1.0

Protocol and capabilities

Server
DesAira MCP 1.0.0
MCP protocol negotiated in check
2025-06-18
Tools
7 advertised
Resources
3 advertised
Resource templates
2 advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {
    "listChanged": false
  },
  "resources": {
    "subscribe": false,
    "listChanged": false
  }
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

Read-only discovery of adult short-form video on DesAira: porn and nude clips (NSFW), creators and hashtags. All content is adults-only (18+). Tool results link to page URLs (page_url); direct media URLs are not exposed.

Tools

7 advertised

search_content
Advertised by the server during the last successful anonymous check.

Search DesAira for adult videos (porn, NSFW, nude, 18+), hashtags and creators by keyword.

search_content input schema
{
  "type": "object",
  "required": [
    "q"
  ],
  "properties": {
    "q": {
      "type": "string",
      "description": "Search query"
    }
  }
}
get_video
Advertised by the server during the last successful anonymous check.

Fetch metadata for one DesAira video by hash. Returns page_url to link to (no direct media URL).

get_video input schema
{
  "type": "object",
  "required": [
    "hash"
  ],
  "properties": {
    "hash": {
      "type": "string",
      "description": "Video hash (8+ hex chars)"
    }
  }
}
get_feed
Advertised by the server during the last successful anonymous check.

Get a sample of the newest public adult videos on DesAira (max 20).

get_feed input schema
{
  "type": "object",
  "properties": {
    "page": {
      "type": "integer",
      "minimum": 1,
      "description": "Page number (1-based)"
    },
    "cursor": {
      "type": "string",
      "description": "Opaque pagination cursor from a prior call"
    },
    "per_page": {
      "type": "integer",
      "maximum": 20,
      "minimum": 1,
      "description": "Items per page (max 20)"
    }
  }
}
get_feed output schema
{
  "type": "object",
  "properties": {
    "count": {
      "type": "integer"
    },
    "videos": {
      "type": "array"
    },
    "has_more": {
      "type": "boolean"
    },
    "next_cursor": {
      "type": "string"
    }
  }
}
get_trending
Advertised by the server during the last successful anonymous check.

Get trending adult videos on DesAira by engagement for a time window (max 20).

get_trending input schema
{
  "type": "object",
  "properties": {
    "page": {
      "type": "integer",
      "minimum": 1,
      "description": "Page number (1-based)"
    },
    "cursor": {
      "type": "string",
      "description": "Opaque pagination cursor from a prior call"
    },
    "window": {
      "enum": [
        "today",
        "this-week",
        "all-time"
      ],
      "type": "string",
      "description": "Time window"
    },
    "per_page": {
      "type": "integer",
      "maximum": 20,
      "minimum": 1
    }
  }
}
get_trending output schema
{
  "type": "object",
  "properties": {
    "count": {
      "type": "integer"
    },
    "videos": {
      "type": "array"
    },
    "has_more": {
      "type": "boolean"
    },
    "next_cursor": {
      "type": "string"
    }
  }
}
list_creators
Advertised by the server during the last successful anonymous check.

Browse the public DesAira creator directory by follower count (max 20).

list_creators input schema
{
  "type": "object",
  "properties": {
    "page": {
      "type": "integer",
      "minimum": 1,
      "description": "Page number (1-based)"
    },
    "cursor": {
      "type": "string",
      "description": "Opaque pagination cursor from a prior call"
    },
    "per_page": {
      "type": "integer",
      "maximum": 20,
      "minimum": 1
    }
  }
}
list_tags
Advertised by the server during the last successful anonymous check.

List the most popular adult hashtag categories on DesAira by video count (max 20).

list_tags input schema
{
  "type": "object",
  "properties": {}
}
get_user
Advertised by the server during the last successful anonymous check.

Fetch a DesAira creator's public profile plus their newest videos.

get_user input schema
{
  "type": "object",
  "required": [
    "username"
  ],
  "properties": {
    "username": {
      "type": "string",
      "description": "Creator username (without @)"
    }
  }
}

Prompts

Not advertised

No prompt definitions available.

Resources

3 advertised

llms.txt

Advertised by the server during the last successful anonymous check.

Concise site context for LLMs

llms.txt URI
https://desaira.com/llms.txt

MIME type: text/plain

llms-full.txt

Advertised by the server during the last successful anonymous check.

Extended site context for AI systems

llms-full.txt URI
https://desaira.com/llms-full.txt

MIME type: text/plain

openapi.json

Advertised by the server during the last successful anonymous check.

OpenAPI 3.1 spec for the public REST API

openapi.json URI
https://desaira.com/openapi.json

MIME type: application/json

Video

Advertised by the server during the last successful anonymous check.

A single video's metadata by hash

Video URI template
desaira://video/{hash}

MIME type: application/json

Creator

Advertised by the server during the last successful anonymous check.

A creator's public profile by username

Creator URI template
desaira://creator/{username}

MIME type: application/json

90-day uptime

A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.

Too few checks for a percentage yet (1 of 1 answered).

  1. 2026-11-06: 1 of 1 checks answered

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
2092 ms
95th percentile latency
2092 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 2092 ms · metadata changed · 7 tool(s), 3 resource(s), 2 resource template(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http desaira-mcp https://desaira.com/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add desaira-mcp --url https://desaira.com/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable desaira-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "desaira-mcp": {
      "url": "https://desaira.com/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "desaira-mcp": {
      "type": "streamableHttp",
      "url": "https://desaira.com/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start desaira-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "desaira-mcp": {
      "type": "http",
      "url": "https://desaira.com/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http desaira-mcp https://desaira.com/mcp

Claude Desktop

Open Claude Settings > Connectors > Add custom connector, enter this server URL and enable it for the conversation. This is a manual remote-connector handoff, not a desktop JSON configuration.
Claude Desktop configuration
https://desaira.com/mcp

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "desaira-mcp": {
      "serverUrl": "https://desaira.com/mcp"
    }
  }
}

Let your agent find its tools

Find servers like DesAira MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.

Do you run DesAira MCP?

Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.

Claim this listing