会计API协议服务器

Papierkram MCP Server是一个基于MCP协议的服务器,用于与Papierkram.de会计API交互,使AI助手能够管理发票、费用、联系人、项目和时间跟踪等。

  • by Wagner-Emden-IT-Services
  • TypeScript
  • 混合部署
  • 2 星标
  • 更新于
在 GitHub 查看 Wagner-Emden-IT-Services/papierkram-mcp-server

使用说明

Papierkram MCP服务器

一 主控程序 (模型上下文协议)服务器 纸带de 会计API。使AI助手能够管理发票、费用、联系人、项目、时间跟踪,并更直接地在您的Papierkram帐户中管理。

特性

  • 56工具 涵盖整个Papierkram API v1
  • 通过npm安装:直接运行 npx papierkram-mcp-server --不需要克隆
  • 两次运输:stdio(用于克劳德桌面、光标、克劳德代码)和HTTP/SSE(用于n8n,自定义集成)
  • Docker就绪 便于自托管部署
  • 对所有参数进行Zod模式验证的TypeScript

工具概述

区域 操作 计数
联系人 公司和联系人:列表、获取、创建、更新、删除 10
发票 列表、获取、创建、更新、删除、取消、存档、发送、下载PDF 9
估计 列表、获取、创建、更新、删除、发送、下载PDF 7
开支 列表、获取、创建、更新、删除 5
项目 列表、获取、创建、更新、删除、存档、取消存档 7
时间跟踪 列表、获取、创建、更新、删除 5
任务 列表、获取、创建、更新、删除 5
银行业 列表,获取银行连接和交易记录(只读) 4
账户 账户信息、付款条件、建议 4

快速开始

先决条件

获取API密钥

首选 文档框 > 设置 > API 并创建API密钥。

选项A:npm(推荐)

无需克隆--直接使用npx运行:

npx papierkram-mcp-server

或者全局安装:

npm install -g papierkram-mcp-server
papierkram-mcp-server

默认情况下,服务器与stdio对话;设置 PAPIERKRAM_API_KEY 和 PAPIERKRAM_SUBDOMAIN 在你的 环境或MCP客户端配置(请参阅 用法).

选项B:Docker(自托管HTTP/SSE)

git clone https://github.com/Wagner-Emden-IT-Services/papierkram-mcp-server.git
cd papierkram-mcp-server
cp .env.example .env
# Edit .env with your API key and subdomain
docker compose up -d

HTTP/SSE服务器将在 http://localhost:3001/sse.

选项C:Node.js源代码

git clone https://github.com/Wagner-Emden-IT-Services/papierkram-mcp-server.git
cd papierkram-mcp-server
npm install
cp .env.example .env
# Edit .env with your API key and subdomain
npm run build

配置

创建一个 .env 文件(或复制自 .env.example):

PAPIERKRAM_API_KEY=your-api-key-here
PAPIERKRAM_SUBDOMAIN=your-subdomain
PORT=3001  # optional, only for HTTP/SSE mode

您的子域是前面的部分 .papierkram.de 在您的Papierkram URL中。

用法

Claude 桌面版

添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "papierkram": {
      "command": "npx",
      "args": ["-y", "papierkram-mcp-server"],
      "env": {
        "PAPIERKRAM_API_KEY": "your-api-key",
        "PAPIERKRAM_SUBDOMAIN": "your-subdomain"
      }
    }
  }
}

是否从源代码安装?使用 "command": "node" 与 "args": ["/absolute/path/to/papierkram-mcp-server/dist/index.js"].

克劳德代码(CLI)

添加到您的 ~/.claude.json:

{
  "mcpServers": {
    "papierkram": {
      "command": "npx",
      "args": ["-y", "papierkram-mcp-server"],
      "env": {
        "PAPIERKRAM_API_KEY": "your-api-key",
        "PAPIERKRAM_SUBDOMAIN": "your-subdomain"
      }
    }
  }
}

光标

使用与Claude Desktop相同的配置添加到您的光标MCP设置中。

HTTP/SSE(适用于n8n或自定义客户端)

# Development
npm run dev:http

# Production
npm run start:http

# Docker
docker compose up -d

将您的MCP客户端连接到 http://localhost:3001/sse.

发展

npm run dev        # stdio mode with hot reload
npm run dev:http   # HTTP/SSE mode with hot reload
npm run build      # compile TypeScript to dist/

项目结构

src/
├── index.ts              # Stdio entry point
├── server/
│   ├── server.ts         # MCP server setup + tool registration
│   └── http-server.ts    # HTTP/SSE entry point
├── core/tools/           # Tool definitions (one file per API area) + shared helpers
├── api/
│   ├── client.ts         # HTTP client with auth, timeout & error handling
│   ├── errors.ts         # API/network errors -> actionable UserError messages
│   └── format.ts         # Tool-output size guard (truncation)
└── config/
    └── index.ts          # Environment configuration

贡献

欢迎投稿!请打开问题或拉取请求。

许可证

麻省理工学院 -Wagner Emden IT服务