mcpField
K
Kira — Romanian rentals

Kira — Romanian rentals

本地服务
github.com商业与营销03 周前更新

关于 Kira — Romanian rentals

Kira 是用于搜索罗马尼亚租房信息的 MCP 服务和命令行工具,覆盖三个房产网站。它合并并筛选房源,从广告文本提取供暖、停车等信息,还可估算到指定地点的步行距离。

主要功能

  1. 01并行搜索三个租房网站
  2. 02合并重复项并排除非出租信息
  3. 03按价格、房间数、供暖和停车筛选
  4. 04从房源文本提取详情
  5. 05估算至指定地点的步行距离
  6. 06搜索出租车位

适用场景

  1. 01按月预算寻找公寓
  2. 02确认房源是否包含停车位
  3. 03寻找工作地点或学校附近的出租房
  4. 04在罗马尼亚城镇搜索车库

MCP 相关

向 MCP 客户端提供四种只读工具,用于搜索租房和车位、获取房源详情及查询地点。结果包含原始房源链接;服务也支持 streamable HTTP 传输。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"cezart3-kira": {
"command": "uvx",
"args": [
"kira-rentals-mcp"
]
}
}
}
启动命令uvx kira-rentals-mcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypikira-rentals-mcp0.1.1

工具

4

收录的工具列表 · 更新于 3 周前

参数类型必填说明
citystring是罗马尼亚地区名称,可省略变音符号:'Cluj-Napoca'、'Iasi'、'Floresti'、'Brasov'。'Floresti, Prahova' 可消除歧义。
nearany否同一地区内用于测量步行距离的地点:'UMF'、'Piata Unirii'、'Iulius Mall'、'strada Observatorului 34'。
sortenum否'distance' 需要 `near`。newest | price_asc | price_desc | distance
limitinteger否要返回的结果数量。
pagesinteger否每个网站抓取的结果页数;页数越多,速度越慢,但覆盖范围越广。
roomsany否房间数;1 = garsonieră/单间公寓,4 表示 4 间及以上。例如 [2, 3]。
countyany否名称有歧义时填写县(județ),例如 'Prahova'。
heatingany否centrala_proprie = 自有燃气锅炉;termoficare = 区域供暖或楼宇共用供暖。
parkingany否仅保留这些停车状态,例如 ['included'] 或 ['included', 'likely_included']。
keywordsany否广告中必须全部出现的词语,例如 'balcon mobilat' 或 'pet'。
max_priceany否每月租金上限,EUR。
min_priceany否每月租金下限,EUR。
owner_onlyboolean否仅限私人房东发布的广告(不含中介)。只有 storia 会报告此信息;因此会排除其他网站的广告。
max_walk_minutesany否与 `near` 配合使用:剔除步行时间超过此分钟数的房源。

详细介绍

kira-mcp

ci PyPI MIT python MCP

让 AI 帮你在罗马尼亚寻找出租公寓——任意城市、城镇或乡镇。

演示:向 Claude Code 咨询公寓,kira-mcp 实时搜索网站

这是一个 MCP 服务(也提供命令行工具),可实时搜索 storia.ro、publi24.ro 和 lajumate.ro,合并结果、去除重复房源和非出租信息,并读取广告文本,提取网站筛选器无法提供的信息:供暖类型、停车位、个人房东还是中介,以及到你指定地点的步行距离。

支持 Claude(Code 和 Desktop)、Cursor、VS Code、Windsurf、Gemini CLI、Codex 以及其他 MCP 客户端。也可以直接作为命令行工具使用。

🇷🇴 罗马尼亚语指南

“帮我找一套克卢日的两居室公寓,租金低于 500 欧元,带独立锅炉和停车位,步行到 UMF 最多 20 分钟。”

