cosplaytele-mcp
This MCP server lets you discover, browse, search, and open cosplay gallery posts across 11 schema-listed sources and retrieve metadata plus direct image URLs.
List supported sources, their categories, ranking modes, and whether they support search/latest/popular.
Browse popular or latest galleries for one source, with pagination, category filtering, and optional AI exclusion.
Search all searchable sources in parallel or a single source by character, series, model, or tag; per-source failures are reported without failing the whole call.
Browse galleries by tag on a given source.
Find related galleries that share tags with an existing gallery.
Open a full post URL and automatically select the matching source.
Get gallery details and a windowed list of direct image URLs with offset/limit, including tags, image count, AI/video flags, thumbnails, publish time, and download links when available.
Return metadata-only by setting
limit=0; the schema does not expose binary image downloading.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@cosplaytele-mcp search for anime cosplay galleries excluding AI"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
CosplayTele MCP
面向 CosplayTele 及同类图库站点的 MCP 2(Model Context Protocol,规范 2026-07-28)服务器。
需要 Python 3.14+。已发布:cosplaytele-mcp。
安装
uvx cosplaytele-mcpuvx 会临时拉取包并走 stdio 启动,适合直接接到宿主。持久安装:
uv tool install cosplaytele-mcp
# 或
pip install cosplaytele-mcp装完后命令是 cosplaytele-mcp。
Related MCP server: ZeroChan MCP
接入宿主
推荐用 uvx,不必克隆仓库。若宿主找不到 uvx,把 command 换成 uvx 的绝对路径(常见是 ~/.local/bin/uvx)。
Claude Desktop / Cursor(mcpServers):
{
"mcpServers": {
"cosplaytele": {
"command": "uvx",
"args": ["cosplaytele-mcp"]
}
}
}已用 uv tool install 或 pip install 时:
{
"mcpServers": {
"cosplaytele": {
"command": "cosplaytele-mcp"
}
}
}VS Code .vscode/mcp.json:
{
"servers": {
"cosplaytele": {
"type": "stdio",
"command": "uvx",
"args": ["cosplaytele-mcp"]
}
}
}运行
stdio(给宿主用):
uvx cosplaytele-mcp
# 或已安装后
cosplaytele-mcpHTTP:
uvx cosplaytele-mcp --transport streamable-http --port 8000
# 或
cosplaytele-mcp --transport streamable-http --host 127.0.0.1 --port 8000对外绑定时必须显式列出可信的浏览器 Origin:
cosplaytele-mcp --transport streamable-http --host 0.0.0.0 --port 8000 \
--allowed-host mcp.example.com \
--allowed-origin https://mcp.example.com--host 只是本地监听地址;--allowed-host 必须填写反向代理转发的 Host(可重复指定,
也可使用 example.com:* 匹配端口)。非 localhost 监听时,--allowed-host 和
--allowed-origin 都是必填项。生产环境还应在反向代理或网关启用 HTTPS、认证、限流和审计。
本项目只公开现代 Streamable HTTP;旧版 HTTP+SSE 已从 CLI 移除。
popular_kind=archive 表示源站的分类或默认归档,不表示按统计热度排名。ranking_kinds
与内容 categories 分开列出。
源
id | 站点 | 热门 | 最新 | 搜索 |
| 页脚「Popular Cosplay」组件 | HTML 归档 | HTML | |
|
|
|
| |
| 无 | Cosplay 等分类 REST | WP REST | |
| 无 | WP REST | WP REST | |
| 分类 |
| WP REST | |
|
|
|
| |
| 无 | WP REST | WP REST | |
| HTML | 无 | 无( | |
|
| 无 |
| |
|
|
|
| |
|
| 无 |
| |
| Cosplay 分类( | 无 | 全站搜索后仅保留 Cosplay 分类 | |
| API | API |
| |
| Cosplay 标签归档 | 无 |
| |
| Cosplay 标签归档 | 无 |
| |
|
|
|
| |
| Cosplay 分类归档 | 无 | 全站 |
工具
list_sources:源目录open_url(url, offset=0, limit=20):从完整帖子 URL 按域名选源并打开图集search(query, source=all, page=1, category?, exclude_ai=true):按站点真实接口搜索。source=all时并行查全部源,结果按源交错排列browse(source, sort=popular|latest, page=1, query?, category?, period?, exclude_ai=true):排行 / 最新;只带category时按该分类列出,不走关键词搜索;带query时走该源搜索。period仅部分源的热门有效:CosplayTele 为last24hours|last7days|last30days|all,Hentai Cosplay 为day|week|month|year。CosplayTele 的 WordPress 排行 REST 接口当前整站 500,源改为抓站内 HTML;所有period都回落到同一个「Popular Cosplay」精选组件,不再区分时间窗browse_tag(source, tag, page=1, exclude_ai=true):按标签列出related(source, path, page=1, exclude_ai=true):相近套图。CosplayTele 走 Contextual Related Posts;其余源用图集第一个标签get_gallery(source, path, offset=0, limit=20):详情和图片 URL。默认只回前 20 张加image_count;limit=0只回元数据。path用列表或搜索结果里的path,也接受完整帖子 URL。image_assets为每个image_urls条目附带源站要求的请求头;可能带download_urls、has_video(有视频时只打标,不返回可播放流)fetch_image(source, path, index):按需取图集中的一张,按image_assets的请求头请求源站,并返回 MCPImageContent。只拉取源站 allowlist 上的 URL;JJCOS(i1.wp.com)、BaoBua(blogger.googleusercontent.com)、Simply Cosplay 独立 CDN 会被拒绝,请改用image_assets自行请求。不写本地文件,不下载整套图集;单图上限 20 MiB,较大的原图同样用image_assets。
列表项在源站提供时带 tags、published_at、image_count、has_video。没有的字段为 null / 空列表,不会为凑字段再打详情。年龄语义容易被误判的制服主题词(如 JK、校服、制服、school girl、school uniform、after school)会在标题和标签中追加 (18+);路径、搜索词和源站原始标识不变。
CosplayTele 的 category 除表内 slug 外,也接受模特/作品分类 slug(如 byoru)。Hentai Cosplay 热门 category 为排行种类:like、bookmark、download、tag、keyword、images。OSOSEDKI category=cosplays 列出角色目录,再把名字交给 browse_tag。
exclude_ai 默认开启。只认明确 AI 标记,避免误伤 Ai Yamada、Ai Hoshino 这类名字:
源 | AI 标记 |
CosplayTele | 标题/路径/标签命中 |
Hentai Cosplay | 标题 |
MissKon | 标签 |
Cup2D | 分类 |
OSOSEDKI | 标题里的 |
Mitaku | 无 AI 标签页,只能靠标题/路径 |
其余新源 | 标题/路径/标签命中 |
结果里带 is_ai。get_gallery 仍会返回 AI 图集,只打标不拦截。
搜索实现:
源 | 接口 |
CosplayTele | HTML |
Everia / Cup2D |
|
4KHD |
|
Hentai Cosplay |
|
MissKon | WP REST |
Kiutaku |
|
FoamGirl |
|
OSOSEDKI |
|
Mitaku |
|
Simply Cosplay |
|
JJCOS |
|
Buon Dua |
|
Xasiat |
|
BaoBua | 全站 |
资源:sources://catalog、gallery://{source}/{+path}。提示词:find_gallery。
开发
克隆仓库后用 uv:
uv sync --dev
uv run ruff check src tests
uv run ruff format --check src tests
uv run pytest
uv run mcp dev src/cosplaytele_mcp/server.py格式化:
uv run ruff format src tests
uv run ruff check --fix src testsAvailable Tools
7 toolsbrowseBrowse a gallery sourceARead-only
List popular or latest galleries from one source.
Use search() when the user names a character, series, model, or tag. If query is set, this tool searches that one source instead of ranking. If only category is set, list that category with sort (not a keyword search). Pass each item's path to get_gallery to fetch image URLs.
Inputs: source (required), page, sort, query, +3 more. Returns: page, items, source, has_next_page
browse_tagBrowse galleries by tagARead-only
List galleries for one tag on one source.
Prefer this over search() when you already have a tag from get_gallery.
Inputs: tag (required), source (required), page, exclude_ai. Returns: page, items, source, has_next_page
get_galleryGet a galleryARead-only
Fetch title, tags, and a window of image URLs for one gallery.
path is ListingItem.path / SearchHit.path, a relative path, or a full post URL. Does not download image files. AI galleries are returned with is_ai=true. If the user gave a full URL and you do not know the source, call open_url instead.
Inputs: path (required), source (required), limit, offset. Returns: url, path, tags, is_ai, +10 more
list_sourcesList gallery sourcesARead-only
Return every gallery source this server can query.
Call this first when you need a source id, a category slug, or to check whether a source supports search or latest listings.
Inputs: no named parameters. Returns: result
open_urlOpen a gallery URLARead-only
Open a gallery from a full post URL.
Picks the source from the URL host. Use this when the user pastes a link.
Inputs: url (required), limit, offset. Returns: url, path, tags, is_ai, +10 more
searchSearch galleriesARead-only
Search galleries by character, series, model, or tag.
source="all" (default) queries every searchable source in parallel. Results are interleaved by source so one site cannot bury the rest. Failed sources appear in errors and do not fail the whole call. Pass a hit's source and path to get_gallery.
Inputs: query (required), page, source, category, +1 more. Returns: page, items, query, errors, +2 more
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 7 tools
Tools are mostly distinct: list_sources is metadata, browse is for ranked/listing views, search is keyword-based across sources, browse_tag is tag-specific, related expands from a set, open_url handles full URLs, and get_gallery fetches details. Some overlap exists between browse with a query and search, and browse_tag could be seen as a specialized browse, but descriptions clarify boundaries.
Most tools follow verb_noun naming (list_sources, open_url, get_gallery, browse_tag), while browse and search are bare verbs, and related deviates entirely. The mixed styles are still readable, but the pattern is not uniform.
Seven tools is well-scoped for a gallery aggregator server. Each tool covers a distinct interaction mode (discovery, search, browsing, detail fetch), and none feel redundant or extraneous.
The surface covers the core read-only lifecycle: discover sources, search/browse, drill into tags, open URLs, and fetch gallery details. Minor gaps exist such as explicit pagination for browse results, but the described workflows are largely complete.
Maintenance
Related MCP Connectors
Generate AI images and videos from any compatible MCP client.
AI-powered image processing via GPU. Remove backgrounds and upscale images (2x/4x) directly from any MCP client. OAuth 2.1 authenticated, returns processed images inline with download links. Free credits on signup at maskr.io.
Search and fetch curated AI agent skills, prompts and MCP servers.
Search attributed image prompts, retrieve full templates, and browse GPT Image Hub categories.
Related MCP Servers
- AlicenseBqualityDmaintenanceProvides AI assistants with access to Civitai's collection of AI models, enabling users to browse, search, and discover AI models through MCP-compatible AI assistants.1413MIT
- AlicenseAqualityDmaintenanceMCP server for the Zerochan anime image board API. Browse the global feed, search by tags, and retrieve full entry metadata — directly from any MCP-compatible AI assistant.3MIT
- AlicenseAqualityDmaintenanceMCP server for searching cosmos.so, returning direct CDN image URLs without page scraping.3109 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables assistants in any MCP client to generate new images or edit existing ones, automatically enriching short requests with composition, lighting, and camera details before sending them to Gemini, OpenAI, or BytePlus Seedream. Supports quality presets, aspect ratios, image sizes, character consistency, blended inputs, and Google Search grounding for current information.1,781 npmMIT