sie-mcp
sie-mcp — SIE4 和 Spiris/Visma 的记账分析及 MCP 工具
由 Quiet Numbers 发布。
[!NOTE] 关于本项目: 这是一个独立的业余爱好与开发项目,正在积极演进中。项目采用测试驱动架构,用于生成对 SIE4 标准、法规框架和 ISA 检查的验证。这是一项持续进行的工作,也是一种探索性的技艺——远不能保证软件能在实际意义上完全达到所设定的所有目标要求,代码作为开放实验和学习项目提供。
sie-mcp 是一个用 Python 编写的本地瑞典工具,用于读取、分析和查询会计数据(来自 SIE4 文件和 Spiris/Visma eAccounting 商业系统),既支持本地模型(Ollama),也支持基于云的 AI 模型。
该工具针对同一共享核心提供两个独立接口:
Streamlit 应用(
app.py): 提供图形桌面界面,包含审计分析(ISA 320/450)、FP&A 报告、记账辅助以及一个带来源引用的法律问答空间。MCP 服务器(
mcp_server/server.py): 通过stdio面向 Claude Desktop 和其他 AI 代理的模型无关工具服务器,包含 88 个工具并设有严格的草稿审查。
应用法律问答空间中的法律与税务条目由姊妹项目 quiet_chatt 的带来源引用引擎驱动。
五项架构原则
本地优先: 所有会计数据、计算和会话均在您自己的电脑上本地处理并存储。
BYOK / BYOA(自带密钥 / 自带应用): 没有外部服务器中转您的数据。您使用自己的 API 密钥和商业系统账户。
在您批准前保持锁定(故障关闭): 在您于自己电脑上审阅并批准条款之前,软件及其 MCP 工具完全保持锁定。
发送至外部模型前先掩蔽: 在文本发送到外部 AI 模型之前,敏感的个人和公司信息会在本地使用令牌(
[PERSON_1]、[BOLAG_1])进行假名化处理。草稿要求 — 不得直接写入: AI 代理永远不能直接记账或创建发票。它只将建议放入带加密完整性校验(SHA-256)的草稿队列,需要人工审阅并批准。
[!CAUTION] 使用软件前请阅读 ANSVAR.md。 软件不提供任何保证,不构成专业建议,并且在软件运行所在电脑上由人工逐条批准条款之前保持锁定状态。完整条款:DISCLAIMER_AND_TERMS.md 和 LICENSE。
快速开始
1. 安装
Spiris 连接需要 Windows。 OAuth 会话受 Windows DPAPI(按用户)保护, 并且有意不在其他平台上提供回退——不安全的存储比没有更糟。 SIE4 路径不依赖于此。
python -m venv .venv
.venv\Scripts\activate # Windows
pip install -r requirements.txt2. 批准条款
在用户条款获得批准之前,软件拒绝运行。您可以在 Streamlit 应用中完成批准(勾选所有项目),也可以在终端中完成:
python parser/compliance.py --godkann # läser upp villkoren och kräver en bekräftelsefras
python parser/compliance.py --status # visar om villkoren är godkända
python parser/compliance.py --aterkalla # tar bort godkännandet och spärrar igen3. 运行 Streamlit 应用
streamlit run app.py在 报告 下有一个包含快速视图的区域——未结清和逾期的 客户/供应商发票、账龄分析以及催款建议。 这些视图 在本地计算,不调用 AI,因此即使没有 API 密钥也能使用。它们显示真实的交易对手名称;假名化处理仅在数据 离开电脑时才会进行。
4. 以 MCP 服务器方式运行
MCP 服务器(mcp_server/server.py)通过 stdio 公开 88 个主要工具——56 个读取类、31 个建议操作但不执行,以及 visa_anvandarvillkor(另有 37 个领域特定别名,共 125 个)。此外还提供 3 个资源、1 个资源模板和 5 个提示词。在按第 2 步批准条款之前,所有这些均保持锁定;visa_anvandarvillkor 始终可以调用并显示条款。
批准后,每次调用及其所有参数都会自动记录在 .system_generated/logs/(或 SIE_MCP_LOGGKATALOG 指向的路径)中。您还可以在应用的日志标签页中实时查看流量。
当服务器连接时,客户端(Claude Desktop 等)会自动列出所有工具。工具分为以下逻辑组:
SIE4 文件: 计算与分析。
结构与注册: 会计科目表、会计年度、物料、公司信息、银行账户等。
总账与报告: 余额、交易、凭证和财务报告。
分户账与业务单据: 客户/供应商分户账、发票、订单和报价。
增值税: 增值税概览和报告。
主数据: 价格表、折扣协议和标签。
建议(草稿路径):
forbered_*工具用于创建发票、记账、核销付款、更改会计科目表、期间分配和处理会计锁定。这些工具不执行任何操作,只提交草稿供人工审阅。条款:
visa_anvandarvillkor用于阅读协议。
没有写入类工具通过 MCP 公开。 forbered_* 工具不会写入任何内容——它们仅在本地队列中放入一个建议。只有当您亲自在应用的 操作 标签页中审阅真实数据并点击“批准并发送”后,建议才会被执行。因此,MCP 服务器只能建议,永远不能执行,而且其源代码甚至不引用写入功能。
该建议与 SHA-256 哈希绑定:如果在建议与批准之间负载发生变化,发送将被拒绝。草稿在 24 小时后清除,因为商业系统中的基础数据可能已经发生变化。
已批准的凭证或客户发票默认进入商业系统自身的草稿队列——而不是直接进入账目。在那里您可以修改或删除该条目,并在满意后自行在商业系统中记账。原因是已记账的凭证无法删除,只能通过新凭证更正,而已记账的发票可以通过电子邮件发送给收件人。如果您想直接记账,也可以,但需要在批准时做出明确选择。
MCP 协议的 elicitation 被有意不用作批准机制——规范允许代理客户端自动回答它,而一个能由提出建议的同一模型通过的关卡算不上关卡。
从 spiris_rakenskapsar 开始——会计年度的 id 是多个其他工具所需的输入。
{
"mcpServers": {
"sie-mcp": {
"command": "python",
"args": ["-m", "mcp_server.server"],
"env": {
"SIE_MCP_SIE_KATALOGER": "C:\\dina\\sie\\kataloger"
}
}
}
}Related MCP server: Aikount MCP
软件的结构
以下描述说明代码预期做什么。它们并不是对代码能够正确或完整实现这些功能的承诺。
掩蔽功能(模块 3): 在文本可能被发送到外部之前,查找姓名、公司注册号、个人身份号以及某些地址信息,并将其替换为令牌(
[PERSON_1]、[BOLAG_1])。自由文本中的未知姓名会被拦截以进行本地审查。该功能并不完整,并且存在已知限制——参见 DISCLAIMER_AND_TERMS.md 第 6 节。结果是假名化的,绝不是匿名的:这些信息仍然是个人数据。本地存储(
saker_lagring.py): 密钥、OAuth 令牌、加密的分类账和日志存放在%LOCALAPPDATA%\sie-mcp下的每用户目录中,而不是项目文件夹中。访问保护由操作系统提供;您自己负责文件的安全。输出日志(
sessionslogg.py和revisionslogg.py): 每个会话一个可读的、未加密的 Markdown 文件,其中包含已发送的负载,外加一份元数据日志。这些文件可能包含个人数据,保护和清除它们是您的责任。故障关闭作为设计原则: 代码的编写原则是宁可拒绝也不猜测,并且不返回原始错误信息。这是设计上的目标,而不是对结果的保证。
商标
sie-mcp 并非由 Visma/Spiris、Anthropic、OpenAI、Google、SIE-gruppen、BAS-intressenternas Förening 或 Bokföringsnämnden 开发、认可、审查或支持。文中出现的名称和商标仅用于描述软件可以连接的对象,并归各自所有者所有。
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
- AlicenseBqualityCmaintenanceAn MCP server for Danish accounting via Billy.dk API, enabling natural-language control over invoices, bank lines, reports, and more, with a write-guard for safety.65MIT
- AlicenseAqualityAmaintenanceMCP server for Spanish accounting for freelancers and SMEs, enabling AI agents to issue invoices, OCR expense PDFs, reconcile bank transactions, and prepare quarterly VAT (Modelo 303).23MIT
- Alicense-qualityBmaintenanceA read-only MCP server that securely connects Swedish/Nordic bank accounts to AI assistants, keeping all financial data local and encrypted.50MIT
- AlicenseAqualityCmaintenanceAn MCP server for integrating with the Fortnox Swedish accounting system. Enables LLMs to manage invoices, customers, suppliers, orders, accounts, vouchers, and provides business intelligence analytics.514435MIT
Related MCP Connectors
Hosted MCP server for Mini Accountant: invoices, expenses, customers, analytics, tax estimates.
A paid remote MCP for hosted MCP server, built to return verdicts, receipts, usage logs, and audit-r
A paid remote MCP for CLI tool MCP, built to return verdicts, receipts, usage logs, and audit-ready
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/stefanwejd-dev/sie-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server