Portugal Fuel & EV Charging について
Portugal Fuel & EV Chargingは、ポルトガルの燃料価格と公共EV充電器を調べる読み取り専用MCPサーバーです。DGEGとMOBI.Eのデータを使い、場所、コネクター、出力、利用状況で絞り込めます。
主な機能
- 01最安の給油所を検索
- 02地域や距離で給油所を絞り込み
- 03営業時間とサービスの確認
- 04近くの公共EV充電器を検索
- 05出力やコネクターで充電器を絞り込み
- 06稼働状況と公開料金の確認
活用シーン
- 01地域ごとの燃料価格の比較
- 02燃料種別に近くの給油所を検索
- 03指定地点付近の利用可能な充電器を検索
- 04充電器のコネクター、状態、公開料金を確認
MCP 対応
MCPクライアントに燃料価格、給油所詳細、燃料種別、充電器検索、充電器詳細のツールを提供します。データはDGEGとMOBI.Eの公開情報に基づきます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
5掲載時のツール一覧 · 6 日前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| lat | any | いいえ | |
| lon | any | いいえ | |
| brand | any | いいえ | |
| limit | integer | いいえ | |
| district | any | いいえ | |
| fuel_type | string | はい | |
| radius_km | number | いいえ | |
| municipality | any | いいえ |
詳細
翻訳後に原文が更新されています。最新の内容は原文をご確認ください。
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、最大100min_power_kw— 急速 DC 充電の場合は、例として50connector—"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
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。