elster-mcp-server
A community-built Model Context Protocol server that allows AI agents to drive the German tax portal ELSTER via Puppeteer. It enables users to submit UStVA forms, prepare EUER/ESt tax returns, and sync inbox history using credentials provided by the user.
Package and access
Local package with source-attributed installation metadata. Koskamo does not execute packages during review.
What you can do with it
- Submit UStVA tax forms
- Prepare EUER/ESt tax returns
- Sync inbox and history
Source and maintenance
- Maintenance checked
Packages and installation
Source-provided package data. Koskamo has not executed or live-probed this package.
elster-mcp-server 0.1.0
{
"version": "0.1.0",
"transport": "stdio",
"identifier": "elster-mcp-server",
"registryType": "npm",
"environmentVariables": [
{
"name": "ELSTER_CONFIG_PATH",
"format": "string",
"description": "Path to a config.json that holds all settings below. Recommended."
},
{
"name": "ELSTER_PFX_PATH",
"format": "string",
"description": "Absolute path to your ELSTER certificate (.pfx)."
},
{
"name": "ELSTER_PASSWORD",
"format": "string",
"description": "Password for the .pfx certificate."
},
{
"name": "ELSTER_TAX_NUMBER",
"format": "string",
"description": "Your Steuernummer in the format issued by your Finanzamt."
},
{
"name": "ELSTER_STATE_CODE",
"format": "string",
"description": "Two-digit ELSTER federal-state code of your Finanzamt."
},
{
"name": "ELSTER_NAME",
"format": "string",
"description": "Last name / company name."
},
{
"name": "ELSTER_FIRST_NAME",
"format": "string",
"description": "First name."
},
{
"name": "ELSTER_STREET",
"format": "string",
"description": "Street."
},
{
"name": "ELSTER_HOUSE_NUMBER",
"format": "string",
"description": "House number."
},
{
"name": "ELSTER_ZIP",
"format": "string",
"description": "ZIP code."
},
{
"name": "ELSTER_CITY",
"format": "string",
"description": "City."
},
{
"name": "ELSTER_COUNTRY",
"format": "string",
"description": "ISO country code, default DE."
},
{
"name": "ELSTER_HEADLESS",
"format": "string",
"description": "Run Chromium headless (true/false). Default true."
},
{
"name": "ELSTER_EST_SKIP_EUR",
"format": "string",
"description": "If 1, skip the EUER pre-hook in ESt sessions."
}
]
}Tools
Reported by the attributed source; not independently observed by Koskamo.
Connect from your client
Each snippet configures the same source-provided package; replace placeholders before use.
Cursor
{
"mcpServers": {
"elster-mcp-server": {
"command": "npx",
"args": [
"-y",
"elster-mcp-server@0.1.0"
],
"env": {
"ELSTER_CONFIG_PATH": "<YOUR_ELSTER_CONFIG_PATH>",
"ELSTER_PFX_PATH": "<YOUR_ELSTER_PFX_PATH>",
"ELSTER_PASSWORD": "<YOUR_ELSTER_PASSWORD>",
"ELSTER_TAX_NUMBER": "<YOUR_ELSTER_TAX_NUMBER>",
"ELSTER_STATE_CODE": "<YOUR_ELSTER_STATE_CODE>",
"ELSTER_NAME": "<YOUR_ELSTER_NAME>",
"ELSTER_FIRST_NAME": "<YOUR_ELSTER_FIRST_NAME>",
"ELSTER_STREET": "<YOUR_ELSTER_STREET>",
"ELSTER_HOUSE_NUMBER": "<YOUR_ELSTER_HOUSE_NUMBER>",
"ELSTER_ZIP": "<YOUR_ELSTER_ZIP>",
"ELSTER_CITY": "<YOUR_ELSTER_CITY>",
"ELSTER_COUNTRY": "<YOUR_ELSTER_COUNTRY>",
"ELSTER_HEADLESS": "<YOUR_ELSTER_HEADLESS>",
"ELSTER_EST_SKIP_EUR": "<YOUR_ELSTER_EST_SKIP_EUR>"
}
}
}
}Cline
{
"mcpServers": {
"elster-mcp-server": {
"command": "npx",
"args": [
"-y",
"elster-mcp-server@0.1.0"
],
"env": {
"ELSTER_CONFIG_PATH": "<YOUR_ELSTER_CONFIG_PATH>",
"ELSTER_PFX_PATH": "<YOUR_ELSTER_PFX_PATH>",
"ELSTER_PASSWORD": "<YOUR_ELSTER_PASSWORD>",
"ELSTER_TAX_NUMBER": "<YOUR_ELSTER_TAX_NUMBER>",
"ELSTER_STATE_CODE": "<YOUR_ELSTER_STATE_CODE>",
"ELSTER_NAME": "<YOUR_ELSTER_NAME>",
"ELSTER_FIRST_NAME": "<YOUR_ELSTER_FIRST_NAME>",
"ELSTER_STREET": "<YOUR_ELSTER_STREET>",
"ELSTER_HOUSE_NUMBER": "<YOUR_ELSTER_HOUSE_NUMBER>",
"ELSTER_ZIP": "<YOUR_ELSTER_ZIP>",
"ELSTER_CITY": "<YOUR_ELSTER_CITY>",
"ELSTER_COUNTRY": "<YOUR_ELSTER_COUNTRY>",
"ELSTER_HEADLESS": "<YOUR_ELSTER_HEADLESS>",
"ELSTER_EST_SKIP_EUR": "<YOUR_ELSTER_EST_SKIP_EUR>"
}
}
}
}VS Code
{
"servers": {
"elster-mcp-server": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"elster-mcp-server@0.1.0"
],
"env": {
"ELSTER_CONFIG_PATH": "<YOUR_ELSTER_CONFIG_PATH>",
"ELSTER_PFX_PATH": "<YOUR_ELSTER_PFX_PATH>",
"ELSTER_PASSWORD": "<YOUR_ELSTER_PASSWORD>",
"ELSTER_TAX_NUMBER": "<YOUR_ELSTER_TAX_NUMBER>",
"ELSTER_STATE_CODE": "<YOUR_ELSTER_STATE_CODE>",
"ELSTER_NAME": "<YOUR_ELSTER_NAME>",
"ELSTER_FIRST_NAME": "<YOUR_ELSTER_FIRST_NAME>",
"ELSTER_STREET": "<YOUR_ELSTER_STREET>",
"ELSTER_HOUSE_NUMBER": "<YOUR_ELSTER_HOUSE_NUMBER>",
"ELSTER_ZIP": "<YOUR_ELSTER_ZIP>",
"ELSTER_CITY": "<YOUR_ELSTER_CITY>",
"ELSTER_COUNTRY": "<YOUR_ELSTER_COUNTRY>",
"ELSTER_HEADLESS": "<YOUR_ELSTER_HEADLESS>",
"ELSTER_EST_SKIP_EUR": "<YOUR_ELSTER_EST_SKIP_EUR>"
}
}
}
}Claude Desktop
{
"mcpServers": {
"elster-mcp-server": {
"command": "npx",
"args": [
"-y",
"elster-mcp-server@0.1.0"
],
"env": {
"ELSTER_CONFIG_PATH": "<YOUR_ELSTER_CONFIG_PATH>",
"ELSTER_PFX_PATH": "<YOUR_ELSTER_PFX_PATH>",
"ELSTER_PASSWORD": "<YOUR_ELSTER_PASSWORD>",
"ELSTER_TAX_NUMBER": "<YOUR_ELSTER_TAX_NUMBER>",
"ELSTER_STATE_CODE": "<YOUR_ELSTER_STATE_CODE>",
"ELSTER_NAME": "<YOUR_ELSTER_NAME>",
"ELSTER_FIRST_NAME": "<YOUR_ELSTER_FIRST_NAME>",
"ELSTER_STREET": "<YOUR_ELSTER_STREET>",
"ELSTER_HOUSE_NUMBER": "<YOUR_ELSTER_HOUSE_NUMBER>",
"ELSTER_ZIP": "<YOUR_ELSTER_ZIP>",
"ELSTER_CITY": "<YOUR_ELSTER_CITY>",
"ELSTER_COUNTRY": "<YOUR_ELSTER_COUNTRY>",
"ELSTER_HEADLESS": "<YOUR_ELSTER_HEADLESS>",
"ELSTER_EST_SKIP_EUR": "<YOUR_ELSTER_EST_SKIP_EUR>"
}
}
}
}Let your agent find its tools
Find servers like elster-mcp-server from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.