mcpField
C
carsensor Price Range MCP Server for AI Agents

carsensor Price Range MCP Server for AI Agents

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

carsensor Price Range MCP Server for AI Agents について

このMCPサーバーは、carsensor.netが公開する車種・年式別統計を使い、AIエージェントやアプリ開発者向けに中古車の市場価格帯を調べます。1回の呼び出しで、車種と年式の最低価格、最高価格、中央値、サンプル数、信頼度を返します。

主な機能

  1. 01車種と年式で価格を検索
  2. 02最低・最高価格と中央値を返却
  3. 03掲載サンプル数を提示
  4. 04推定の信頼度を表示
  5. 05車種と価格データをキャッシュ

活用シーン

  1. 01市場データに基づく中古車価格の回答
  2. 02中古車アプリへの価格検索機能の追加
  3. 03車種・年式別の価格帯の推定

MCP 対応

このサーバーはStreamable HTTP経由で、MCPクライアントに`resolvePriceRange`ツールを公開します。車種と年式を受け取り、carsensor.netのデータに基づく価格帯、サンプル数、信頼度を返します。

設定

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

エンドポイントhttps://woolen-snake--carsensor-price-range-mcp.apify.actor/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 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

すべてのエンドポイント
Streamable HTTPhttps://woolen-snake--carsensor-price-range-mcp.apify.actor/mcp認証が必要

ツール

詳細

AI エージェント向け carsensor 価格帯 MCP サーバー

AI エージェント、チャットボット、アプリで「この中古車の販売価格は妥当か?」に答える必要がある場合、推測ではなく、実際の市場データに基づく数値を返せます。この MCP サーバーなら、1 回のツール呼び出しでそれを実現できます。resolvePriceRange(carModel, year) は、carsensor.net が公開している車種・年式別の公式市場価格統計からリアルタイムで算出した価格帯(最小値/最大値/中央値)を返します。carsensor 自身が相場ページで公開しているデータを、ページを読んで自分で解釈する代わりに、そのまま使える構造化された数値にしたものです。

得られるもの:

  • 車種名と年式だけを指定する resolvePriceRange ツール。基盤となるデータソースの API キーを管理する必要も、自分で HTML を解析する必要もありません
  • priceRangeYen: { min, max, median } に加え、推定の基礎となる実際の carsensor 掲載車数を示す sampleSize と、confidence(normal/low)を返します。年式を carsensor 独自のデータで完全に確認できない場合は、隠さずに信頼度を引き下げます。「既知の制限」をご覧ください
  • Apify Standby モードによる常時稼働ホスティングのため、自分でサーバーを実行する必要はありません。任意の MCP クライアント(Claude Desktop、Claude Code、自作エージェント)から安定した HTTPS エンドポイントに直接接続するか、自分のアプリのコードから通常の Streamable HTTP MCP サーバーとして呼び出せます
{
  "ok": true,
  "carModel": "プリウス",
  "year": 2018,
  "priceRangeYen": { "min": 750000, "max": 4772500, "median": 1573112 },
  "sampleSize": 412,
  "confidence": "normal",
  "disclaimer": "carsensor.net上の公開情報(相場ページの価格×年式集計)を基にした参考値です。個体差・装備差・実際の商談結果は反映されません。"
}

従量課金制です。以下の「料金」をご覧ください。入力/出力の詳細、セットアップ、技術設計については、このページの後半で説明します。

⚠️ 免責事項(必ずお読みください)

  • この Actor は、carsensor.net で一般公開されている情報を自動的に取得します。データの取得方法および利用方法については、ご自身の責任となります。
  • サイト所有者の利用規約、robots.txt、またはアクセス制限は予告なく変更される可能性があり、その結果、この Actor が動作しなくなったり、予期せず出力が変化したりする場合があります。
  • priceRangeYen は carsensor が公開している価格×年式別の集計データから算出した統計的な推定値であり、個々の車両の実際の価値を保証するものではありません。 車両の状態、グレードの違い、走行距離は考慮していません(「既知の制限」をご覧ください)。このデータに基づいて購入または売却を決定する前に、必ず carsensor.net で対象車両の価格をご確認ください。

対象となるユーザー

  • モデル自身の(古かったり、幻覚に基づいたりすることの多い)中古車価格の知識ではなく、実際の市場データに基づいて「これは実際いくらの価値があるのか?」に答えたい AI エージェントやチャットボット
  • carsensor.net との連携機能を自分でスクレイピングして維持する代わりに、すぐに使える価格帯検索機能を利用したい、車探し、価格査定、下取り額の推定機能を開発する アプリ/ツール開発者
  • 一括スクレイピングではなく、通常の MCP ツール呼び出しとして利用したい方。この Actor は、同じ基盤市場データを使って掲載車両のリスト全体を評価する、一括処理向けの carsensor-resale-value-scout Actor に対する、単一ツールで必要なときに呼び出す方式です

