joomil-mcp
joomil-mcp
面向 Joomil.ch 的 MCP 服务器 —— 瑞士领先的法语分类广告市场,自 2007 年起运营。
浏览并搜索 34 个类别中的 45,000+ 条活跃信息:房地产、车辆、工作、宠物、电子产品、时尚等 —— 全部来自瑞士法语区(Romandie)。
工具
工具 | 描述 |
| 从自然语言查询中推断 |
| 使用过滤器搜索信息:关键词、类别、州(严格枚举)、地点、价格范围、排序、分页 |
| 按 ID 获取信息的完整详情:描述、图片、卖家、到期日期 |
| 通过 |
| 列出 |
Related MCP server: willhaben-mcp
快速开始
这是一个远程 MCP 服务器 —— 无需本地安装。
端点: https://joomil-mcp.snowy-surf-deec.workers.dev/mcp
Claude Desktop
添加到 ~/.claude/claude_desktop_config.json:
{
"mcpServers": {
"joomil": {
"command": "npx",
"args": ["mcp-remote", "https://joomil-mcp.snowy-surf-deec.workers.dev/mcp"]
}
}
}Cursor
添加到你的 MCP 设置:
{
"joomil": {
"url": "https://joomil-mcp.snowy-surf-deec.workers.dev/mcp"
}
}示例提示
"帮我在沃州找一辆低于 10'000 瑞郎的自动挡汽车。"
"在锡永找一套三居室公寓。"
"Joomil 提供哪些电子产品类别?"
"给我看看瓦莱州的复古沙发广告。"
"在纳沙泰尔找酒店业的招聘信息。"
给智能体的提示:在按州过滤之前先调用
get_cantons—— API 使用 不明显的拼写(例如Bern而非Berne,Geneve而非Genève/Geneva)。 对于自由文本的用户请求,先调用suggest_filters,然后将返回的filters对象传递给search_classifieds。
API 参考
suggest_filters
参数 | 类型 | 描述 |
| string | 自然语言搜索请求,例如 |
返回一个可直接用于 search_classifieds 的 filters 对象,以及类别置信度分数和匹配不确定时的警告。MCP 层会短暂缓存类别元数据,以避免每次建议都重新获取类别树。
有用的示例:
用户请求 | 典型的建议过滤器 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
{
"query": "appartement 3 pièces à Sion",
"filters": {
"q": "3 pièces",
"cat_id": 10255,
"canton": null,
"location": "Sion",
"price_min": null,
"price_max": null,
"sort": "recent",
"limit": 20
},
"category": {
"id": 10255,
"name": "Appartements",
"url": "https://www.joomil.ch/annonces/immobilier/locations/appartements/10255",
"parent_id": 339,
"confidence": 0.82,
"reason": "requête immobilière appartement"
},
"confidence": 0.74,
"warnings": [],
"next_step": "Call search_classifieds with the filters object. Adjust q or cat_id if the result set is too broad."
}search_classifieds
参数 | 类型 | 描述 |
| string | 全文搜索(标题 + 描述) |
| number | 类别 ID —— 包含子类别 |
| enum | 严格枚举 —— 参见 |
| string | 城市名称或邮政编码(部分匹配) |
| number | 最低价格(CHF) |
| number | 最高价格(CHF) |
| enum |
|
| number | 每页结果数(1–50,默认 20) |
| number | 分页偏移量 —— 使用上一次响应的 |
工具响应包含一段简短的人类可读摘要,后跟 content 中的紧凑序列化 JSON,以保持 MCP 向后兼容。完整数据也会在 structuredContent 中返回,包含 results、total、limit、offset、has_more、next_offset 和 filtered_out(因 MCP 端类别限制而从当前页移除的项目)。
结果结构(每个项目):
{
"id": 366872, "title": "Maison avec étangs",
"price": { "amount": 237977.5, "currency": "CHF" },
"location": { "city": "Saint Eugène", "postal_code": "71320", "canton": "Geneve", "country": "FR" },
"category": { "id": 10261, "name": "Maisons & Villas", "url": "https://..." },
"url": "https://www.joomil.ch/annonce/.../366872",
"created_at": "2026-06-26T22:17:11+02:00",
"has_picture": true,
"seller": { "name": "jpclair", "certified": false }
}get_classified
参数 | 类型 | 描述 |
| number | 信息 ID(来自搜索结果或信息 URL) |
返回完整的信息详情,包括完整描述、图片、类别路径、到期日期、置顶级别和卖家详情。
get_categories
参数 | 类型 | 描述 |
| number | 可选 —— 省略则获取全部, |
get_cantons
无参数。返回 search_classifieds 的 canton 过滤器接受的州值及其法语标签:
{
"cantons": [
{ "name": "Geneve", "label_fr": "Genève", "code": "GE", "region": "Romandie" },
{ "name": "Bern", "label_fr": "Berne", "code": "BE", "region": "Suisse alémanique" }
],
"total": 12
}始终将 name 字段(而非 label_fr 或 code)传递给 canton 过滤器。
数据
来源:Joomil.ch 公共 REST API
覆盖范围:45,000+ 条活跃信息,34 个顶级类别,190,000+ 注册用户
地点:瑞士(法语区 —— Romandie)
语言:法语
更新频率:实时
认证:无需
限制
此 MCP 服务器是只读的,仅使用公共数据。
无写操作:无法创建、编辑或删除信息;无法联系卖家。
无认证:没有用户账户、消息、收藏或保存的搜索。
无卖家联系:不公开电话号码和电子邮件地址 —— 使用信息的
url直接打开 Joomil.ch。无发布功能:发布广告必须在 joomil.ch 上进行。
受限类别:Erotique (28)、Rencontres & Amitié (14000)、Voyance & Astrologie (651) 及其子类别会按内容政策被 MCP 层过滤掉。底层 PHP API 仍可直接使用。
州过滤器是严格的:只接受
get_cantons返回的值。其他拼写(Berne、Genève、Geneva、GE、VD...)会被上游 API 静默忽略,并返回所有信息而非过滤后的集合 —— 这里的严格枚举可防止这种情况。货币:所有价格均为 CHF。信息可能具有
price.amount: null(价格面议)或0(免费)。上游错误:Joomil API 故障会以
isError: true的 MCP 工具错误形式返回。
自行部署
git clone https://github.com/Valmo-Sarl/joomil-mcp
cd joomil-mcp
npm install
npx wrangler login
npm run deploy许可证
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to search and retrieve listings from Sweden's largest second-hand marketplaces, Blocket and Tradera. Returns unified data including prices, images, seller information, and direct links to listings.8
- AlicenseAqualityCmaintenanceEnables searching Austria's largest classifieds marketplace (willhaben.at) for real estate, cars, jobs, and second-hand items via natural-language queries and structured filters, with full listing details.7192MIT
- AlicenseNot gradedqualityFmaintenanceEnables AI assistants to search and view advertisements on Marktplaats.nl with extensive filtering options.13MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI assistants to search and consult Leboncoin classified ads through the MCP protocol, with tools for ad search, detail retrieval, user profiles, and category/region listings.MIT
Related MCP Connectors
Search products in nearby stores. Agents can also list items for sale on a user's behalf.
Search Swiss federal legislation: laws, articles, amendments via the Fedlex SPARQL endpoint.
Search listings, message posters, and create draft posts on Capmus, the university marketplace
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Valmo-Sarl/joomil-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server