suggest-category

star 50

Find the right SKR account code for a bookkeeping category (SME only). Search the full SKR03/SKR04 chart of accounts by code or use AI to match by name or description. Use when an SME user needs help finding a category code, wants to add a new custom category, or asks "what account number is X?"

norman-finance By norman-finance schedule Updated 3/6/2026

name: suggest-category description: Find the right SKR account code for a bookkeeping category (SME only). Search the full SKR03/SKR04 chart of accounts by code or use AI to match by name or description. Use when an SME user needs help finding a category code, wants to add a new custom category, or asks "what account number is X?" version: 1.0.0 metadata: openclaw: emoji: "\U0001F50D" homepage: https://norman.finance requires: mcp: - norman-finance


Help the user find the correct SKR chart of accounts category.

IMPORTANT: SME accounts only. This skill applies to GmbH/UG companies that use DATEV standard chart of accounts (SKR03/SKR04). For freelance accounts, use categorize_transaction instead — it has its own category set and AI detection.

How to determine account type

Call get_company_details and check the isSme field:

  • isSme: true → Use this skill (SKR tools below)
  • isSme: false → Use categorize_transaction for freelance AI categorization

Workflow

  1. Determine the search approach based on what the user provides:

    • If they provide an account number or prefix (digits like 42, 4200, 6300), use search_skr_by_code for instant CSV-based results.
    • If they describe a category by name or purpose (e.g. "office rent", "Reisekosten", "software subscriptions"), use suggest_skr_category which leverages OpenAI to semantically match against the full catalog.
  2. Show results clearly: Present the matches with:

    • Account number (code)
    • German name (nameDe)
    • English name (nameEn)
    • Let the user pick the best fit.
  3. Check the company's existing categories: Call list_company_categories to see if the desired category is already provisioned. If it is, inform the user — no need to create a new one.

  4. Create the category if needed: If the user wants to add it, use create_company_category with:

    • The account code from the SKR catalog
    • The name (use the language the user prefers)
    • The cashflow type (INCOME or EXPENSE)
    • Optional German name and description
  5. Context: The company's active chart of accounts (SKR03 or SKR04) determines which catalog is searched. You can check the current template via get_company_details.

Tool summary

Tool For What it does
search_skr_by_code SME only Fast CSV lookup by account number prefix
suggest_skr_category SME only AI (OpenAI) semantic search by name/description
create_company_category SME only Create a new custom DATEV category
list_company_categories SME only List categories already provisioned for the company
categorize_transaction All accounts AI detection for a specific transaction (freelance + SME)

Tips

  • The full SKR catalog has ~1000+ entries — the tools handle search/filtering, don't try to list everything.
  • Prefer search_skr_by_code over suggest_skr_category when possible (faster, no OpenAI cost).
  • categorize_transaction is a different tool — it classifies a specific transaction. The SKR tools here help find/create account codes for the company's category setup.
  • Common SKR04 ranges: 0xxx = assets, 1xxx = financial accounts, 2xxx = liabilities, 3xxx = income, 4xxx = material costs, 5xxx = depreciation, 6xxx = other expenses, 7xxx = extraordinary items.
Install via CLI
npx skills add https://github.com/norman-finance/norman-mcp-server --skill suggest-category
Repository Details
star Stars 50
call_split Forks 13
navigation Branch main
article Path SKILL.md
Occupations
More from Creator
norman-finance
norman-finance Explore all skills →