mcpField
P
Portugal Fuel & EV Charging

Portugal Fuel & EV Charging

ローカル
thiagolannes.com地図・旅行06 日前に更新

Portugal Fuel & EV Charging について

Portugal Fuel & EV Chargingは、ポルトガルの燃料価格と公共EV充電器を調べる読み取り専用MCPサーバーです。DGEGとMOBI.Eのデータを使い、場所、コネクター、出力、利用状況で絞り込めます。

主な機能

  1. 01最安の給油所を検索
  2. 02地域や距離で給油所を絞り込み
  3. 03営業時間とサービスの確認
  4. 04近くの公共EV充電器を検索
  5. 05出力やコネクターで充電器を絞り込み
  6. 06稼働状況と公開料金の確認

活用シーン

  1. 01地域ごとの燃料価格の比較
  2. 02燃料種別に近くの給油所を検索
  3. 03指定地点付近の利用可能な充電器を検索
  4. 04充電器のコネクター、状態、公開料金を確認

MCP 対応

MCPクライアントに燃料価格、給油所詳細、燃料種別、充電器検索、充電器詳細のツールを提供します。データはDGEGとMOBI.Eの公開情報に基づきます。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"thiagojacoblannes-portugal-fuel-ev": {
"command": "uvx",
"args": [
"portugal-fuel-ev-mcp"
]
}
}
}
起動コマンドuvx portugal-fuel-ev-mcp

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
pypiportugal-fuel-ev-mcp0.1.1

ツール

5

掲載時のツール一覧 · 6 日前に更新

パラメーター型必須説明
latanyいいえ
lonanyいいえ
brandanyいいえ
limitintegerいいえ
districtanyいいえ
fuel_typestringはい
radius_kmnumberいいえ
municipalityanyいいえ

詳細

翻訳後に原文が更新されています。最新の内容は原文をご確認ください。

portugal-fuel-ev-mcp

燃焼車と電気自動車のどちらでも、「ポルトガルで近くにある、給油または充電が最も安い場所はどこ?」という質問に答える MCP サーバーです。Claude(または任意の MCP クライアント)が公式のオープンデータを検索できます。

読み取り専用で、キーもアカウントも不要です。 燃料価格は DGEG の公式価格サイトから取得します。EV 充電器、リアルタイムの状態、価格は、ポルトガルの National Access Point にある MOBI.E ネットワークのフィードから取得します。DGEG、MOBI.E、IMT とは提携していません。

ツール

fuel_prices

燃料の種類を1つ指定して、価格の安い順に給油所を表示します。

パラメーター:

  • fuel_type — DGEG の燃料名または ID("Gasóleo simples"、"Gasolina simples 95"、"Gasolina 98"、"GPL Auto" など)、または一般的な語句:"diesel"、"petrol"、"95"、"98"、"lpg"、"cng"
  • district — 例:"Lisboa"、"Porto"、"Faro"(大文字・小文字とアクセントの違いは区別しません)
  • municipality — 例:"Sintra"、"Évora"(district より優先されます)
  • lat / lon + radius_km — 地点周辺を検索します(半径の既定値は10 km)
  • brand — ブランドを1つに限定します。例:"Galp"、"Prio"
  • limit — 表示する給油所の数(既定値は10、最大50)

地域を指定しない場合、ポルトガル全土を検索します。各給油所には、価格(ガスの場合は1リットルまたは1 kg/m³あたりの EUR)、ブランド名、名称、住所、市区町村、座標、距離(地点周辺を検索した場合)、価格の最終更新日時が表示されます。結果には、条件に一致した給油所の数と、価格の最小値・中央値・最大値も表示されます。

fuel_station_detail

1つの給油所について、販売しているすべての燃料の価格と最終更新日時、営業時間、サービス、支払い方法を表示します。

fuel_types

DGEG の燃料の種類(ID、名称、単位)と地区を表示します。使用する燃料名が分からない場合にのみ必要です。

ev_chargers

地点周辺の公共充電スポットを、近い順にリアルタイムの状態と公開価格とともに表示します。

パラメーター:

  • lat / lon — 検索する地点
  • radius_km — 既定値は5、最大100
  • min_power_kw — 急速 DC 充電の場合は、例として 50
  • connector — "CCS"、"Type 2"、"CHAdeMO"、"CEE"、または "DC" / "AC"
  • available_only — 現在空いている充電ポイントのみを表示します
  • limit — 表示する充電スポットの数(既定値は10、最大50)

各充電スポットには、事業者、住所、距離、営業時間、および条件に一致する充電ポイントが表示されます。各充電ポイントには、リアルタイムの状態(利用可能、使用中、故障中など)、最大出力、コネクター、およびフィードが公開する料金(per_kwh、per_minute、per_session、単位は EUR)が表示されます。結果にはデータの鮮度も表示されます。

ev_charger_detail

サイト ID、充電ポイント ID、または EVSE ID を指定して1つの充電スポットを表示します。すべての充電ポイントの状態、出力、コネクター、料金に加え、事業者の連絡先、営業時間、充電の開始方法(アプリ、RFID カード、クレジットカードなど)も表示します。

EV の料金について

料金は、MOBI.E のステータスフィードが各充電ポイントについて公開する rates です。料金の種類(1 kWh あたり、充電1分あたり、1回あたり、または駐車時間などの「その他」)と金額が含まれます。請求額の全額を示しているとは限りません。

  • このフィードには、どの料金体系(通常料金またはアドホック料金/充電器での支払い)なのか、VAT が含まれているかどうかは記載されていません。MOBI.E 独自の料金一覧を抜き取り確認したところ、アドホック料金が設定されている充電ポイントでは、通常、その料金がフィードに掲載されていました。それ以外の場合は、事業者の通常料金が掲載されています。
  • MOBI.E ネットワークでは、事業者の料金は充電ポイントの利用料金のみです。MOBI.E のカードまたはアプリで支払う場合、利用者のプロバイダー(CEME)が独自のエネルギー料金に加え、ネットワーク利用料、MOBI.E の管理手数料、税金を請求します。