できないこと(連携前に必ずお読みください)

  • 走行距離はまだ入力としてサポートされていません。 車種と年式のみを使用するため、価格帯は走行距離で調整された推定値ではなく、carsensor 独自の車種・年式別集計を反映します。今後のバージョンで追加される可能性があります。
  • なじみのない車種では、初回利用時に車種名の解決に失敗したり、時間がかかったりすることがあります。 理由と、初回呼び出し後にキャッシュでどのように軽減されるかについては、「既知の制限」をご覧ください。
  • これは統計的な推定であり、査定ではありません。 上記の免責事項をご覧ください。

入力/出力

入力(MCP ツール呼び出しの引数):

パラメーター型必須説明
carModelstringはい車種名。carsensor 独自の検索と同じ自由入力形式です(例:"プリウス"、"N-BOX")
yearintegerはい4 桁のモデル年です(例:2018)

出力(成功時):

フィールド型説明
priceRangeYen.min / .max / .medianinteger (JPY)このモデル/年式の推定市場価格帯
sampleSizeinteger推定の集計元となった carsensor の掲載台数
confidence"normal" | "low"年式が carsensor のデータにある終端未指定の区分にのみ一致する場合は "low" です(「既知の制限事項」を参照)。この場合、理由を説明する note フィールドが含まれます
cacheStatusobjecttier1/tier2 — この呼び出しでキャッシュデータが使われたか、carsensor.net への新規リクエストが行われたかを示します(参考情報のみで、価格には影響しません。「料金」を参照)

出力(モデルが見つからない/該当年式のデータがない場合):{ "ok": false, "reason": "no_code_resolved" | "no_matching_data", "message": "..." } — 課金されません(「料金」を参照)。

使用例

Claude Desktop/任意の MCP クライアント設定:

{
  "mcpServers": {
    "carsensor-price-range": {
      "url": "https://woolen-snake--carsensor-price-range-mcp.apify.actor/mcp",
      "headers": { "Authorization": "Bearer YOUR_APIFY_TOKEN" }
    }
  }
}

独自アプリから直接呼び出す場合(Node.js、@modelcontextprotocol/sdk):

import { Client } from '@modelcontextprotocol/sdk/client/index.js';
import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js';

const transport = new StreamableHTTPClientTransport(
  new URL('https://woolen-snake--carsensor-price-range-mcp.apify.actor/mcp'),
  { requestInit: { headers: { Authorization: `Bearer ${process.env.APIFY_TOKEN}` } } },
);
const client = new Client({ name: 'my-app', version: '1.0.0' });
await client.connect(transport);

const result = await client.callTool({
  name: 'resolvePriceRange',
  arguments: { carModel: 'プリウス', year: 2018 },
});
console.log(JSON.parse(result.content[0].text));

料金

イベント料金発生条件
価格帯の解決(resolve-price-range-success)$0.03resolvePriceRange が価格帯を正常に返した場合にのみ課金されます。車種を解決できない場合、または該当年式のデータがない場合は課金されません

呼び出しでキャッシュデータが使われたか、carsensor.net への新規リクエストが発生したかにかかわらず、料金は一律です — キャッシュ層ごとの料金設定を意図的に採用しなかった理由を含め、詳しくは以下の「料金設定の理由」を参照してください。

料金設定の理由

$0.03 は、この Actor ファミリーの基本分類層($0.015、例:carsensor-resale-value-scout Actor の listing-extracted)と、より高負荷な派生シグナル層($0.045~$0.065、例:value-score-computed)の中間です。価格帯は生データの取得ではなく、算出された市場シグナルであることを反映しています。一方、このツールの基盤コストは 1 回の呼び出しにつき $0.001 を大きく下回り(ほとんどの呼び出しはキャッシュから提供されます)、どちらの場合も十分な利益を確保できます。

キャッシュのヒットとミスに同じ料金を設定する理由:提供される値 — priceRangeYen、sampleSize、confidence — はどちらの場合も同じです。キャッシュは内部のパフォーマンス/コスト最適化にすぎず、取得できる内容に違いはありません。料金に差をつけると、キャッシュ TTL を短くする(ミスが増えるほど収益が増える)という逆効果のインセンティブが生じ、このツール自体の設計目標である carsensor.net への負荷の最小化に真っ向から反します。

データソースと算出方法

解決したモデルの carsensor.net 独自の公開相場ページ(/usedcar/souba/{makerCode}_S{modelCode}/)を使用します。具体的には、「価格 × モデル年」のクロス集計表(価格区分、年式区分、セルごとの掲載台数)を参照します。これは第三者による推定ではなく、carsensor が自社のリアルタイム在庫から算出する公式の集計データです。

  • median は、該当する各年式区分における価格区分の中点を、掲載台数で加重平均した値です
  • min/max は、該当するセルの実際の価格区分の上下限です(「¥4,150,000 以上」などの上限のない区分は、±15% のヒューリスティックで近似します。これは実測に基づく調整であり、統計的に導出された値ではありません)
  • これはグレード単位の集計データ(例:トヨタ プリウスの全グレードをまとめたもの)であり、個々の掲載車両の価格ではありません。グレード間の違い、装備、状態は考慮されません

