KfW Förderungsmittel MCP Server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@KfW Förderungsmittel MCP ServerWelche Programme gibt es für eine neue Wärmepumpe in meinem Eigenheim?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
KfW Funding MCP Server
An MCP (Model Context Protocol) server for querying KfW funding programs for energy-efficient renovations of residential buildings in Germany.
Part of the "Sanierungskompass" (Renovation Compass) platform - connecting homeowners with energy consultants and current KfW financing options.
What is KfW funding?
The Kreditanstalt für Wiederaufbau (KfW) offers low-interest loans and grants for:
Energy-efficient building renovation (BEG - Federal Funding for Efficient Buildings)
Heating replacement and renewable heat sources
Individual measures such as windows, insulation, and ventilation work
Complete renovations to KfW Efficiency House standards
Related MCP server: FluentLab Funding Assistant
Features
4 MCP Tools for KfW data queries
Current KfW program data (2025/2026)
Static fallback database with common programs
Interest rates and loan conditions with calculation
Repayment subsidy determination (grant-financed loan portion)
Type-safe implementation in TypeScript
Installation
NPM Package
npm install @sanierungskompass/kfw-mcpFrom Source
git clone https://github.com/timfellendorf/kfw-mcp.git
cd kfw-mcp
npm install
npm run buildUsage
Start as an MCP Server
npm start
# oder für Entwicklung:
npm run devThe server listens on Stdin/Stdout in the MCP protocol format.
Configure with Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or the equivalent on Windows/Linux:
{
"mcpServers": {
"kfw-foerdermittel": {
"command": "node",
"args": ["/pfad/zu/kfw-mcp/dist/index.js"]
}
}
}Then activate the server in Claude.
With 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 werdenAvailable Tools
1. kfw_list_programs
Lists all available KfW programs for residential building renovation.
Input: No parameters required
Output: Array of programs (ID, Name, Type, Category, Description)
Example:
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
Retrieves detailed information about a specific KfW program.
Parameters:
program_number(string, required): KfW program number (e.g., "358", "261", "458", "459")
Output: Detailed program information
Example:
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
Checks which KfW programs are suitable for a specific renovation measure.
Parameters:
measure(string, required): Renovation measure (e.g., "window replacement", "roof insulation", "heating replacement", "heat pump")building_type(string, optional): Building type (e.g., "residential building")is_owner_occupied(boolean, optional): Owner-occupied?
Output: Applicable programs with recommendations
Example:
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
Calculates estimated loan installments and funding amounts for a KfW program.
Parameters:
program(string, required): KfW program number (e.g., "358", "458")loan_amount(number, required): Loan amount/grant amount in EURterm_years(number, optional): Term in years (Default: 15 years for loans)
Output: Calculation with monthly installment, total burden, interest rate, and repayment subsidy
Example:
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"
}For grants (e.g., 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"
}Supported KfW Programs
Number | Name | Type | Category |
358 | Supplementary loan for individual measures | Loan | BEG Individual Measures |
359 | Loan for renovation measures | Loan | BEG Complete Renovation |
261 | Residential building efficiency house loan | Loan | BEG Efficiency House |
458 | Heating subsidy | Grant | BEG Heating |
459 | Grant for individual measures | Grant | BEG Individual Measures |
(Other programs like 455, 440, 461 as legacy programs in the dataset)
Program Logic
Data Acquisition
Primary: Fallback to static database (
src/data/kfw-programs.json)Secondary: Attempt to scrape live data from
https://www.kfw.de/inlandsfoerderung/Privatpersonen/Bestandsimmobilien/In case of scraping error → Static data is used automatically
Funding Amount Calculation
For loans:
Monthly installment: Standardized annuity formula with compound interest
Repayment subsidy is deducted from the loan base
Effective interest rate according to KfW specifications
For grants:
Percentage subsidy on total costs
KfW 458: Base 30% + bonus surcharges (up to 70% max)
KfW 459: Base 15% + standards (up to 25% max)
Development
Project Structure
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.mdBuild and Test
# TypeScript compilieren
npm run build
# Server starten
npm start
# Entwicklungsmodus (mit Auto-Rebuild)
npm run devUpdate Data
Program and interest rate data can be updated in src/data/kfw-programs.json:
{
"programs": [
{
"id": "358",
"name": "KfW 358 - ...",
"interestRate": { "current": 2.75, "unit": "% p.a. effektiv" },
...
}
]
}License
MIT License - See LICENSE file
Contact
Tim Fellendorf timfellendorf@googlemail.com
Part of the Sanierungskompass project to support energy-efficient building renovation in Germany.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
AlicenseNot gradedqualityNot gradedmaintenanceProvides large language models with access to news and information about renewable energy projects in Germany, allowing filtering by location, topic (solar, wind, hydrogen), and date range.- AlicenseAqualityDmaintenanceProvides access to FluentLab's funding database, enabling users to search for funding opportunities and retrieve document checklists required for specific funding programme applications.113MIT
- AlicenseNot gradedqualityAmaintenance87+ specialized tools for German and European energy data. Direct AI access to Marktstammdatenregister (MaStR), ENTSO-E, Redispatch 2.0, and Grid Operations for utilities and datacenters.2GPL 3.0
- AlicenseNot gradedqualityDmaintenanceProvides programmatic access to official German Bundestag parliamentary data, enabling LLMs to answer questions about legislation, voting records, and members.1MIT
Related MCP Connectors
Live EU funding data in your AI: grant calls, programmes, consortium partners, VCs, incubators.
German Handelsregister + Austrian Firmenbuch for AI agents: master data, financials & ratios.
Broker-only credit/lending discovery shim for AI agents
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/tife89/kfw-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server