会计数据处理服务

一个开源的Model Context Protocol服务器,使AI助手能够处理德国DATEV会计数据,包括解析EXTF文件、查询SKR03/SKR04账户图表、创建预订条目和生成符合DATEV标准的导出文件。

  • by BadRix90
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 BadRix90/datev-mcp

使用说明

datev-mcp

MCP server for DATEV accounting workflows — connect AI agents to German accounting data.

An open-source Model Context Protocol server that enables AI assistants (Claude, ChatGPT, Cursor, etc.) to work with DATEV accounting data: parse EXTF files, look up SKR03/SKR04 chart of accounts, create booking entries, and generate DATEV-compliant exports.

Offline-first. No DATEV account required. No approval process.


Features

  • EXTF file handling — read, validate, and generate DATEV EXTF booking files
  • SKR03 & SKR04 — query the standard German charts of accounts (137+ / 89+ accounts)
  • Booking entries — create and validate DATEV-compliant booking entries
  • AI suggestions — rule-based account suggestions from invoice text

Quick Start

Claude Desktop

Requires uv installed (provides the uvx command).

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "datev": {
      "command": "uvx",
      "args": ["datev-mcp"]
    }
  }
}

Local Development

git clone https://github.com/BadRix90/datev-mcp
cd datev-mcp
uv venv && uv sync --extra dev
uv run python -m datev_mcp.server

HTTP Mode

uv run python -m datev_mcp.server --transport http
# Server runs on http://localhost:8080

Available MCP Tools

Tool Description
datev_buchung_erstellen Create a DATEV booking entry with validation
datev_buchung_vorschlagen Suggest accounts from invoice text
datev_extf_lesen Read and parse an EXTF file
datev_extf_validieren Validate an EXTF file for DATEV compliance
datev_extf_exportieren Export booking entries as EXTF file
datev_kontenrahmen_suchen Search SKR03/SKR04 chart of accounts
datev_kontenrahmen_info Get details for a specific account number

MCP Resources

URI Content
datev://kontenrahmen/skr03/{nr} SKR03 account details
datev://kontenrahmen/skr04/{nr} SKR04 account details

Demo

Web Demo

uv run python demo/server.py
# Open http://localhost:8090

Interactive wizard that demonstrates the AI agent workflow: invoice processing, account lookup, and EXTF export — all powered by real MCP tool calls.

CLI Demo

uv run python demo/mockup.py

Runs 5 scenarios showing how an AI agent would interact with the DATEV MCP server.


Architecture

Phase 1 (current): Offline-first
+-----------+    MCP    +------------+
| AI Agent  | --------> | datev-mcp  |
| (Claude)  |           | Server     |
+-----------+           +-----+------+
                              |
                        +-----v------+
                        | EXTF Parser|
                        | SKR03/04   |
                        | (local)    |
                        +------------+

Phase 2 (planned): DATEV API integration via OAuth 2.0

Configuration

Environment Variable Description Default
DATEV_MCP_LOG_LEVEL Log level (DEBUG/INFO/WARNING) INFO
DATEV_MCP_TRANSPORT Transport type (stdio/http) stdio
DATEV_MCP_PORT HTTP port (http transport only) 8080

Copy .env.example to .env to configure.


Development

# Run tests
uv run pytest

# Lint & format
uv run ruff check .
uv run ruff format .

Requirements: Python >= 3.12, uv


Tech Stack


Disclaimer

This project is not affiliated with, endorsed by, or connected to DATEV eG in any way. "DATEV" and "EXTF" are trademarks of DATEV eG. This software implements the publicly documented EXTF file format for interoperability purposes.

The SKR03 and SKR04 chart of accounts data included in this project is based on publicly available information. It is provided for educational and interoperability purposes only. For authoritative account definitions, consult the official DATEV documentation.

This software is provided "as is" without warranty of any kind. It does not constitute tax, legal, or accounting advice. Users are responsible for verifying all generated data before use in production accounting systems.


Author

Kay Dietrich — kaydietrich.com | SyntraQ AI


License

MIT — free to use, modify, and distribute, including commercially.