会计数据查询服务

一个为Fiken会计API提供的只读Model Context Protocol (MCP)服务器,使AI助手能够直接查询会计数据。

  • by heim
  • TypeScript
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 heim/fiken-read-only-mcp

使用说明

无花果-MCP

A. 只读 模型上下文协议(MCP) 服务器 菲肯 会计API。将所有Fiken GET端点作为MCP工具公开,以便AI助手(Claude等)可以直接查询您的会计数据。

只读保证: 此服务器只向Fiken API发出HTTP GET请求。不会创建、修改或删除任何数据。

特性

  • 61个工具涵盖完整的Fiken v2 read API
  • 多公司支持-- companySlug 是每个工具的参数
  • 带有元数据的分页列表端点
  • 串行请求队列(遵守Fiken的每个用户1个并发请求规则)
  • 结构化错误响应-API错误作为工具结果返回,而不是崩溃会话

需求

安装

git clone https://github.com/yourusername/fiken-mcp
cd fiken-mcp
npm install
npm run build

用法

克劳德桌面版

添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "fiken": {
      "command": "node",
      "args": ["/absolute/path/to/fiken-mcp/build/index.js"],
      "env": {
        "FIKEN_API_TOKEN": "your-token-here"
      }
    }
  }
}

配置文件位置:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • 窗户: %APPDATA%\Claude\claude_desktop_config.json

克劳德代码

使用以下命令将服务器添加到您的Claude Code项目中:

claude mcp add fiken -- node /absolute/path/to/fiken-mcp/build/index.js

然后设置令牌:

claude mcp add fiken -e FIKEN_API_TOKEN=your-token-here -- node /absolute/path/to/fiken-mcp/build/index.js

或者,如果您希望将配置保留在版本控制中,请将其添加到 .mcp.json 在项目根目录中:

{
  "mcpServers": {
    "fiken": {
      "command": "node",
      "args": ["/absolute/path/to/fiken-mcp/build/index.js"],
      "env": {
        "FIKEN_API_TOKEN": "your-token-here"
      }
    }
  }
}

要验证服务器是否已连接:

claude mcp list

其他MCP客户端

使用环境中的令牌运行服务器:

FIKEN_API_TOKEN=your-token-here node build/index.js

开发(无构建步骤)

FIKEN_API_TOKEN=your-token-here npm run dev

MCP检查员

FIKEN_API_TOKEN=your-token-here npx @modelcontextprotocol/inspector node build/index.js

获取Fiken API代币

  1. 登录 fiken.cn
  2. 首选 设置→ API (或参观 https://fiken.no/api/v2/documentation)
  3. 生成个人API令牌
  4. 保密——把它当作密码

可用工具

从开始 fiken_list_companies 为了得到 companySlug 所有其他工具所需的值。

用户

工具 说明
fiken_get_user 获取当前已通过身份验证的Fiken用户的信息

公司

工具 说明
fiken_list_companies 列出经过身份验证的用户有权访问的所有公司
fiken_get_company 通过slug获取特定公司的详细信息

账户

工具 说明
fiken_list_accounts 公司会计科目表
fiken_get_account 按帐户代码获取特定帐户
fiken_list_account_balances 列出公司的账户余额
fiken_get_account_balance 获取特定账户的余额

银行

工具 说明
fiken_list_bank_accounts 列出公司的银行账户
fiken_get_bank_account 通过ID获取特定银行账户
fiken_list_bank_balances 列出所有银行账户的银行余额

联系人

工具 说明
fiken_list_contacts 列出联系人(客户和供应商)
fiken_get_contact 通过ID获取特定联系人
fiken_list_contact_persons 列出联系人的联系人
fiken_get_contact_person 找一个具体的联系人
fiken_list_contact_groups 列出联系人组

发票

工具 说明
fiken_list_invoices 列出发票
fiken_get_invoice 按ID获取特定发票
fiken_list_invoice_attachments 列出发票的附件
fiken_get_invoice_counter 获取当前发票号计数器
fiken_list_invoice_drafts 列出发票草稿
fiken_get_invoice_draft 获取特定的发票草稿
fiken_list_invoice_draft_attachments 列出发票草稿的附件

贷项凭单

工具 说明
fiken_list_credit_notes 列出贷方票据
fiken_get_credit_note 获取特定的贷记单
fiken_get_credit_note_counter 获取当前贷记单号计数器
fiken_list_credit_note_drafts 列出信用票据草稿
fiken_get_credit_note_draft 获取特定的信用票据草稿

优惠

工具 说明
fiken_list_offers 列出报价/报价
fiken_get_offer 获取特定优惠
fiken_get_offer_counter 获取当前报价号码计数器
fiken_list_offer_drafts 列出报价草稿
fiken_get_offer_draft 获取特定的报价草案

订单确认

工具 说明
fiken_list_order_confirmations 列出订单确认
fiken_get_order_confirmation 获取特定订单确认
fiken_get_order_confirmation_counter 获取当前订单确认计数器

日记账分录

工具 说明
fiken_list_journal_entries 列出日记账条目
fiken_get_journal_entry 获取特定的日记条目
fiken_list_journal_entry_attachments 列出日记账分录的附件

交易

工具 说明
fiken_list_transactions 列出交易记录
fiken_get_transaction 获取特定交易

销售

工具 说明
fiken_list_sales 列出销售额
fiken_get_sale 获得特定销售
fiken_list_sale_attachments 列出销售附件
fiken_list_sale_drafts 列出销售草稿
fiken_get_sale_draft 获取特定的销售草稿
fiken_list_sale_draft_attachments 列出销售草稿的附件

采购

工具 说明
fiken_list_purchases 列出购买记录
fiken_get_purchase 获得特定购买
fiken_list_purchase_attachments 列出购买的附件
fiken_list_purchase_drafts 列出采购草案
fiken_get_purchase_draft 获取特定的购买草稿

产品

工具 说明
fiken_list_products 列出产品
fiken_get_product 获取特定产品

项目

工具 说明
fiken_list_projects 列出项目
fiken_get_project 获取特定项目

时间追踪

工具 说明
fiken_list_time_entries 列出时间条目
fiken_get_time_entry 获取特定时间条目
fiken_list_activities 列出活动(与时间条目一起使用)
fiken_list_time_users 列出可以记录时间的用户

收件箱

工具 说明
fiken_list_inbox 列出收件箱文档
fiken_get_inbox_document 获取特定收件箱文档

备注

  • 金额 返回 欧分(Cents) 作为整数,匹配Fiken API-例如。 100000 指1000.00挪威克朗
  • 账户代码 是字符串,例如。 "1920" 或 "1500:10001"
  • 分页 默认为第0页,每页25个结果(最多100个)
  • 日期筛选 使用 YYYY-MM-DD 格式

发展

npm test          # run tests
npm run build     # compile TypeScript
npm run dev       # run without building (uses tsx)

许可证

麻省理工学院