L4D2 Workshop Mirror MCP
Provides tools to search, resolve, and download Left 4 Dead 2 custom campaigns from the Steam Workshop, including dependency resolution, series part detection, and filtering of deleted or private items.
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., "@L4D2 Workshop Mirror MCP 帮我下载地图 Dead Center"
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.
L4D2 Workshop Mirror MCP
由LLM驱动的一站式群服求生之路2地图下载器
L4D2 工坊战役地图的 MCP 服务器:包含搜索、战役判定、依赖解析、一键下载、死图拦截。 所有脏活(网络请求、判定、去重、文件校验)在 MCP 内部完成,接上支持 MCP 的机器人(如 AstrBot)后, 用户一句"下xx地图"即可完成从找图到落盘游戏服务器全流程,并可引导LLM将地图文件传至群聊,达成全程懒人的目的。
由于借助了镜像站,该工具还可以拯救国内服务器的无代理网络环境问题!
其他的说明都是AI写的,嘻嘻。
Related MCP server: Steam-MCP
特性
一站式下载:支持 workshop id / steam 链接 / 中文标题三种输入,自动解析依赖、自动补齐系列 Part
战役判定:phase2 多因子打分,过滤 mod/皮肤等噪音,策展名单交叉验证
Part 系列识别:兼容
part1/PART-1/2/XXX 2/5/[1/5]/第一章/Chapter N等 10 种命名死图拦截:Steam 已删除/私密物品自动识别并缓存(30 天 TTL),不再反复推荐和下载
异步下载:大图后台下载 + 进度轮询,群聊不阻塞
去重与黑名单:75 天去重窗口、黑名单永不可绕过
数据源融合:echocn(尼姑服的人工维护三方图列表,注意是明文传输)+ zhrradiant 创意工坊镜像站 + SteamWorkshopDownloader.io(依赖解析) + Steam 官方 API 四级数据源
快速开始(3 步)
# 1. 安装
python3 -m venv .venv && source .venv/bin/activate
pip install -e .
# 2. 配置(模板见 config.example.json,字段说明见 DEPLOYMENT.md §3.3)
cp config.example.json config.json
# 编辑 config.json:workshop_dir / filter_json_path / http_proxy 必填
# 3. 接入 AstrBot(MCP 配置模板见 DEPLOYMENT.md §3.5)启动验证:python3 server.py(stdio 模式,日志出现 L4D2 Workshop Mirror MCP starting 即正常)。
文档导航
文档 | 读者 | 内容 |
README.md(本文档) | 所有人 | 项目简介、快速开始、文档导航 |
DEPLOYMENT.md | 部署/运维者 | 安装、配置格式约定、AstrBot 接入、升级、排障 |
ARCHITECTURE.md | 开发者 | 架构设计、数据源、判定规则、决策记录 |
skills/l4d2-workshop-mirror/SKILL.md | LLM(可选但不建议,如果你依赖LLM自动部署可考虑) | LLM 使用说明书:工具指令、决策规则、回复纪律。需要 AstrBot skill 形态时可整体拷贝到 |
examples/ | 部署者 | 各 JSON 配置/数据文件的格式模板 |
工具总览(11 个)
工具 | 用途 |
| 一站式下载(id / 链接 / 标题,可选异步) |
| 标题解析为候选(不下载) |
| 异步下载进度轮询 |
| 搜索战役(自动过滤 mod/黑名单/去重/死图) |
| 单图详情 + 战役判定 |
| 下载前预检(黑名单/去重/死图,零网络) |
| 系列 Part 识别 |
| 最近 N 天新战役 |
| 查 三方列表名单(模糊/繁简) |
| 手动同步最新三方列表缓存 |
| 闲置目录同步到去重名单 |
环境要求
Python ≥ 3.10(3.14 测试通过)
网络:元数据查询走 HTTP 代理;vpk 下载走内置加速线路
可选:Steam Web API key(死图确认、三级回退兜底,无 key 也能运行)
Available Tools
11 toolscheck_eligibilityA
检查一张图是否能下载。零网络调用,纯本地查询(filter.json + 死图缓存)。
适用场景:下载前预检、批量过滤。
Inputs: title, workshop_id. Returns: object
find_series_partsA
识别一张图所属的完整系列(所有 Part)。
融合三路信号:①正向依赖(required_items+children+description) ②反向查询作者全部物品(/user-files) ③命名模式识别。
Inputs: workshop_id (required), aggressive. Returns: object
get_download_jobA
查询异步下载任务(install_campaign async_mode=True 时返回的 job_id)进度。
Returns: {job_id, status: "queued"|"running"|"done"|"error", elapsed_s, result: install 结果|null, error: str|null}
Inputs: job_id (required). Returns: object
get_map_detailA
查询单张地图的完整详情,包含 phase2 战役判定结果。
默认不返回 description(省 token),需要时设 include_description=True(截断到 500 字符)。
Inputs: workshop_id (required), include_description. Returns: object
install_campaignA
一站式下载:识别 → 解析依赖 → 下载 → 落盘 → 更新去重名单。
适用:用户给出 workshop_id、steam 链接或具体地图名要下载时。 workshop_id 与 title 至少传一个:
workshop_id 可为纯数字 id、steamcommunity 链接(自动提取 id)
title 为中文/英文标题时走内部解析链(curated 模糊 → 镜像搜索 → phase2 判定), 唯一高可信匹配自动下载,多候选返回 candidates[] 待确认
Inputs: force, title, strict, async_mode, +2 more. Returns: object
list_new_campaignsA
列出最近 N 天新增的战役地图(增量发现)。
自动跳过黑名单和 active 去重,融合 echocn 策展名单。
Inputs: days, limit. Returns: object
query_curated_listA
查询 echocn 人工策展的 461 条高质量战役地图名单。
含 16 种中文标签、章节信息、人工标注。 这是质量最高的数据源,应优先用于判定和推荐。
Inputs: tag, limit, keyword. Returns: object
refresh_curated_listA
手动刷新 echocn 缓存。
MCP 启动时已自动拉取,每日后台也会自动刷新。 此工具用于:①首次部署验证 ②怀疑缓存过期 ③排障。
Returns: {success, total, sha256, cached_at, error?}
Inputs: no named parameters. Returns: object
resolve_mapA
解析地图标题为工坊候选(不下载)。
适用:用户说"XXX 有没有 / XXX 的 id 是什么",或 install_campaign 传标题 前先看看候选。融合 echocn 人工策展名单与镜像站搜索,按 phase2 判定排序。
Inputs: query (required), limit. Returns: object
search_campaignsA
在工坊中搜索战役地图,用 phase2 多因子规则预筛, 自动过滤黑名单和 active 去重。
默认只返回 score≥3 的高可信结果。模棱两可的(score 1-2,可能是 mod) 默认不返回;如需查看,设 include_ambiguous=True。
Inputs: days, sort, limit, keyword, +1 more. Returns: object
sync_idle_folderA
扫描闲置地图目录(已玩过的图),将未在 dedup 名单的 .vpk 加入去重列表。
适用场景:手动整理闲置目录后触发同步;install_campaign 完成后会自动调用一次。 已在 dedup 名单的会跳过,不会重复添加。
Returns: { "synced": int, # 新加入条数 "skipped_duplicates": int, # 已在名单跳过的条数 "scanned_total": int, # 扫描到的 .vpk 总数 "idle_dir": str }
Inputs: no named parameters. Returns: object
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 11 tools
Most tools target distinct operations: eligibility check, detail lookup, search, resolution, download, job status, etc. Some overlap exists between resolve_map and search_campaigns (both return map candidates), but descriptions clarify their different intents.
All tool names follow a consistent verb_noun snake_case pattern (check_eligibility, refresh_curated_list, get_map_detail, etc.), making the set predictable and easy to navigate.
11 tools is well within the ideal 3-15 range. Each tool serves a clear purpose in the L4D2 workshop mirror workflow, from search and eligibility to installation and cache management, without redundancy.
The domain covers discovery, search, resolution, installation, job tracking, curation, and local folder sync. Minor gaps exist (e.g., no explicit tool to cancel a download or remove from dedup list), but core workflows are fully supported.
Maintenance
Related MCP Connectors
Search and install 4,000+ security-scanned MCP servers from inside any MCP-aware AI client.
MCP registry & directory: search, find & install 31k+ MCP servers & tools. Catalog and marketplace.
Search MCP servers and agent skills, compare them, and get install configs for your client.
Search and get install details on MCP servers, right from your agent -- a unified marketplace index.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables discovery and automatic installation of MCP servers via mcpmarket.com integration. Searches repositories, scrapes GitHub READMEs for configuration details, and provides one-click installation to MCP clients.-
- AlicenseAqualityBmaintenanceMCP server for Valve's Steam that enables querying game libraries, player profiles, achievements, friends, store listings, Workshop items, and current player counts. Provides 14 tools across 5 categories with a React dashboard and REST bridge.143MIT
- FlicenseNot gradedqualityDmaintenanceMCP server that provides tools to search Steam games by keyword, retrieve game details (price, release date, genres), and fetch player reviews with recent ratings.-
- AlicenseAqualityDmaintenanceMCP server enabling AI assistants to search Steam games, retrieve official store metadata, and analyze player review sentiment via public Steam Storefront JSON APIs without an API key.312 npmMIT