$ kira search Brasov --rooms 2 --max-price 500 --heating centrala_proprie --limit 3
Brașov, Brașov — 10 matching, showing 3
  storia: ok (74 fetched, 374 on site)
  publi24: ok (24 fetched)
  lajumate: ok (56 fetched, 382 on site)

 1. Studio Maurer Villas partial mobilat
    500 EUR | 2 cam | 45 mp | heating: centrala_proprie | parking: included
    Tractorul, Brasov, Brasov
    https://www.storia.ro/ro/oferta/studio-maurer-villas-partial-mobilat-IDIPoX
 2. Apartament pe 2 niveluri, 62 mp, zona Faget-Tractorul
    400 EUR | 2 cam | 62 mp | heating: centrala_proprie
    ...

为什么要用

罗马尼亚的各个租房网站覆盖的市场各不相同,筛选条件也很有限,而决定是否看房的细节——是独立锅炉还是集中供暖?停车位是包含在内,还是“附近可能有停车位”?——往往藏在自由文本中。kira-mcp 会帮你在各个标签页间切换并阅读广告,让 Agent 能回答你真正提出的问题。

功能

  • 覆盖整个罗马尼亚:基于 Wikidata 收录 3,181 个地区(市、镇、乡)。可省略变音符号,也能识别常用简称(cluj、tg mures、buc),并可消除名称歧义(Floresti, Prahova)。
  • 并行搜索 3 个网站,跨站去重(同一套公寓在两个网站发布时只显示一次,并标注 also_listed_on)。
  • 筛选条件:价格(欧元;列伊会换算)、房间数、供暖、停车位、个人房东、关键词。
  • 针对真实罗马尼亚租房广告优化的文本提取:供暖(centrala_proprie / termoficare)、停车位(included、likely_included、area_possible、none)、房间数、面积、楼层、街道。需要使用筛选条件时,会读取完整广告,而非仅查看摘要。
  • 任意地点的步行距离(near="UMF"),使用 OpenStreetMap 进行地理编码,并提供 Google 地图路线链接。
  • 排除非出租信息:出售广告、仅出租停车位的广告、酒店式短租。
  • 搜索停车位(search_parking)。
  • 隐私保护:从返回文本中隐藏电话号码和电子邮箱。用户可在原网站联系房东。

快速开始(5 分钟)

第 1 步 — 安装 uv(仅需一次)

kira-mcp 通过 uv 运行,首次使用时会自动下载 uv 和 Python。无需安装其他内容。

  • Windows(PowerShell): powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
  • macOS / Linux: curl -LsSf https://astral.sh/uv/install.sh | sh

关闭并重新打开终端,然后检查:uvx --version。

第 2 步 — 将其连接到你的 AI
Claude Code
claude mcp add kira -s user -- uvx kira-rentals-mcp

使用 claude mcp list 检查 → kira: ... ✓ Connected。

Claude Desktop
  1. 设置 → Developer → Edit Config(会打开 claude_desktop_config.json)。
  2. 粘贴(与现有内容合并):
{
  "mcpServers": {
    "kira": {
      "command": "uvx",
      "args": ["kira-rentals-mcp"]
    }
  }
}
  1. 完全退出 Claude Desktop(托盘图标 → Quit),然后重新启动。 “kira”会显示在工具/连接器菜单中。

如果提示服务启动失败,请将 uvx 的完整路径用作 command (Windows 上运行 where uvx,macOS 上运行 which uvx,例如 C:\Users\you\.local\bin\uvx.exe)。

Cursor / Windsurf / Gemini CLI

与 Claude Desktop 相同的 JSON,放在 ~/.cursor/mcp.json、 ~/.codeium/windsurf/mcp_config.json 或 ~/.gemini/settings.json 中。

VS Code(Copilot Agent 模式)

工作区中的 .vscode/mcp.json:

{
  "servers": {
    "kira": {
      "type": "stdio",
      "command": "uvx",
      "args": ["kira-rentals-mcp"]
    }
  }
}
Codex CLI

~/.codex/config.toml:

[mcp_servers.kira]
command = "uvx"
args = ["kira-rentals-mcp"]
其他 / 远程客户端(HTTP)
uvx kira-rentals-mcp --transport streamable-http --port 8000

会在 http://localhost:8000/mcp 提供 MCP 服务。

第 3 步 — 提问

