mcpField
O
Otaghak

Otaghak

本地服务
github.com地图与出行25 天前更新

关于 Otaghak

Otaghak 是面向 AI Agent 的非官方只读 MCP 服务,用于搜索伊朗的别墅、小屋和公寓。它可查询日期可订情况、按入住人数计算总价,并提供评价和房东信息,但不支持预订。

主要功能

  1. 01按地点和日期搜索住宿
  2. 02查询每晚空房和价格
  3. 03按入住人数计算准确总价
  4. 04查看设施、规则和取消条款
  5. 05查看住客评价和房东数据
  6. 06查找折扣及相似住宿

适用场景

  1. 01计算特定日期和人数的别墅总价
  2. 02查询小屋在选定日期是否空闲
  3. 03比较吉兰省允许宠物入住的住宿
  4. 04选房前查看房东回复率

MCP 相关

通过只读 MCP 工具提供 Otaghak 的公开住宿数据,包括搜索、日历、报价和评价。服务在本地运行并通过 stdio 通信,不支持预订或付款。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"sepehr071-otaghak": {
"command": "uvx",
"args": [
"otaghak-mcp"
],
"env": {
"OTAGHAK_MCP_PROXY": "<OTAGHAK_MCP_PROXY>"
}
}
}
}
启动命令uvx otaghak-mcp
需要配置的环境变量
OTAGHAK_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+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypiotaghak-mcp0.3.2

工具

15

收录的工具列表 · 更新于 5 天前

参数类型必填说明
querystring是波斯语城市或省份名称,或英文 slug,例如 'رامسر'、'ramsar'、'مازندران';也可以是数字房间代码,例如 '2508916'。

详细介绍

otaghak-mcp:面向 Claude、Cursor 和 Copilot 的非官方 Otaghak MCP 服务

🏡 otaghak-mcp:面向 AI Agent 的 Otaghak MCP 服务

面向 Otaghak(اتاقک)的非官方只读 MCP 服务:让你的 AI Agent 在伊朗寻找住处。
在伊朗各地搜索别墅、乡间小屋和公寓,查看哪些夜晚有空房,获取你所选日期和住客人数的
准确价格,并查看评价和房东数据;所有操作都可通过 Claude、Cursor 或 Copilot 完成。

PyPI Python CI MCP Registry License: MIT

Install in Cursor Install in VS Code

面向 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,0005,000,000
10 月 21 日,周三4,000,0005,000,000
10 月 22 日,周四4,250,0005,000,000
1 位额外房客(3 晚)980,0001,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_rooms4–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_PROXYunset用于每个请求的 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。

相关服务

如果它为您省下了几次点击,点个星标就能帮助其他人找到它。

免责声明

本项目为非官方项目,与 Otaghak 无关联,也未获其认可。它使用 otaghak.com 网站的公开接口,这些接口可能随时变更,恕不另行通知。Otaghak 为签约合作伙伴提供官方预订 Web 服务;本项目并非该服务。请合理控制请求频率。

作者

Sepehr Radmard:面向伊朗网络的开源 MCP 服务。LinkedIn:linkedin.com/in/sepehr-radmard

由 Sepehr Radmard(سپهر رادمرد)构建并维护。您可以通过 LinkedIn 联系作者,或在 GitHub 上关注 @sepehr071,了解更多面向伊朗网站的 MCP 服务;所有服务均列于 iran-mcp。如果它为您节省了时间,在代码仓库点个星标就能帮助其他人找到它。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。