About Commerce for Agents
Compare US mobile plans, VPNs, travel eSIMs, home internet by address, and German energy tariffs
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://mcp.commerceforagents.com/mcpclaude mcp add --transport http com-commerceforagents-commerceforagents https://mcp.commerceforagents.com/mcp{"mcpServers":{"com-commerceforagents-commerceforagents":{"type":"http","url":"https://mcp.commerceforagents.com/mcp"}}}Open in Cursor{"servers":{"com-commerceforagents-commerceforagents":{"type":"http","url":"https://mcp.commerceforagents.com/mcp"}}}Open in VS Code{"mcpServers":{"com-commerceforagents-commerceforagents":{"type":"http","url":"https://mcp.commerceforagents.com/mcp"}}}{"mcpServers":{"com-commerceforagents-commerceforagents":{"serverUrl":"https://mcp.commerceforagents.com/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
Tools
9| Parameter | Type | Required | Description |
|---|---|---|---|
| page | integer | No | Result page (1-based). The response reports totalResults; request further pages to see more of the ranking. |
| limit | integer | No | Tariffs per page. Default: 10, max 20. |
| sortBy | enum | No | Market-wide sort: "price" (first-year total, default), "rating" (customer rating, best first), "providerName".price | rating | providerName |
| district | string | No | City district (Ortsteil), only needed when the response reports multiple districts for the postal code and the user's district changes the result. |
| language | enum | No | Language of the conversation. The widget's texts and its follow-up messages use it; omit only if unsure, then the user's interface locale is used.de | en |
| bonusMode | enum | No | How one-time bonuses count in prices and ranking. "compliant" (default): only bonuses meeting consumer-protection guidelines; "all": every bonus; "none": prices without any bonus.compliant | all | none |
| greenOnly | boolean | No | Only eco tariffs (EU EmpCo definition): electricity from 100% renewable energy proven by guarantees of origin; gas with a declared biogas/hydrogen share. CO2-compensated ("Klimagas", "klimaneutral") tariffs are NOT eco. Default: false. |
| providers | array | No | Only offers from these providers (names, e.g. ["Vattenfall", "E WIE EINFACH"]). Restricts the ranking to these providers. |
| energyType | enum | No | Which energy contract to compare: "electricity" (Strom) or "gas". Default: "electricity".electricity | gas |
| postalCode | string | Yes | German postal code (Postleitzahl) — 5 digits, e.g. "10115" for Berlin. |
| regionalOnly | boolean | No | Only regional providers / local utilities. Default: false. |
| currentTariff | string | No | The user's current tariff name, if known (e.g. from the bill). |
| goodRatingOnly | boolean | No | Only providers with good customer ratings (market operator's threshold). Default: false. |
| includeDeposit | boolean | No | Include tariffs requiring a deposit (Kaution). Default: false. |
| cancellationMax | enum | No | Maximum cancellation period (Kündigungsfrist). Omit = no filter.1_month | 6_weeks | 3_months |
| currentProvider | string | No | The user's current provider, if known (e.g. from the bill). |
| contractMonthsMax | any | No | Maximum initial contract duration in months (1, 3, 6, 12 or 24). Default: no limit. |
| includePrepayment | boolean | No | Include tariffs requiring prepayment (Vorauskasse). Default: false. |
| annualConsumptionKwh | integer | Yes | The household's actual annual consumption in kWh, from the user or their last bill; no default. The ranking depends on it. Typical values by household size: electricity ~1500 (1 person), 2500 (2), 3500 (3), 4500 (4+); gas ~9000 (flat), ~20000 (house). |
| currentAnnualCostEur | number | No | The user's ONGOING yearly cost on their current contract in EUR: current prices, one-time bonuses EXCLUDED. Not the bill total: a new-customer bonus is paid once, so the total of a bonus year understates what they pay next year. Compute Arbeitspreis × kWh / 100 + 12 × Grundpreis (post-increase prices if the bill announces one), or better: pass currentWorkingPriceCtKwh + currentBasePriceEurMonth and let the server compute it. When given, savings are computed against this instead of the default utility tariff. |
| includeDynamicTariffs | boolean | No | Include dynamic (spot-price) tariffs whose first-year price is only a forecast. Default: false, since most German households book fixed-price tariffs. |
| includePackageTariffs | boolean | No | Include kWh-package tariffs (Pakettarife). Default: false. |
| maxTariffsPerProvider | integer | No | Tariffs per provider in the ranking. Default 1 (best per provider); 0 = all tariffs of every provider. |
| priceGuaranteeMonthsMin | any | No | Minimum price-guarantee duration in months. null = no filter (default). |
| currentBasePriceEurMonth | number | No | Grundpreis of the user's current contract in EUR per month, gross (a yearly Grundpreis divided by 12). |
| currentMonthlyPaymentEur | number | No | The FUTURE monthly payment (Abschlag) stated on the bill for the coming period, e.g. 'Ihr monatlicher Zahlbetrag beträgt zukünftig 159,00 €'. It already reflects price changes after the billing period, which the bill's Arbeitspreis/Grundpreis lines predate. Takes precedence over the price components. |
| currentWorkingPriceCtKwh | number | No | Arbeitspreis of the user's current contract in ct/kWh, gross, as printed on the bill (the new price if an increase is announced). Together with currentBasePriceEurMonth the server computes the ongoing yearly cost itself — preferred over currentAnnualCostEur. |
Details
The maintainer has not added details yet. Check the README in the repository.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.