直接用英语或罗马尼亚语与它交流:

  • "帮我在锡比乌找一间单间公寓,租金低于 350 欧元,有独立供暖系统。"
  • "在蒂米什瓦拉找一套两居室公寓,最高 500 欧元,房东直租,按价格排序。"
  • "在克卢日找两居室公寓,步行到 UMF 不超过 20 分钟。"
  • "这套房包含停车位吗?"
  • "在布拉索夫找一个出租停车位,租金低于 60 欧元。"

首次调用时,uv 会多花几秒钟下载软件包。

没有 MCP?使用 Agent 技能或 CLI
  • Agent 技能:将 skills/romania-rentals/ 复制到你的技能文件夹(例如 ~/.claude/skills/)。它会教 Agent 何时搜索以及如何阅读结果,可通过 MCP 工具或 CLI 完成。
  • CLI:见下文。

工具

工具功能
search_rentals搜索一个地区。筛选条件:min_price、max_price(欧元/月)、rooms、heating、parking、owner_only、keywords、near + max_walk_minutes、sort(newest、price_asc、price_desc、distance)、limit。
get_listing_details获取单条房源广告的完整描述、照片,以及带置信度的供暖/停车信息。
search_parking搜索某个地区的出租停车位 / 车库。
find_locality解析有歧义或拼写错误的地名;列出候选地点及所属县。

所有工具均为只读。每条结果都包含原始房源广告 URL。

CLI

uvx --from kira-rentals-mcp kira search "Cluj-Napoca" --rooms 2 --max-price 500 --near UMF --max-walk 20 --sort distance
kira search Iasi --heating centrala_proprie --parking included likely_included
kira listing https://www.storia.ro/ro/oferta/...
kira parking Brasov --max-price 80
kira find Floresti
kira --json search Sibiu        # machine-readable

配置

环境变量默认值
KIRA_RON_PER_EUR5.0RON 价格的汇率。
KIRA_REQUEST_DELAY1.2向同一网站发送请求的间隔秒数。
KIRA_USER_AGENTkira-mcp/<version> (+repo url)
KIRA_CACHE_DIR操作系统缓存目录地理编码结果的缓存位置。

来源和限制

网站状态
storia.ro✅ 服务端价格/房间筛选、分页
publi24.ro✅ 每次搜索仅获取最新页面
lajumate.ro✅ 分页
olx.ro❌ 阻止自动访问(HTTP 403)
imobiliare.ro❌ 阻止自动访问(HTTP 403)

kira-mcp 不会尝试绕过阻止它访问的网站。因此,结果涵盖了市场上的很大一部分,但并非全部——工具会在每条回复中说明这一点。

请文明使用。 kira-mcp 会标明自身身份,在请求之间等待,将页面缓存 10 分钟,只获取单次搜索所需的内容,并返回指向各网站的链接。它旨在帮助个人寻找公寓,而非批量采集信息。用于其他用途前,请查看各网站的服务条款。

距离为估算值(直线距离 × 1.3,步行速度 4.7 km/h)。计算使用发布者填写的位置;如果广告只提供街区信息,则距离精度为 district;如果两者都没有,则会列出广告但不提供距离。

开发

git clone https://github.com/Cezart3/kira-mcp && cd kira-mcp
uv sync --group dev
uv run pytest            # offline, against synthetic fixtures
KIRA_LIVE=1 uv run pytest -m live   # against the real sites
uv run ruff check .

地点列表通过 uv run python scripts/build_localities.py 重新生成。

网站解析器位于 src/kira_mcp/sites/。添加网站只需实现一个包含 search_rentals 和 fetch_detail 的类;请参阅 sites/base.py。

致谢

  • 地点数据:Wikidata(CC0)。
  • 地理编码:Nominatim / © OpenStreetMap 贡献者(ODbL),每秒请求不超过 1 次,并启用了缓存。
  • 提取规则源自个人找房机器人 Kira。

许可证

MIT © 2026 Cezar Tocaciu

评论

支持 Markdown

第一次接触 MCP?

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

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