etf-tax

European UCITS ETF data with German tax intelligence.

Community: Submitted by a user or imported; check the owner before granting accessOnlineNo sign-inGlobalFreeRead-only

What it can do

  • Search Etfs: Search and filter the European UCITS ETF universe. Args: query: Search term matched against ETF Name, ISIN, or Ticker. domicile: Filter by domicile country (e.g., 'Ireland', 'Luxembourg')
  • Get Etf Details: Retrieve comprehensive details for a specific ETF by its ISIN. Args: isin: The International Securities Identification Number (ISIN) of the ETF.
  • Calculate Tax Efficiency: Calculate and analyze the tax efficiency score for a given ETF. Returns a detailed breakdown of scoring factors relevant for EU investors. Args: isin: The ISIN of the ETF to

What data it sees

Do you need an account

No: the server works without sign-in

European UCITS ETF data with German tax intelligence. 12 tools for search, tax calculations (Vorabpauschale, Wegzugsbesteuerung, Teilfreistellung), portfolio overlap analysis, and tax-aware rebalancing. Built for German investors.

Server tool list (12)

Raw names from tools/list. Only developers need these.

search_etfs Search and filter the European UCITS ETF universe. Args: query: Search term matched against ETF Name, ISIN, or Ticker. domicile: Filter by domicile country (e.g., 'Ireland', 'Luxembourg'). accumulating_only: If True, only returns accumulating ETFs (tax-efficient). max_ter: Maximum Total Expense Ratio (TER), e.g. 0.002 (0.20%). min_aum: Minimum fund size (Assets Under Management) in EUR millions. limit: Limit the number of search results returned (defaults to 15).
get_etf_details Retrieve comprehensive details for a specific ETF by its ISIN. Args: isin: The International Securities Identification Number (ISIN) of the ETF.
calculate_tax_efficiency Calculate and analyze the tax efficiency score for a given ETF. Returns a detailed breakdown of scoring factors relevant for EU investors. Args: isin: The ISIN of the ETF to analyze.
refresh_etf_data Trigger a scrape of JustETF to fetch fresh ETF data and update the local cache. This runs in the background and may take a few minutes to complete.
generate_612_chart Generate 6-week and 12-month ETF performance data with year-over-year comparison. Returns structured JSON with weekly/monthly returns, cumulative growth curves, and summary metrics including inflation-adjusted purchasing power. Use Yahoo Finance ticker symbols (e.g., VWCE.DE for Xetra-listed ETFs). Args: tickers: List of Yahoo Finance ticker symbols (e.g., ["VWCE.DE", "CSPX.L"]). inflation_rate: Annual inflation rate as decimal (e.g., 0.022 for 2.2%). Defaults to current Eurozone rate. render: If True, also includes a Plotly JSON spec ({data, layout}) for direct rendering.
calculate_vorabpauschale_tool Calculate the annual Vorabpauschale (advance lump-sum tax) for a German-taxable ETF position. The Vorabpauschale is a deemed annual income on accumulating fund shares, taxed in January of the following year regardless of whether the fund distributed anything. It depends on the ECB Basiszins rate published by the Bundesbank. This is a tax calculation tool — not financial advice. Args: isin: ETF ISIN (e.g., "IE00BK5BQT80" for Vanguard FTSE All-World Acc). position_value_jan1: Market value of the position on January 1 of tax_year (EUR). purchase_price: Original total acquisition cost of the position (EUR). tax_year: Calendar year to calculate for (determines Basiszins). Default: 2025. kirchensteuer: Whether church tax applies. Default: False. bundesland: German state for Kirchensteuer rate (e.g., "Bayern" for 8%, default: 9%).
calculate_exit_tax_tool Simulate German exit tax (Wegzugsbesteuerung §6 AStG) on ETF holdings for emigration planning. Since Jan 1 2025, ETF holdings above €500k total acquisition cost trigger exit tax when leaving Germany (if resident ≥7 of last 12 years). This tool simulates the liability and shows deferral/mitigation options. This is a tax simulation tool — not financial or legal advice. Args: positions: List of ETF positions, each a dict with keys: "isin", "purchase_price", "current_value" (all in EUR). years_resident: Years of German tax residency in the last 12 years. Default: 10. destination_country: "EU", "EEA", or "non-EU" — affects deferral options. include_deferral_options: Whether to include mitigation/deferral guidance. Default: True.
calculate_sell_tax_tool Calculate the exact capital gains tax when selling an ETF position in Germany. Accounts for Teilfreistellung (partial exemption), Vorabpauschale credits (no double tax), and Sparerpauschbetrag (€1,000 annual allowance). Useful for evaluating the tax cost of rebalancing before you sell. This is a tax calculation tool — not financial advice. Args: isin: ETF ISIN to sell. purchase_price: Original total acquisition cost of the position (EUR). current_value: Current market value / expected sale proceeds (EUR). previously_paid_vorabpauschale: Total Vorabpauschale already taxed on this position (EUR). Credited against gains. sparerpauschbetrag_remaining: Remaining annual tax-free allowance (EUR). Default: €1,000. kirchensteuer: Whether church tax applies. Default: False. bundesland: German state for Kirchensteuer rate (e.g., "Bayern" for 8%, default: 9%).
get_teilfreistellung_tool Look up the Teilfreistellung (partial tax exemption) classification for an ETF. Returns the tax-exempt portion rate under §20 InvStG: - Aktienfonds (≥51% equity): 30% of gains are tax-exempt - Mischfonds (≥25% equity): 15% of gains are tax-exempt - Sonstige (<25% equity, e.g. bonds): 0% exempt This directly impacts after-tax returns and is not surfaced by most ETF screeners. Args: isin: ETF ISIN to classify (e.g., "IE00BK5BQT80").
compare_after_tax_tool Compare ETFs on true after-tax cost of ownership for a German investor. Projects forward to show which ETF delivers the best after-tax terminal value, accounting for TER drag, Teilfreistellung benefits, and Vorabpauschale annual tax. This is a projection tool — not financial advice. Args: isins: List of 2-10 ETF ISINs to compare (e.g., ["IE00BK5BQT80", "IE00BZ163K21"]). investment_amount: Initial investment in EUR. Default: €10,000. holding_period_years: How long you plan to hold. Default: 10 years. annual_return: Assumed annual gross return as decimal. Default: 0.07 (7%). kirchensteuer: Whether church tax applies. Default: False. bundesland: German state for Kirchensteuer rate. Default: 9%.
analyze_overlap_tool X-ray a portfolio for holdings overlap across multiple ETFs. Shows which stocks you own multiple times through different ETFs, your true concentration risk, and actual geographic/sector exposure. Essential for understanding whether your "diversified" portfolio is actually diversified. Args: isins: List of 2-10 ETF ISINs in your portfolio (e.g., ["IE00BK5BQT80", "IE00B5BMR087"]). weights: Optional portfolio weights matching the ISINs (must sum to 1.0). Equal weight if omitted.
optimize_rebalance_tool Find the most tax-efficient way to rebalance your portfolio to a target allocation. Returns three options: A) Sell & Buy: immediate but triggers capital gains tax B) Redirect Sparplan: zero tax but takes months/years C) Hybrid: sell only the most overweight, redirect Sparplan for rest You provide the target allocation — this tool calculates cost, not advice. Args: current_positions: List of current holdings, each a dict with: "isin", "units", "purchase_price", "current_value" (EUR). target_allocation: Target weights as dict, e.g. {"IE00BK5BQT80": 0.7, "IE00BZ163K21": 0.3}. Must sum to 1.0. monthly_sparplan_budget: Monthly investment budget in EUR. Default: €500. sparerpauschbetrag_remaining: Remaining annual tax-free allowance (EUR). Default: €1,000. kirchensteuer: Whether church tax applies. Default: False. bundesland: German state for Kirchensteuer rate. Default: 9%.
etf-tax: connect to Claude, ChatGPT, Cursor · Connectors.fun