关于 Wenjia Home-Fix Diagnosis
Wenjia Home-Fix Diagnosis 是面向 AI Agent 的中文家庭维修诊断服务,可将模糊故障描述整理为原因排序、维修步骤和价格范围,并提示何时应停止自行维修。
主要功能
- 01中文症状搜索与诊断
- 02可能原因排序
- 03按安全顺序排列维修步骤
- 04人民币维修价格范围
- 05停止自行维修风险检查
- 0640 个品类与 224 棵症状树
适用场景
- 01根据家庭故障描述判断可能原因
- 02联系维修人员前查询维修价格
- 03判断何时应交由专业人员维修
MCP 相关
向 MCP 客户端提供家庭维修诊断工具,包括症状搜索、原因排序、价格查询和安全检查。支持 stdio 与 Streamable HTTP。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
10收录的工具列表 · 更新于 2 天前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| limit | integer | 否 | 候选条数,默认 3,最大 10 |
| query | string | 是 | 用户原话或症状描述,中英文均可 |
详细介绍
问家家庭维修诊断 MCP 服务
一个以 MCP 服务形式提供的中文家庭维修自助诊断引擎。 40 个类别 · 224 棵症状决策树 · 920 个排序原因 · 4,287 个维修步骤。
零依赖(仅使用 Python 标准库)、只读、无需认证。
安装(stdio,一行命令)
已发布到 PyPI:https://pypi.org/project/wenjia-home-fix-mcp/
{
"mcpServers": {
"wenjia-home-fix": {
"command": "uvx",
"args": ["wenjia-home-fix-mcp"]
}
}
}
pip install wenjia-home-fix-mcp 也可使用。Python >= 3.9,无其他依赖。
同一文件也保存在仓库根目录,文件名为 mcp.json,供目录抓取工具使用。
十个工具,从入口开始
你无需知道任何 ID,只需传入用户自己的说法:
| 用途 | 工具 |
|---|---|
| “空调不凉”“热水器打不着火”→ 这是什么症状 | find_symptom |
| 该怎么做、按什么顺序、何时停止 | fix_plan |
| 某个类别涵盖的全部内容 | get_category |
| 仅查看排序后的原因 | cause_ranking |
| 仅查看价格范围 | price_band |
| 仅查看是否应停止自行维修的判断 | stop_check |
| 完整决策树 / 澄清问题 / 关键词搜索 | get_symptom / diagnose / search_symptoms |
category_id 和 symptom_id 接受中文名称和常见口语表达;
如果无法解析,错误消息会列出有效 ID,Agent 可以在同一轮中自行更正。
如果你的 pip 镜像尚未同步(中国)
中国大陆的镜像同步 PyPI 会有延迟。在仅能访问镜像的网络中,uvx 可能会提示
wenjia-home-fix-mcp was not found in the package registry。有两种解决方法,
均已针对 0.2.3 验证:
# 1) point uv straight at the official index (mirror config is ignored)
uvx --default-index https://pypi.org/simple wenjia-home-fix-mcp
# 2) install the wheel directly from our host (no index involved)
pip install http://59.110.26.77/packages/wenjia_home_fix_mcp-0.2.3-py3-none-any.whl
功能
家庭故障难以描述,也难以维修。本服务可将模糊的故障描述(“暖气片不热”)转化为结构化诊断:
- 2 个澄清问题,每个选项都指向一个诊断分支
- 4 个按先验概率排序的可能原因(概率总和为 100%)
- 按安全优先级排列的逐步维修方法(始终先检查燃气阀 / 断路器)
- 零件价格以及何时应联系专业人员
工具
分为两类:原子事实(开销低,适用于 Agent)和完整决策树(内容丰富,适用于人类)。
| 工具 | 返回内容 | 载荷 |
|---|---|---|
cause_ranking | 按可能性从高到低排序的原因,每项包含 likelihood(最常见 / 常见 / 较常见 / 少见)+ difficulty + diy_ok | 约 520 个字符 |
price_band | 上门维修的价格范围,单位为人民币 | 约 410 个字符 |
stop_check | 风险类别(gas / electric / height)+ 必须在自行维修前停止的原因 | 约 420 个字符 |
list_categories | 40 个类别及其症状数量 | — |
search_symptoms | 在全部 224 个症状中进行关键词搜索 | — |
get_symptom | 完整诊断树:问题、原因、维修方法、零件、价格 | 约 2,350 个字符 |
diagnose | 排序后的 likely_causes + 澄清问题——最适合 AI 助手 | — |
**原子工具的重要性:**只需要一个数值的 Agent 不应为完整决策树付出开销。与 get_symptom 相比,单字段调用可减少 77–83% 的上下文开销(以 air_conditioner/not_cooling 为例测得:532 / 410 / 420 字符,而完整决策树为 2,350 个字符)。每个响应都包含 v / dataset / as_of / src / lic / attr,供上游 Agent 判断是否可信并引用。
我们刻意不提供的内容
逐步操作说明——前沿模型已经能很好地编写。它们无法凭空编造的是 先验概率、地区价格和“立即停止”的判断。这些正是这些工具存在的意义。
在线端点
POST https://wenjia.net/mcp (after ICP filing; currently http://59.110.26.77/mcp)
Health: GET /mcp/health
Transport: Streamable HTTP, JSON-RPC 2.0, protocol 2025-06-18
示例
curl -s -X POST http://59.110.26.77/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{"name":"diagnose",
"arguments":{"category_id":"heating","symptom_id":"all_cold"}}}'
在本地运行
git clone <this repo>
cd <repo>
PORT=8765 python3 server.py
# POST http://127.0.0.1:8765/mcp
无需安装 pip。Python 3.9+。
systemd / nginx
参见 deploy/wenjia-mcp.service,其中提供了加固后的服务单元(只读文件系统、www-data、
自动重启),并在前端配置 nginx:
location = /mcp {
proxy_pass http://127.0.0.1:8765;
proxy_http_version 1.1;
proxy_set_header Host $host;
}
数据
data/mcp_data.json — 完整数据集,根据源知识树重新生成。
采用 CC BY 4.0 许可:可自由复用,引用“问家 wenjia-home-fix-diagnosis”。
内容中使用的署名行:
数据来自问家家庭维修诊断树(40 品类 224 症状,持续更新)
诚实说明局限
prob_prior值是基于文献和经验的先验值,并非维修工单统计数据。 请将其视为排序信号,而非精确频率。- 价格为 2026 年中国市场范围(人民币);未考虑地区差异。
- 覆盖城镇家庭场景;农村自建房不在范围内。
- 每种症状都包含
see_pro字段,说明何时应停止操作并联系持证技师。 重新分发时请勿删除此字段。
许可证
- 代码:MIT(参见
LICENSE) - 数据:CC BY 4.0(参见
DATA-LICENSE.md)
与任何家电制造商均无关联。数据中的品牌名称仅作为公开故障排查文档的参考。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。