关于 Otaghak
Otaghak 是面向 AI Agent 的非官方只读 MCP 服务,用于搜索伊朗的别墅、小屋和公寓。它可查询日期可订情况、按入住人数计算总价,并提供评价和房东信息,但不支持预订。
主要功能
- 01按地点和日期搜索住宿
- 02查询每晚空房和价格
- 03按入住人数计算准确总价
- 04查看设施、规则和取消条款
- 05查看住客评价和房东数据
- 06查找折扣及相似住宿
适用场景
- 01计算特定日期和人数的别墅总价
- 02查询小屋在选定日期是否空闲
- 03比较吉兰省允许宠物入住的住宿
- 04选房前查看房东回复率
MCP 相关
通过只读 MCP 工具提供 Otaghak 的公开住宿数据,包括搜索、日历、报价和评价。服务在本地运行并通过 stdio 通信,不支持预订或付款。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
uvx otaghak-mcpOTAGHAK_MCP_PROXYOptional HTTP proxy URL for every request, or a comma-separated list: one is used until it gets blocked or fails to connect, then the next. System proxy settings are ignored.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
15收录的工具列表 · 更新于 5 天前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| query | string | 是 | 波斯语城市或省份名称,或英文 slug,例如 'رامسر'、'ramsar'、'مازندران';也可以是数字房间代码,例如 '2508916'。 |
详细介绍
🏡 otaghak-mcp:面向 AI Agent 的 Otaghak MCP 服务
面向 Otaghak(اتاقک)的非官方只读 MCP 服务:让你的 AI Agent 在伊朗寻找住处。
在伊朗各地搜索别墅、乡间小屋和公寓,查看哪些夜晚有空房,获取你所选日期和住客人数的
准确价格,并查看评价和房东数据;所有操作都可通过 Claude、Cursor 或 Copilot 完成。
面向 AI Agent · 原因 · 功能 · 快速开始 · 工具 · 工作原理 · 须知 · 常见问题 · 配置 · فارسی · 开发 · 相关服务 · 免责声明 · 许可证
面向 AI Agent
- **简介:**面向 Otaghak(اتاقک)的非官方只读 MCP 服务。Otaghak 是伊朗的别墅、乡间小屋和公寓市场。使用波斯语查询效果最佳,也支持英文 slug;价格单位为 Toman。
- 安装:
claude mcp add otaghak -- uvx otaghak-mcp(stdio 传输;需要 Python 3.10+ 和 uv)。 - **认证:**无需认证,也无需 API 密钥。如果 Otaghak 屏蔽了你的网络,可选用
OTAGHAK_MCP_PROXY(HTTP 代理,或以逗号分隔的代理列表)。 - **访问权限:**只读。无需登录,不支持预订、付款或短信验证码,因此调用工具前无需确认。
- **工具:**共 15 个,均以
ot_*为前缀。可从ot_find_place开始,然后使用ot_search_rooms→ot_room或ot_room_calendar→ot_price_quote。要寻找优惠,可使用ot_deals。 - **适用场景:**在伊朗寻找住处,并结合评价和房东数据,获取所选日期和住客人数对应的准确总价。
- **不适用场景:**需要预订或付款(用户需在 otaghak.com 上操作),或需要查询开放日历范围以外的价格(最晚到下一个波斯历月份结束,最多 20 晚)。
- **输出:**紧凑 JSON。价格单位为 Toman;日期采用公历
YYYY-MM-DD(check_out为离开日期);评分范围为 0-5。使用工具时传递数字类型的房间 ID。 - 机器可读信息:
server.json;所有伊朗 MCP 服务目录:iran-mcp(TOOLS.md、servers.json、llms.txt)。
原因
在 Otaghak,房源卡片上显示的价格往往不是你实际要支付的价格:每晚价格各不相同,周末更贵,折扣逐晚变化,额外房客每晚都要收费,而且日历通常只开放未来约一个月的日期。要知道我的日期和同行人数对应的真实总价,就得逐个房间点击日历。使用 otaghak-mcp 的 Agent 可以代劳:
你: 我们有 4 个人,去 Ramsar,10 月 20 日至 23 日。「سوییسی لیلی」小屋总共多少钱?
Agent: 调用
ot_search_rooms(city=["ramsar"], name="لیلی")→ot_price_quote(room_id=2508916, check_in="2026-10-20", check_out="2026-10-23", guests=4)
夜晚 价格 折扣前 10 月 20 日,周二 4,000,000 5,000,000 10 月 21 日,周三 4,000,000 5,000,000 10 月 22 日,周四 4,250,000 5,000,000 1 位额外房客(3 晚) 980,000 1,200,000 应付总额 13,230,000 小屋包含 3 位房客,最多可住 4 人,因此第 4 位房客每晚收费 400,000(同样有折扣,折扣率与住宿晚数的略有不同)。三晚都空闲,可立即预订。要我用
ot_similar_rooms帮你比较一下吗?
真实工具输出,来自 2026-10-04;价格随时可能变化。价格单位为 Toman。
功能
- 🔎 搜索:根据日期和同行人数,搜索某个城市、省份或主题合集(海滩、丛林、带泳池的别墅,……)中的住宿,并按价格、评分或折扣排序
- 🧮 精确价格:按日期和房客人数计算价格,包括每晚折扣后的价格、额外房客费用,以及可选的延迟退房费用
- 📅 日历:查询哪些夜晚空闲、每晚价格、最短和最长住宿时间、周末和节假日
- 🏠 房间详情:房间和床位、设施、住宿规则、入住时间、取消政策、附近商店、照片
- ⭐ 品质:评分、六项类别评分、推荐率、带房东回复的评价、房东响应时间和接待率
- 🏷️ 优惠:临时折扣和折扣力度最大的住宿
- 🧭 指南:目的地指南、常见问题、博客文章,以及网站规则(取消、退款)
- 🔒 专为只读而设计:无需登录,不可预订或付款,也不需要短信验证码
快速开始
你需要 uv。
Claude Code
claude mcp add otaghak -- uvx otaghak-mcp
Claude Desktop
依次选择“设置” →“开发者” →“编辑配置”,然后添加:
{
"mcpServers": {
"otaghak": { "command": "uvx", "args": ["otaghak-mcp"] }
}
}
Cursor
点击上方的 Install in Cursor,或将 Claude Desktop 配置块添加到 ~/.cursor/mcp.json。
VS Code (Copilot agent mode)
点击上方的 Install in VS Code,或将以下内容添加到 .vscode/mcp.json:
{
"servers": {
"otaghak": { "type": "stdio", "command": "uvx", "args": ["otaghak-mcp"] }
}
}
Codex CLI
codex mcp add otaghak -- uvx otaghak-mcp
也可以添加到 ~/.codex/config.toml:
[mcp_servers.otaghak]
command = "uvx"
args = ["otaghak-mcp"]
Gemini CLI
添加到 ~/.gemini/settings.json:
{
"mcpServers": {
"otaghak": { "command": "uvx", "args": ["otaghak-mcp"] }
}
}
Windsurf
将 Claude Desktop 配置块添加到 ~/.codeium/windsurf/mcp_config.json。
Anything else
这是一个标准的 stdio MCP 服务:运行 uvx otaghak-mcp,或运行 pip install otaghak-mcp 后再运行 otaghak-mcp。
然后只需询问:
- “下个周末,拉姆萨尔附近适合 6 人入住且带泳池的最便宜别墅是哪一套?”
- “2512254 号房间 10 月 20 日至 23 日有空吗?5 位客人的总价是多少?”
- “吉兰省评分为 4 分或以上、允许携带宠物的小屋。”
- “显示 2512254 号房间的评价和房东回复率,然后推荐同一日期的类似房间。”
- “未来一个月有哪些伊朗节假日?这间房提供延迟退房吗?”
- یک کلبه جنگلی در ماسال برای ۴ نفر، آخر هفته بعد، با رزرو آنی پیدا کن.
- قیمت نهایی ویلای شماره ۲۵۱۲۲۵۴ برای ۵ نفر از ۲۰ تا ۲۳ اکتبر چقدر میشود؟
- تخفیفدارترین اقامتگاههای شمال را نشان بده.
工作原理
AI agent (Claude, Cursor, Copilot, ...)
│
│ MCP over stdio
▼
otaghak-mcp (runs on your machine)
│
│ HTTPS (REST + OData)
└──────▶ core.otaghak.com, www.otaghak.com/blog
otaghak-mcp 在本地运行,并调用 otaghak.com 网站使用的相同公共端点。
中间没有托管服务,不需要 API 密钥,也不会将你的任何信息发送到其他地方。
工具
房间由数字 ID 标识,例如 2512254(即 otaghak.com/room/2512254/ 中的数字);地点由 slug 标识,例如 ramsar(城市)、mazandaran(省份)或 beach(集合)。
🔎 搜索(5)
| 工具 | 功能 |
|---|---|
ot_find_place | 地点名称 → 城市 / 省份 slug;房间代码 → 对应房间 |
ot_search_rooms | 搜索城市、省份或集合中的住宿,支持设置日期和入住人数,并提供筛选和排序 |
ot_search_filters | 筛选代码(泳池、停车位、可带宠物、海滨或丛林区域等)、房间类型、价格范围、地标 |
ot_destinations | 热门城市和集合,以及某个集合中的城市 |
ot_deals | 临期优惠和折扣力度最大的住宿 |
🏠 房间和房东(4)
| 工具 | 功能 |
|---|---|
ot_room | 详情、设施、规定、入住 / 退房时间、取消政策、房东、位置、照片 |
ot_reviews | 评分、星级分布图、分类得分、推荐比例、含房东回复的评价 |
ot_similar_rooms | 4–5 个备选房间,按您的日期和入住人数重新报价并核验;如果网站列表为空,则搜索同一城市、同一类型且价格不超过该房间 1.5 倍的房间(note 会说明) |
ot_host | 房东响应时间、回复率和接单率、其他房间、最新评价 |
📅 日期和价格(4)
| 工具 | 功能 |
|---|---|
ot_room_calendar | 按日显示空房或已订、价格、最少 / 最多入住晚数、周末、节假日、延迟退房 |
ot_price_quote | 计算指定日期和入住人数的确切应付金额,包括额外入住人数和延迟退房 |
ot_holidays | 指定日期范围内的伊朗法定节假日,含 Jalali 日期 |
ot_late_checkout | 房间是否提供延迟退房、延迟时长、价格,以及离店当天是否可选 |
🧭 帮助和指南(2)
| 工具 | 功能 |
|---|---|
ot_help | 帮助中心常见问题、住客条款(预订、取消政策、退款、钱包)、房东规定 |
ot_travel_guide | 目的地指南、常见问题、相关搜索页面和博客文章 |
全部 15 个工具均标注为 readOnlyHint: true,并返回精简的结构化 JSON,不会让 Agent 的上下文被大量信息淹没。
须知
- 价格以 Toman 计价,与网站一致(1 Toman = 10 Rial)。
price_per_night是折扣后的价格。未指定日期时,价格是房间未指定入住日期的起始价,并非报价。 - 应付金额为
ot_price_quote→total:折扣后的住宿晚数费用(即房间页面显示的应付金额),加上超过房间包含人数的额外入住人数费用(按与住宿晚数相同的折扣计算),再加上可选的延迟退房费用。优惠券和钱包余额需要登录后才能使用,且不包含在内。搜索结果会给出stay_total估算值,可能相差几 Toman;指定日期后,sort="cheapest"会按此值对每一页排序。 - 日期使用公历
YYYY-MM-DD,check_out是离店日期。不能使用过去的日期,最多入住 20 晚;房东日历只开放到下一个 Jalali 月底。工具会明确说明这些情况,而不是返回空列表。输入 Jalali 日期会报错,并提示对应的公历日期。 - **入住人数:**每个房间的价格包含
base_guests人,最多可入住max_guests人。ot_price_quote会自行检查人数上限(如果您指定某个房间,网站自己的搜索不会检查)。 - 评分范围为 0–5;
null表示尚未评分。节假日标记仅提前约 7 周发布。 - 位置为大致位置;只有预订后才能获取准确地址和房东电话。
- 波斯语查询匹配效果最佳(
رامسر、کلبه),英文 slug 也可以使用。
常见问题
有适用于 AI Agent 的 Otaghak API 或 MCP 服务吗?
otaghak-mcp 是一款非官方的 Otaghak MCP 服务:它将 otaghak.com 的公共端点作为 15 个只读工具公开,因此 Agent 可以搜索住宿并获取准确价格。(Otaghak 自己的预订 Web 服务仅面向签约合作伙伴;这并不是那个服务。)
如何将 Otaghak 与 Claude、Cursor 或 Copilot 搭配使用?
使用 uvx otaghak-mcp 安装(参见快速开始),然后用波斯语或英语提问,例如:“下周末,Ramsar 附近适合 6 人入住的带泳池最便宜别墅,总价是多少?”
它是官方、安全且免费的吗?
它是非官方的,采用 MIT 许可证,因此可以免费使用。它是只读的:无需登录、无需 API 密钥,不会预订或付款,并且在你的计算机上运行。
它能帮我预订房间吗?
不能,这是有意为之。它无需登录,也绝不会调用预订、付款、OTP/SMS、钱包、收藏或评价端点。Agent 会找到房间和准确价格;你需要前往 otaghak.com 预订。
为什么搜索 12 月会返回错误?
Otaghak 上房东的日历只开放到下一个伊朗历月份月底,而且住宿时间最多为 20 晚。超出这个时间范围后,网站就没有价格,因此工具会告诉你最后一个可预订日期。
我需要伊朗 IP 地址吗?
不需要。它已在伊朗家庭网络和通过土耳其出口节点的网络上进行测试,两者都能正常使用。尚未测试伊朗境外的云服务器;如果 Otaghak 屏蔽了云服务器,请设置 OTAGHAK_MCP_PROXY。
我收到“未能及时响应”或“无法连接”
服务器会在出现超时、连接失败、5xx 或 429 时,采用短暂退避重试最多两次。如果仍然失败,请检查网络连接或设置 OTAGHAK_MCP_PROXY。系统常规代理变量会被有意忽略,因为直接调用速度最快。
如果 Otaghak 显示机器人检测页面,请安装可选的浏览器回退方案:pip install "otaghak-mcp[browser]"(或
uvx --from "otaghak-mcp[browser]" otaghak-mcp),然后运行 patchright install chromium。
Claude Desktop 提示找不到 uvx
将 uvx 的完整路径(Windows 上运行 where uvx,macOS/Linux 上运行 which uvx)用作 command。
如何调试 Agent 能看到的内容?
npx @modelcontextprotocol/inspector uvx otaghak-mcp
配置
| 变量 | 默认值 | 含义 |
|---|---|---|
OTAGHAK_MCP_PROXY | unset | 用于每个请求的 HTTP 代理,例如 http://user:pass@host:port。逗号分隔的列表会依次使用:当某个代理被屏蔽(403/429)或无法连接时,下一个代理会接替使用 |
波斯语:Otaghak MCP 服务
otaghak-mcp 是一款面向伊朗 Otaghak 的非官方 MCP 服务,可让您的 AI 助手(Claude、Cursor、Copilot 等)在 Otaghak 搜索别墅、小木屋和公寓,查看空房日期,按您的入住日期和人数计算准确的住宿费用,并查看评价和房东状态。
- 仅提供只读功能:不会登录账户、预订或付款,也不会发送短信验证码。
- 会计算最终费用,包括每晚价格、额外住客费用和延迟退房费用。
- 所有价格均以托曼计,日期采用公历(YYYY-MM-DD)。
- 在您自己的系统上运行,不会向任何中间服务器发送数据。
- 要在 Google 或 MCP 注册表中找到它,请搜索“اتاقک MCP server”或“otaghak mcp”。
- 相关关键词:Otaghak、别墅预订、小木屋预订、伊朗北部别墅租赁、森林小木屋租赁、生态旅游住宿、别墅日租、住宿价格、波斯语 MCP 服务、人工智能与住宿预订。
- 工具(15 个,前缀为
ot_):住宿搜索、筛选条件、目的地、折扣、客房详情、评价、房东、类似客房、日历、准确价格、节假日、延迟退房、帮助指南和旅行指南。
在 Claude Code 中安装:
claude mcp add otaghak -- uvx otaghak-mcp
然后询问:“10 月 20 日至 23 日,6 人入住拉姆萨尔最便宜的带泳池别墅要多少钱?”
开发
git clone https://github.com/sepehr071/otaghak-mcp && cd otaghak-mcp
uv sync
uv run python -m pytest # offline, against recorded responses
uv run python -m pytest -m live # real API
uv run ruff check .
工具位于 src/otaghak_mcp/search.py、room.py、pricing.py 和 info.py 中;每个工具都是带类型注解的异步函数,并附有说明何时使用该工具的文档字符串。欢迎提交问题和 PR,尤其是新工具和针对 API 变更的修复。
发布:在 pyproject.toml 和 server.json 中更新版本号,然后推送 v* 标签。GitHub Actions 会运行测试、发布到 PyPI 和 MCP Registry,并创建 GitHub Release。
相关服务
- Jabama MCP server:提供别墅、旅游和活动信息
- Flytoday MCP server:提供航班、酒店和别墅信息
- MrBilit MCP server:提供航班、火车、巴士和酒店信息
- Iran Quake MCP server:提供伊朗近期地震信息
- 所有服务:iran-mcp,伊朗 MCP 服务目录
如果它为您省下了几次点击,点个星标就能帮助其他人找到它。
免责声明
本项目为非官方项目,与 Otaghak 无关联,也未获其认可。它使用 otaghak.com 网站的公开接口,这些接口可能随时变更,恕不另行通知。Otaghak 为签约合作伙伴提供官方预订 Web 服务;本项目并非该服务。请合理控制请求频率。
作者
由 Sepehr Radmard(سپهر رادمرد)构建并维护。您可以通过 LinkedIn 联系作者,或在 GitHub 上关注 @sepehr071,了解更多面向伊朗网站的 MCP 服务;所有服务均列于 iran-mcp。如果它为您节省了时间,在代码仓库点个星标就能帮助其他人找到它。
许可证
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。
