KfW Förderungsmittel MCP Server
Provides access to KfW funding programs for residential building energy efficiency renovations in Germany. Enables users to list programs, check eligibility, calculate funding amounts, and get detailed information about specific KfW loans and grants.
README
KfW Förderungsmittel MCP Server
Ein MCP (Model Context Protocol) Server für die Abfrage von KfW-Förderprogrammen zur energetischen Sanierung von Wohngebäuden in Deutschland.
Teil der "Sanierungskompass" Plattform - verbindet Hausbesitzer mit Energieberatern und aktuellen KfW-Finanzierungsmöglichkeiten.
Was ist KfW-Förderung?
Die Kreditanstalt für Wiederaufbau (KfW) bietet zinsgünstige Kredite und Zuschüsse für:
- Energetische Gebäudesanierung (BEG - Bundesförderung für effiziente Gebäude)
- Heizungsaustausch und erneuerbare Wärmequellen
- Einzelmaßnahmen wie Fenster, Dämm- und Lüftungsarbeiten
- Gesamtsanierungen zu KfW-Effizienzhaus-Standards
Features
- 4 MCP Tools für KfW-Datenabfragen
- Aktuelle KfW-Programmdaten (2025/2026)
- Statische Fallback-Datenbank mit gängigen Programmen
- Zinssatze und Kreditkonditionen mit Berechnung
- Tilgungszuschuss-Ermittlung (zuschussfinanzierter Darlehensanteil)
- Typ-sichere Implementierung in TypeScript
Installation
NPM Package
npm install @sanierungskompass/kfw-mcp
Aus Source
git clone https://github.com/timfellendorf/kfw-mcp.git
cd kfw-mcp
npm install
npm run build
Verwendung
Als MCP Server starten
npm start
# oder für Entwicklung:
npm run dev
Der Server lauscht auf Stdin/Stdout im MCP-Protokoll-Format.
Mit Claude Desktop konfigurieren
Bearbeiten Sie ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) oder den Äquivalent unter Windows/Linux:
{
"mcpServers": {
"kfw-foerdermittel": {
"command": "node",
"args": ["/pfad/zu/kfw-mcp/dist/index.js"]
}
}
}
Dann in Claude den Server aktivieren.
Mit Claude Code
# Server im Hintergrund starten
npm run dev &
# In Claude Code verwenden:
# - Claude erkennt verfügbare Tools automatisch
# - Tools können direkt in Prompts genutzt werden
Verfügbare Tools
1. kfw_list_programs
Listet alle verfügbaren KfW-Programme für die Wohngebäudesanierung auf.
Eingabe: Keine Parameter erforderlich
Ausgabe: Array mit Programmen (ID, Name, Typ, Kategorie, Beschreibung)
Beispiel:
Claude: "Zeige mir alle verfügbaren KfW-Programme"
Server antwortet mit:
[
{
"id": "358",
"name": "KfW 358 - Ergänzungskredit für Einzelmaßnahmen",
"type": "Kredit",
"category": "BEG - Einzelmaßnahmen",
"description": "Zinsgünstiger Kredit für einzelne energetische Maßnahmen an Wohngebäuden",
"maxLoanAmount": 120000,
"interestRate": {
"current": 2.75,
"unit": "% p.a. effektiv"
}
},
...
]
2. kfw_get_program_details
Ruft detaillierte Informationen zu einem spezifischen KfW-Programm ab.
Parameter:
program_number(string, erforderlich): KfW Programmnummer (z.B. "358", "261", "458", "459")
Ausgabe: Detaillierte Programminformationen
Beispiel:
Claude: "Gib mir Details zum KfW 358 Programm"
Server antwortet mit:
{
"id": "358",
"name": "KfW 358 - Ergänzungskredit für Einzelmaßnahmen",
"type": "Kredit",
"description": "Zinsgünstiger Kredit für einzelne energetische Maßnahmen an Wohngebäuden",
"maxLoanAmount": 120000,
"eligibleMeasures": [
"Fenstertausch",
"Türentausch",
"Dachdämmung",
"Wanddämmung",
"Kellerdeckendämmung",
"Heizungsanlage",
"Lüftungsanlage",
"Solarthermieanlage"
],
"interestRate": {
"current": 2.75,
"unit": "% p.a. effektiv"
},
"maxRepaymentPeriod": 20,
"minRepaymentPeriod": 4,
"tilgungszuschuss": 0,
"notes": "Für einzelne energetische Sanierungsmaßnahmen"
}
3. kfw_check_eligibility
Prüft, welche KfW-Programme für eine bestimmte Sanierungsmaßnahme geeignet sind.
Parameter:
measure(string, erforderlich): Sanierungsmaßnahme (z.B. "Fenstertausch", "Dachdämmung", "Heizungsaustausch", "Wärmepumpe")building_type(string, optional): Gebäudetyp (z.B. "Wohngebäude")is_owner_occupied(boolean, optional): Eigengenutzt?
Ausgabe: Anwendbare Programme mit Empfehlungen
Beispiel:
Claude: "Welche KfW-Programme gibt es für Wärmepumpen?"
Server antwortet mit:
{
"measure": "Wärmepumpe",
"applicablePrograms": [
{
"id": "458",
"name": "KfW 458 - Heizungsförderung",
"type": "Zuschuss",
"eligibilityNotes": "30% Basis + bis zu 40% Bonuszuschläge = max 70%"
},
{
"id": "359",
"name": "KfW 359 - Kredit für Sanierungsmaßnahmen",
"type": "Kredit",
"eligibilityNotes": "Umfassende Sanierung mit Effizienzhaus-Standard"
}
],
"matchCount": 2,
"recommendations": [
"Zuschuss- und Kreditprogramme verfügbar - vergleichen Sie die Konditionen.",
"Zuschuss-Programme erfordern keine Rückzahlung.",
"Kredit-Programme bieten zinsgünstige Darlehen."
]
}
4. kfw_calculate_funding
Berechnet die geschätzten Kreditraten und Fördersummen für ein KfW-Programm.
Parameter:
program(string, erforderlich): KfW Programmnummer (z.B. "358", "458")loan_amount(number, erforderlich): Kreditbetrag/Zuschussbetrag in EURterm_years(number, optional): Laufzeit in Jahren (Standard: 15 Jahre für Kredite)
Ausgabe: Berechnung mit monatlicher Rate, Gesamtbelastung, Zinssatz und Tilgungszuschuss
Beispiel:
Claude: "Berechne die monatliche Rate für einen 50.000€ Kredit im KfW 358 über 15 Jahre"
Server antwortet mit:
{
"program": "358",
"loanAmount": 50000,
"termYears": 15,
"type": "Kredit",
"monthlyPayment": 351.24,
"totalPayment": 63223.0,
"totalInterest": 13223.0,
"effectiveInterestRate": 2.75,
"tilgungszuschuss": 0,
"netLoanAmount": 50000,
"notes": "Zinssatz: 2.75% p.a. effektiv"
}
Für Zuschüsse (z.B. KfW 458):
Claude: "Berechne den Zuschuss für eine 15.000€ Wärmepumpen-Anlage im KfW 458"
Server antwortet mit:
{
"program": "458",
"loanAmount": 15000,
"type": "Zuschuss",
"monthlyPayment": 0,
"tilgungszuschuss": 10500,
"netLoanAmount": 4500,
"subsidyPercentage": 70,
"notes": "70% Zuschuss = 10500€ nicht rückzahlbar"
}
Unterstützte KfW-Programme
| Nummer | Name | Typ | Kategorie |
|---|---|---|---|
| 358 | Ergänzungskredit für Einzelmaßnahmen | Kredit | BEG Einzelmaßnahmen |
| 359 | Kredit für Sanierungsmaßnahmen | Kredit | BEG Vollsanierung |
| 261 | Wohngebäude Kredit Effizienzhaus | Kredit | BEG Effizienzhaus |
| 458 | Heizungsförderung | Zuschuss | BEG Heizung |
| 459 | Zuschuss Einzelmaßnahmen | Zuschuss | BEG Einzelmaßnahmen |
(Weitere Program wie 455, 440, 461 als Auslaufprogramme im Datensatz)
Programmlogik
Datenbeschaffung
- Primär: Fallback auf statische Datenbank (
src/data/kfw-programs.json) - Sekundär: Versuch, Live-Daten von
https://www.kfw.de/inlandsfoerderung/Privatpersonen/Bestandsimmobilien/zu scrapen - Bei Scraping-Fehler → Statische Daten werden automatisch genutzt
Fördersumme-Berechnung
Für Kredite:
- Monatliche Rate: Standardisierte Annuitättenformel mit Zinseszins
- Tilgungszuschuss wird von der Kreditbasis abgezogen
- Effektiver Zinssatz nach KfW-Vorgaben
Für Zuschüsse:
- Prozentuale Bezuschussung auf Gesamtkosten
- KfW 458: Basis 30% + Bonuszuschläge (bis 70% max)
- KfW 459: Basis 15% + Standards (bis 25% max)
Entwicklung
Projekt-Struktur
kfw-mcp/
├── src/
│ ├── index.ts # MCP Server Entry Point
│ ├── tools/
│ │ ├── listPrograms.ts # Tool 1: Programmübersicht
│ │ ├── programDetails.ts # Tool 2: Details
│ │ ├── checkEligibility.ts # Tool 3: Eignung
│ │ └── calculateFunding.ts # Tool 4: Berechnung
│ ├── utils/
│ │ └── scraper.ts # Web-Scraping-Hilfsfunktionen
│ └── data/
│ └── kfw-programs.json # Statische Programmdatenbank
├── dist/ # Kompilierte JavaScript-Dateien
├── package.json
├── tsconfig.json
└── README.md
Build und Test
# TypeScript compilieren
npm run build
# Server starten
npm start
# Entwicklungsmodus (mit Auto-Rebuild)
npm run dev
Daten aktualisieren
Programm- und Zinssatzdaten können in src/data/kfw-programs.json aktualisiert werden:
{
"programs": [
{
"id": "358",
"name": "KfW 358 - ...",
"interestRate": { "current": 2.75, "unit": "% p.a. effektiv" },
...
}
]
}
Lizenz
MIT License - Siehe LICENSE Datei
Kontakt
Tim Fellendorf timfellendorf@googlemail.com
Teil des Sanierungskompass-Projekts zur Unterstützung energetischer Gebäudesanierung in Deutschland.
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.