キャッシュ(2 層)

層キー値保存先有効期限
1車種名{ makerCode, modelCode }ファイルに保存無期限(carsensor のモデルコードは実質的に静的です)
2{makerCode}_S{modelCode}carsensor の価格×モデル年セルファイルに保存12 時間

両方の層でキャッシュがヒットすれば、その呼び出しで carsensor.net への HTTP リクエストは発生しません。Apify でホストされるバージョンでは、このキャッシュは 1 つの Standby 実行/コンテナインスタンス内に限定されます。同時に実行されるセッションが別々のコンテナインスタンスに割り当てられると、キャッシュも独立するため、ホスト版の実際のヒット率は、ローカルで長時間実行する単一プロセスの場合より低くなることがあります。実際に問題となる場合は、将来のバージョンで Apify の Key-Value Store(実行間で共有)に移行する可能性があります。

アクセス間隔とログ記録

負荷軽減のため、carsensor.net へのリクエストは最低 1000ms の間隔(デフォルトは 1500ms)を空けて実行します。これは、当社の carsensor-resale-value-scout Actor で使用している下限と同じです。今後の監視に備えて、すべての呼び出しについて(モデル、年、各層のキャッシュヒット/ミス、実際に行った HTTP リクエスト、応答時間、結果)を記録します。この情報は呼び出し元には公開せず、この Actor を責任を持って運用するためにのみ使用します。

FAQ

confidence が "low" になることがあるのはなぜですか? carsensor の年式軸には、データ上で下限が開いた区分(例:「2012 年以前」)があります。その境界年以前であれば、モデルがその年に実際に存在していたかどうかにかかわらず、その区分に一致します。このデータだけでは妥当性を完全に検証できないため、確実であると報告するのではなく、confidence を正直に引き下げています。そのような応答の具体的な理由は note フィールドをご覧ください。

特定のモデルへの初回の呼び出しには数秒かかるのに、繰り返し呼び出すと大幅に速くなるのはなぜですか? 初めて扱うモデルへの初回の呼び出しでは、該当するモデルを特定するため、carsensor.net に最大 3 回の実際のリクエスト(検索 → 詳細ページ → 市場価格ページ)が必要です。特定後は、モデルとコードの対応関係が実質的に恒久的にキャッシュされ、価格データ自体も 12 時間キャッシュされるため、同じモデルへの繰り返しの呼び出しはほぼ瞬時に完了します。

走行距離にも対応していますか? まだ対応していません。「できないこと」をご覧ください。

carsensor-resale-value-scout との違いは何ですか? この Actor はバッチスクレーパーです。検索語を指定すると、この市場データに基づいてそれぞれをスコアリングした、現在掲載中のリストが返されます。一方、この Actor は単一の呼び出しでオンデマンドに利用するもので、1 つのモデル/年式について 1 つの数値を必要とする AI エージェントやアプリ向けに構築されています。スクレイピングして処理するリストを返すものではありません。

既知の制限事項

  • モデル名を直接検索する方法はなく、carsensor 独自のフリーワード検索を経由し、一致する掲載ページを読み取ってモデルを特定します。 本当に認識されないモデル(誤字、存在しないモデル)の場合、carsensor の検索結果ページには関連性のない車を含む「こちらもおすすめ」ウィジェットが表示されます。この Actor は、そのウィジェットが実際の一致結果と誤認されないよう明示的に検出して除外します。実環境でのテストにより確認済みです。
  • confidence では、照会された年式が特定のモデルにとって妥当かどうかを完全には検証できません。FAQ をご覧ください。
  • これはグレード単位で集約された価格であり、個別の掲載価格ではありません。「データソースと計算」をご覧ください。
  • ホスト版(Apify Standby)では、ファイルベースのキャッシュはコンテナごとに分かれています。「キャッシュ」をご覧ください。
  • このツールの基盤となるスクレイピングロジックは、2 つの独立してデプロイされる Actor を分離しておくため、carsensor-resale-value-scout のコードベースからインポートせず、意図的に複製しています。carsensor.net のマークアップ変更が一方に影響した場合、もう一方にも対応する修正が必要になることがあります。
  • Smithery には掲載されていません:Apify Standby の認証応答は OAuth のディスカバリー仕様に準拠していないため、Smithery の自動接続スキャンは、このサーバー独自の設定ベースの認証に到達する前に失敗します。現時点で回避策を導入する予定はありません。

今後追加される可能性のある機能(このバージョンでは未実装)

  • 3つ目の入力として走行距離を追加し、carsensor の価格×走行距離マトリックスを使用する(取得可能であることは確認済みですが、まだ組み込まれていません)
  • キャッシュを Apify の Key-Value Store に移行し、Standby コンテナのインスタンス間で共有する
  • Apify Store 以外の MCP ディレクトリにも掲載する

コメント

MCP は初めてですか?

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

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