E-Geier

io.github.haraldrohan由 GitHub 账号 haraldrohan 发布v0.1.2更新于 Oct 1, 2026

Cheapest fuel prices in Austria from the public E-Control Spritpreisrechner API. Unofficial.

已验证STDIO仅桌面位置与生活金融

概览

AI 生成的概览

本地 MCP 服务器,让 AI 助手借助 E-Control 公开油价数据和 OpenStreetMap 地理编码,查找奥地利最便宜的加油站。

可以做什么
按地点或地址查找附近最便宜的加油站,返回价格、地址、直线距离、是否营业和导航链接,支持柴油、Super 95 和天然气,可选择包含已关闭的站点。按联邦州或区查找最便宜的加油站,市镇和邮政编码会自动对应到区。列出所有联邦州及其下属区。燃料名称支持德语和英语写法。
适用场景
适合让助手回答奥地利日常油价问题,例如某城镇附近最便宜的柴油、某城市当前最低的 Super 价格、附近哪家加油站仍在营业,或比较不同区之间的价格。
运行要求
以 .NET 10 SDK 或运行时在本地运行,可通过 dnx 使用 NuGet 包或安装为全局 .NET 工具;需要 Claude Desktop 等桌面 MCP 客户端。无需账号或 API 密钥。需要能访问 OpenStreetMap Nominatim 和 E-Control Spritpreisrechner API。可选设置 NominatimEmail 作为联系邮箱,以及 NominatimBaseAddress 使用自建地理编码实例。
安装前请注意
该项目已停止维护,NuGet 包被标记为已弃用;运营方表示未批准第三方使用该价格接口。所有工具均为只读,但输入的地点或地址会发送给 OpenStreetMap Nominatim,坐标或区域代码会发送给 E-Control API。价格不保证准确或及时,以加油机显示的价格为准。

安装

在 SourceWeft 中

  1. 打开 控制台中的 E-Geier,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

[图片]

E-Geier

[!WARNING] Dieses Projekt ist eingestellt (Oktober 2026). Die E-Control Austria hat auf Anfrage mitgeteilt, dass die Preisdaten laut Auslegung des zuständigen Ministeriums nur über www.spritpreisrechner.at veröffentlicht werden sollen und dass es für die Nutzung der Schnittstelle durch Dritte keine Genehmigung gibt. E-Geier wird deshalb nicht weiterentwickelt, die NuGet-Pakete sind als veraltet markiert. Bitte nutze den offiziellen Spritpreisrechner.

This project is discontinued (October 2026). E-Control Austria stated on request that, according to the responsible ministry, the price data is meant to be published only via www.spritpreisrechner.at and that third-party use of the interface is not approved. E-Geier is no longer developed and the NuGet packages are deprecated. Please use the official Spritpreisrechner.

[NuGet EGeier.Net] [NuGet EGeier.Mcp] [CI]

Wo tanke ich in der Nähe von Mödling am günstigsten Diesel? – E-Geier lässt deinen KI-Assistenten diese Frage beantworten.

E-Geier ist eine .NET-Bibliothek und ein lokaler MCP-Server für die öffentlichen APIs der E-Control Austria. Den Anfang macht der Spritpreisrechner; das Ladestellenverzeichnis für E-Autos soll folgen.

Warum „E-Geier“? Der Geier kreist geduldig über der Landschaft und stürzt sich dann zielsicher auf das günstigste Angebot. Das „E“ steht für Energie – Sprit heute, Strom morgen. Mit Bindestrich, bitte: Wir sind kein „Egeier“. 🦅⛽

[!IMPORTANT] Nicht mit der E-Control Austria verbunden. Alle Daten stammen aus der öffentlichen Spritpreisrechner-API. Keine Gewähr für Richtigkeit oder Aktualität.

Not affiliated with E-Control Austria. All data comes from the public Spritpreisrechner (fuel price calculator) API. No guarantee of accuracy or timeliness.

PaketInhalt
EGeier.NetBibliothek: Client für die Spritpreisrechner-API, Geocoding über OpenStreetMap Nominatim
EGeier.McpMCP-Server (stdio), der lokal bei dir läuft

E-Geier ist ein Open-Source-Hobbyprojekt: kein gehosteter Dienst, keine Zugangsdaten, keine API-Schlüssel. Alles läuft auf deinem Rechner.

MCP-Server

Werkzeuge

Alle Werkzeuge lesen nur.

WerkzeugWas es tut
find_cheapest_stations(location, fuel_type, include_closed = false)Ort oder Adresse → günstigste Tankstellen in der Nähe, mit Preis, Adresse, Luftlinie, geöffnet ja/nein und Navigationslink
find_stations_by_region(region, fuel_type, include_closed = false)Günstigste Tankstellen in einem Bundesland oder Bezirk, z. B. „Steiermark“, „Bezirk Mödling“, „Favoriten“. Gemeinden und Postleitzahlen werden dem Bezirk zugeordnet.
list_regions()Alle Bundesländer mit ihren Bezirken

Kraftstoffe: diesel, super (Super 95) und cng (Erdgas). Deutsche und englische Bezeichnungen wie „Benzin“ oder „petrol“ funktionieren auch.

Installation

Voraussetzungen

.NET 10 SDK oder Runtime.

Einrichtung in Claude Desktop

Öffne Einstellungen → Entwickler → Konfiguration bearbeiten und ergänze claude_desktop_config.json:

Über NuGet (dnx ist ab dem .NET 10 SDK dabei):

json
{  "mcpServers": {    "e-geier": {      "command": "dnx",      "args": ["EGeier.Mcp", "--yes"]    }  }}

Alternativ als globales .NET-Tool:

sh
dotnet tool install --global EGeier.Mcp
json
{  "mcpServers": {    "e-geier": {      "command": "e-geier-mcp"    }  }}

Aus dem Quellcode:

sh
git clone https://github.com/haraldrohan/e-geier.gitcd e-geierdotnet build -c Release
json
{  "mcpServers": {    "e-geier": {      "command": "dotnet",      "args": ["run", "--project", "C:\\Pfad\\zu\\e-geier\\src\\EGeier.Mcp", "-c", "Release", "--no-build"]    }  }}

Danach Claude Desktop neu starten. Andere MCP-fähige Clients (VS Code, Claude Code, …) werden genauso mit einem stdio-Befehl eingerichtet, z. B. in Claude Code:

sh
claude mcp add e-geier -- dnx EGeier.Mcp --yes
Konfiguration (optional)

Es ist nichts zu konfigurieren. Wer die Geocoding-Anfragen mit einer Kontaktadresse versehen will (von OpenStreetMap bei häufiger Nutzung empfohlen), setzt eine Umgebungsvariable:

json
"env": { "Nominatim__Email": "[email protected]" }

Mit Nominatim__BaseAddress lässt sich eine eigene Nominatim-Instanz verwenden.

Beispiel-Fragen

  • „Wo tanke ich in der Nähe von Mödling am günstigsten Diesel?“
  • „Was kostet Super in Graz gerade am wenigsten?“
  • „Ich bin in der Mariahilfer Straße in Wien – welche Tankstelle hat jetzt noch offen und ist billig?“
  • „Gibt es in Niederösterreich eine günstige CNG-Tankstelle?“
  • „Vergleich die Dieselpreise in den Bezirken Mödling und Baden.“
  • „Welche Bezirke gibt es in Tirol?“

Bibliothek

sh
dotnet add package EGeier.Net
csharp
using EGeier;using EGeier.Geocoding;using EGeier.Sprit;
services.AddSpritClient();services.AddNominatimGeocoder();
// ...
var place = await geocoder.GeocodeAsync("Mödling");var stations = await sprit.SearchByLocationAsync(place!.Latitude, place.Longitude, FuelType.Diesel);
foreach (var station in stations.Where(s => s.Prices.Count > 0)){    Console.WriteLine($"{station.GetPrice(FuelType.Diesel):0.000} €  {station.Name}, {station.Location?.City} ({station.DistanceKm:0.0} km)");}

Ohne Dependency Injection geht es auch: new SpritClient(new HttpClient()).

Überblick:

  • ISpritClient – SearchByLocationAsync, SearchByRegionAsync, GetRegionsAsync, GetAdministrativeUnitsAsync, PingAsync, GetMonitoringAsync
  • FuelType – Diesel, Super95, Cng (keine Magic Strings)
  • RegionResolver – findet zu „Bezirk Mödling“, „Graz“, „Perchtoldsdorf“ oder „2340“ den passenden Regionscode
  • IGeocoder / NominatimGeocoder – austauschbar; die Nominatim-Implementierung ist auf Österreich beschränkt, hält max. 1 Anfrage pro Sekunde ein, sendet einen eigenen User-Agent und cacht Ergebnisse 24 Stunden
  • SpritApiException – verständliche Fehlermeldungen, inkl. DuringNoonPriceUpdate

Gut zu wissen über die API

  • Die Suche nach Koordinaten liefert bis zu 10 Tankstellen, Preise aber nur für die günstigsten (gesetzliche Vorgabe). Die Suche nach Region liefert die 5 günstigsten.
  • Preiserhöhungen sind in Österreich nur um 12:00 Uhr erlaubt. Rund um diese Zeit ist die API oft ein paar Minuten nicht erreichbar; E-Geier meldet das mit einem entsprechenden Hinweis.
  • DistanceKm ist Luftlinie in Kilometern und bei der Regionssuche immer 0.

Entwicklung

sh
dotnet builddotnet test --project tests/EGeier.Tests                               # offline, mit aufgezeichneten API-AntwortenEGEIER_LIVE_TESTS=1 dotnet test --project tests/EGeier.IntegrationTests  # gegen die echte API

Ohne EGEIER_LIVE_TESTS=1 werden die Live-Tests übersprungen.

Datenschutz

E-Geier läuft auf deinem Rechner. Die Anfragen gehen direkt von dort an die unten genannten Dienste; der Autor erhält keine Daten.

  • Was verarbeitet wird: nur die Angaben eines Werkzeug-Aufrufs, also Ort oder Adresse, Kraftstoff und Region. E-Geier erhält keine Chatverläufe, keine Konto- oder Profildaten.
  • Weitergabe: Ort oder Adresse gehen an OpenStreetMap Nominatim, um Koordinaten zu ermitteln. Koordinaten bzw. Regionscode gehen an die Spritpreisrechner-API der E-Control Austria.
  • Speicherung: Keine Datenbank, keine Cookies, kein Tracking. Geocoding-Ergebnisse werden bis zu 24 Stunden im Arbeitsspeicher zwischengespeichert; nach einem Neustart ist alles weg. E-Geier legt keine dauerhaften Protokolle an.
  • Kontakt: GitHub Issues

Datenquellen und Lizenzen

Haftungsausschluss / Disclaimer

Deutsch: E-Geier ist nicht mit der E-Control Austria verbunden. Alle Daten stammen aus der öffentlichen Spritpreisrechner-API. Keine Gewähr für Richtigkeit oder Aktualität. Maßgeblich ist der an der Zapfsäule angezeigte Preis.

English: E-Geier is not affiliated with E-Control Austria. All data comes from the public Spritpreisrechner API. No guarantee of accuracy or timeliness. The price shown at the pump is what counts.

来源:README.md,提交 1b65e67

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.2最新Sep 29, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分