mcpField
J
Joomil — Swiss Classifieds MCP

Joomil — Swiss Classifieds MCP

リモート
github.com/Valmo-Sarlビジネス・マーケティング018 週間前に更新
リポジトリ

Joomil — Swiss Classifieds MCP について

Joomilは、スイスのフランス語圏にあるJoomil.chの公開分類広告を検索する読み取り専用MCPサーバーです。自然言語による絞り込み候補、広告詳細、カテゴリや州の検索に対応します。

主な機能

  1. 01自然言語から検索条件を提案
  2. 02キーワードや場所で広告を検索
  3. 03広告の詳細情報を取得
  4. 04カテゴリと州の一覧を確認

活用シーン

  1. 01予算内の車両を探す
  2. 02都市や部屋数で住居を検索
  3. 03電子機器などのカテゴリを閲覧
  4. 04地域別に公開求人を探す

MCP 対応

リモートMCPサーバーは、広告検索、詳細取得、条件提案、カテゴリと州の照会ツールを提供します。Joomil.chの公開REST APIを利用する読み取り専用サービスです。

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://joomil-mcp.snowy-surf-deec.workers.dev/mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

ツール

5
パラメーター型必須説明
querystringはい自然言語による検索リクエスト。例:'appartement 3 pièces à Sion' または 'Tesla Model 3 moins de 25000 CHF'。

詳細

joomil-mcp

Joomil.ch 向け MCP サーバー — 2007 年から運営されている、スイスを代表するフランス語圏のクラシファイドマーケットプレイスです。

スイスのフランス語圏(ロマンディ)にある 34 のカテゴリーから、45,000 件以上の掲載情報を閲覧・検索できます。不動産、自動車、求人、動物、電子機器、ファッションなどを網羅しています。

ツール

ツール説明
suggest_filters自然言語のクエリから search_classifieds のフィルターを推測します
search_classifiedsキーワード、カテゴリー、州(厳密な列挙型)、場所、価格帯、並べ替え、ページネーションで掲載情報を検索します
get_classifiedID を指定して掲載情報の詳細(説明、画像、出品者、有効期限)を取得します
get_categoriesparent_id による階層を含め、現在有効なカテゴリーを一覧表示します
get_cantonscanton フィルターで使用できる州の値(API 固有の綴り)を一覧表示します

クイックスタート

これはリモート 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 CHF 以下のオートマ車を探してください。」
  • 「シオンで 3 部屋のアパートを探してください。」
  • 「Joomil にはどのような電子機器カテゴリーがありますか?」
  • 「ヴァレー州でヴィンテージのソファの掲載情報を見せてください。」
  • 「ヌーシャテルでホテル業界の求人を探してください。」

エージェント向けのヒント:州で絞り込む前に get_cantons を呼び出してください。API では一見わかりにくい綴りが使用されます(例:Berne ではなく Bern、Genève/Geneva ではなく Geneve)。 ユーザーの自由形式のリクエストでは、まず suggest_filters を呼び出し、返された filters オブジェクトを search_classifieds に渡してください。

API リファレンス

suggest_filters
パラメーター型説明
querystring自然言語の検索リクエスト。例:appartement 3 pièces à Sion

search_classifieds ですぐに使用できる filters オブジェクトに加え、カテゴリーの信頼度スコアと、マッチングが不確かな場合の警告を返します。カテゴリーのメタデータは MCP レイヤーで短時間キャッシュされるため、提案のたびにカテゴリー階層を再取得する必要はありません。

使用例:

ユーザーのリクエスト通常提案されるフィルター
Tesla Model 3 moins de 25'000 CHFq: "Tesla Model 3"、cat_id: 101、price_max: 25000、sort: "price_asc"
vélo budget 1.5k CHFq: null、スポーツ/レジャーのカテゴリー、price_max: 1500、sort: "price_asc"
appartement 3 pièces à Sionq: "3 pièces"、cat_id: 10255、location: "Sion"
voiture entre 10'000 et 20'000 CHFcat_id: 101、price_min: 10000、price_max: 20000
Golf GTI dans le canton de Vaudq: "Golf GTI"、cat_id: 101、canton: "Vaud"
canapé vintage à Lausanneq: "vintage"、cat_id: 10022、location: "Lausanne"
iPhone 14 à Genèveq: "iPhone 14"、cat_id: 10127、location: "Genève"
{
  "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
パラメーター型説明
qstring全文検索(タイトル+説明)
cat_idnumberカテゴリー ID — サブカテゴリーを含みます
cantonenum厳密な列挙型 — get_cantons を参照してください。Geneve、Vaud、Valais、Fribourg、Neuchatel、Jura、Bern、Argovie、Zurich、Lucerne、Bale-Ville、Etranger
locationstring市区町村名または郵便番号(一部一致)
price_minnumber最低価格(CHF)
price_maxnumber最高価格(CHF)
sortenumrecent(デフォルト、新しい順)、price_asc、price_desc、views(閲覧数順)
limitnumber1 ページあたりの結果数(1~50、デフォルト 20)
offsetnumberページネーションのオフセット — 前回のレスポンスの next_offset を使用してください

ツールのレスポンスには、短い人間向けの概要と、それに続く MCP との後方互換性のための content 内のコンパクトなシリアライズ済み JSON が含まれます。完全なデータは results、total、limit、offset、has_more、next_offset、および filtered_out(MCP 側のカテゴリー制限により、現在のページから除外された項目)を含む structuredContent にも返されます。

結果の形式(各項目):

{
  "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
パラメーター型説明
idnumber出品 ID(検索結果または出品 URL から取得)

完全な説明、画像、カテゴリーの階層、掲載終了日、ブーストレベル、出品者の詳細など、出品の詳細情報を返します。

get_categories
パラメーター型説明
parent_idnumber任意 — すべてのカテゴリーを取得する場合は省略し、ルートカテゴリーの場合は 0、子カテゴリーを取得する場合は任意のカテゴリー ID を指定します
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
}

canton フィルターには、必ず name フィールドを渡してください(label_fr や code ではありません)。

データ

  • ソース:Joomil.ch の公開 REST API
  • 対象範囲:45,000 件以上の有効な出品、34 のトップレベルカテゴリー、190,000 人以上の登録ユーザー
  • 所在地:スイス(フランス語圏 — ロマンディ)
  • 言語:フランス語
  • 更新頻度:リアルタイム
  • 認証:不要

制限事項

この MCP サーバーは読み取り専用で、公開データのみを使用します。

  • 書き込み操作はできません:出品の作成、編集、削除や、出品者への連絡はできません。
  • 認証はありません:ユーザーアカウント、メッセージ、お気に入り、保存済み検索は利用できません。
  • 出品者への連絡はできません:電話番号とメールアドレスは公開されません。Joomil.ch を直接開くには、出品の url を使用してください。
  • 投稿はできません:広告の掲載は 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

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。