ev_chargers と ev_charger_detail の各結果には、この注意書き(price_note)が含まれます。料金を使って充電器を比較し、最終的な費用は事業者のアプリまたはプロバイダーで確認してください。

インストール

最も手軽な方法(uv が必要です):クローンは不要で、PyPI から直接実行できます。

claude mcp add portugal-fuel-ev -- uvx portugal-fuel-ev-mcp

Claude Desktop では、"command": "uvx", "args": ["portugal-fuel-ev-mcp"] を使用してください。

ソースからインストールする場合:

Python 3.10 以降が必要です。

git clone https://github.com/ThiagoJacobLannes/portugal-fuel-ev-mcp
cd portugal-fuel-ev-mcp
python -m pip install -e .

Windows で、コードをクラウド同期フォルダー(Google Drive、OneDrive)に保存する場合は、仮想環境をその外に作成してください。同期クライアントがフォルダーに desktop.ini ファイルを追加し、起動時にパッケージがクラッシュすることがあります。

Claude Code に追加する

claude mcp add portugal-fuel-ev -- python -m portugal_fuel_ev_mcp.server

Claude Desktop に追加する

claude_desktop_config.snippet.json の内容を Claude Desktop の claude_desktop_config.json にマージし、その後 Claude Desktop を再起動してください。

{
  "mcpServers": {
    "portugal-fuel-ev": {
      "command": "python",
      "args": ["-m", "portugal_fuel_ev_mcp.server"]
    }
  }
}

EV の最初の呼び出しには時間がかかります

MOBI.E のフィードはサイズが大きく(在庫データは約 180 MB、リアルタイム状況データは 40 MB)、圧縮されていません。その日の最初の EV 呼び出しではこれらをダウンロードするため、接続状況や MOBI.E のサーバーによって 1~3 分かかります。サーバーはストリーム受信中にデータを読み込み(ファイル全体をメモリに保持することはありません)、約 1 MB のコンパクトなキャッシュを保持するため、以降の呼び出しは数ミリ秒で完了します。

  • 在庫データは最大 24 時間ごと、リアルタイム状況データは 10 分ごとに更新されますが、いずれもツールが必要とした場合にのみ更新されます。各結果の data_freshness には、データの公開日時と取得日時が記載されています。

  • 事前にダウンロードするには(たとえば、クライアントが長時間の呼び出しでタイムアウトする場合)、次を実行してください。

    python -m portugal_fuel_ev_mcp.server --refresh
    
  • キャッシュはユーザーのキャッシュフォルダー(platformdirs 経由)に保存されます。別のフォルダーを使うには、PORTUGAL_FUEL_EV_CACHE_DIR を設定してください。

  • 更新に失敗した場合、サーバーは最後のキャッシュを引き続き使用し、その旨を data_freshness.warnings に記載します。

燃料価格は各呼び出し時に DGEG からリアルタイムで取得されます(10 分間キャッシュされます)。

データソースとライセンス

データソース条件
燃料価格、給油所、営業時間DGEG、Preços dos Combustíveis Online(JSON API .../api/PrecoComb/)DGEG のサイトによると、情報は無料で自由に利用できます。再利用する際は、ソースとして DGEG を明記し、価格の最終更新日時を表示し、情報を忠実に再現する必要があります。このため、ツールは source と各価格の last_update を返します。
EV 充電施設、充電ポイント、コネクター、リアルタイム状況、価格ポルトガルのナショナル・アクセスポイント(NAP、IMT)経由の MOBI.E:https://pgm.mobie.pt/integration/nap/evChargingInfra および .../evActualStatus(DATEX II 3.3 XML)NAP のデータセット 148 および 149 では「Livre acesso」(オープンアクセス)として掲載されており、個別のライセンス文書はありません。データを再利用する際は、「MOBI.E / NAP Portugal」とクレジットを記載してください。

価格は給油所の運営者および充電事業者が掲載しているため、誤っていたり、古くなっていたりする場合があります。給油所または充電器のアプリでご確認ください。

DGEG のエンドポイントは、Home Assistant インテグレーション netsoft-ruidias/ha-custom-component-precoscombustiveis と GeiserX/Pumperly で使用されているものです。DATEX II の解析は、CarregaErvilhas/nap-dashboard および mobilidade-dados-pt/carregamento-pt の説明に従っています。

仕組み

  • 燃料: PesquisarPostos は、ある地域で指定された種類の燃料を販売しているすべてのステーションについて、価格("1,899 €" を 1.899 に変換)、座標、最終更新日時を返します。地点を指定して検索する場合、サーバーは国全体のデータ(約 1 MB)を取得し、距離で絞り込みます。GetDadosPosto は、1 つのステーションの詳細を返します。
  • EV: 2 つの DATEX II フィードは、Python 標準搭載の xml.etree.ElementTree.XMLPullParser を使って、充電サイトごとに逐次解析されます。運営会社によってはサイトをまたいで単独のポイント ID を再利用するため、ステータスと価格は(サイト ID、ポイント ID)で在庫データと結合されます。リクエストでは If-None-Match を送信するため、変更のないフィードは再ダウンロードされません。

データソースに変更があった場合や停止している場合、ツールは誤ったデータの代わりに {"error": ...} を返します。

ライセンス

MIT

コメント

MCP は初めてですか?

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

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