fiken-mcp
A read-only MCP server that exposes Fiken accounting API's 61 GET endpoints as tools for AI assistants to query accounting data.
README
fiken-mcp
A read-only Model Context Protocol (MCP) server for the Fiken accounting API. Exposes all Fiken GET endpoints as MCP tools so AI assistants (Claude, etc.) can query your accounting data directly.
Read-only guarantee: This server only ever makes HTTP GET requests to the Fiken API. No data is created, modified, or deleted.
Features
- 61 tools covering the full Fiken v2 read API
- Multi-company support —
companySlugis a parameter on every tool - Paginated list endpoints with metadata
- Serial request queue (respects Fiken's 1 concurrent request per user rule)
- Structured error responses — API errors are returned as tool results rather than crashing the session
Requirements
- Node.js 18+
- A Fiken API token
Installation
git clone https://github.com/yourusername/fiken-mcp
cd fiken-mcp
npm install
npm run build
Usage
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"fiken": {
"command": "node",
"args": ["/absolute/path/to/fiken-mcp/build/index.js"],
"env": {
"FIKEN_API_TOKEN": "your-token-here"
}
}
}
}
Config file locations:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
Claude Code
Add the server to your Claude Code project with:
claude mcp add fiken -- node /absolute/path/to/fiken-mcp/build/index.js
Then set the token:
claude mcp add fiken -e FIKEN_API_TOKEN=your-token-here -- node /absolute/path/to/fiken-mcp/build/index.js
Or if you prefer to keep the config in version control, add it to .mcp.json in your project root:
{
"mcpServers": {
"fiken": {
"command": "node",
"args": ["/absolute/path/to/fiken-mcp/build/index.js"],
"env": {
"FIKEN_API_TOKEN": "your-token-here"
}
}
}
}
To verify the server is connected:
claude mcp list
Other MCP clients
Run the server with the token in the environment:
FIKEN_API_TOKEN=your-token-here node build/index.js
Development (no build step)
FIKEN_API_TOKEN=your-token-here npm run dev
MCP Inspector
FIKEN_API_TOKEN=your-token-here npx @modelcontextprotocol/inspector node build/index.js
Getting a Fiken API token
- Log in to fiken.no
- Go to Settings → API (or visit
https://fiken.no/api/v2/documentation) - Generate a personal API token
- Keep it secret — treat it like a password
Available tools
Start with fiken_list_companies to get the companySlug values needed by all other tools.
User
| Tool | Description |
|---|---|
fiken_get_user |
Get information about the currently authenticated Fiken user |
Companies
| Tool | Description |
|---|---|
fiken_list_companies |
List all companies the authenticated user has access to |
fiken_get_company |
Get details for a specific company by slug |
Accounts
| Tool | Description |
|---|---|
fiken_list_accounts |
List chart of accounts for a company |
fiken_get_account |
Get a specific account by account code |
fiken_list_account_balances |
List account balances for a company |
fiken_get_account_balance |
Get balance for a specific account |
Bank
| Tool | Description |
|---|---|
fiken_list_bank_accounts |
List bank accounts for a company |
fiken_get_bank_account |
Get a specific bank account by ID |
fiken_list_bank_balances |
List bank balances for all bank accounts |
Contacts
| Tool | Description |
|---|---|
fiken_list_contacts |
List contacts (customers and suppliers) |
fiken_get_contact |
Get a specific contact by ID |
fiken_list_contact_persons |
List contact persons for a contact |
fiken_get_contact_person |
Get a specific contact person |
fiken_list_contact_groups |
List contact groups |
Invoices
| Tool | Description |
|---|---|
fiken_list_invoices |
List invoices |
fiken_get_invoice |
Get a specific invoice by ID |
fiken_list_invoice_attachments |
List attachments for an invoice |
fiken_get_invoice_counter |
Get the current invoice number counter |
fiken_list_invoice_drafts |
List invoice drafts |
fiken_get_invoice_draft |
Get a specific invoice draft |
fiken_list_invoice_draft_attachments |
List attachments for an invoice draft |
Credit Notes
| Tool | Description |
|---|---|
fiken_list_credit_notes |
List credit notes |
fiken_get_credit_note |
Get a specific credit note |
fiken_get_credit_note_counter |
Get the current credit note number counter |
fiken_list_credit_note_drafts |
List credit note drafts |
fiken_get_credit_note_draft |
Get a specific credit note draft |
Offers
| Tool | Description |
|---|---|
fiken_list_offers |
List offers/quotes |
fiken_get_offer |
Get a specific offer |
fiken_get_offer_counter |
Get the current offer number counter |
fiken_list_offer_drafts |
List offer drafts |
fiken_get_offer_draft |
Get a specific offer draft |
Order Confirmations
| Tool | Description |
|---|---|
fiken_list_order_confirmations |
List order confirmations |
fiken_get_order_confirmation |
Get a specific order confirmation |
fiken_get_order_confirmation_counter |
Get the current order confirmation counter |
Journal Entries
| Tool | Description |
|---|---|
fiken_list_journal_entries |
List journal entries |
fiken_get_journal_entry |
Get a specific journal entry |
fiken_list_journal_entry_attachments |
List attachments for a journal entry |
Transactions
| Tool | Description |
|---|---|
fiken_list_transactions |
List transactions |
fiken_get_transaction |
Get a specific transaction |
Sales
| Tool | Description |
|---|---|
fiken_list_sales |
List sales |
fiken_get_sale |
Get a specific sale |
fiken_list_sale_attachments |
List attachments for a sale |
fiken_list_sale_drafts |
List sale drafts |
fiken_get_sale_draft |
Get a specific sale draft |
fiken_list_sale_draft_attachments |
List attachments for a sale draft |
Purchases
| Tool | Description |
|---|---|
fiken_list_purchases |
List purchases |
fiken_get_purchase |
Get a specific purchase |
fiken_list_purchase_attachments |
List attachments for a purchase |
fiken_list_purchase_drafts |
List purchase drafts |
fiken_get_purchase_draft |
Get a specific purchase draft |
Products
| Tool | Description |
|---|---|
fiken_list_products |
List products |
fiken_get_product |
Get a specific product |
Projects
| Tool | Description |
|---|---|
fiken_list_projects |
List projects |
fiken_get_project |
Get a specific project |
Time Tracking
| Tool | Description |
|---|---|
fiken_list_time_entries |
List time entries |
fiken_get_time_entry |
Get a specific time entry |
fiken_list_activities |
List activities (used with time entries) |
fiken_list_time_users |
List users who can log time |
Inbox
| Tool | Description |
|---|---|
fiken_list_inbox |
List inbox documents |
fiken_get_inbox_document |
Get a specific inbox document |
Notes
- Amounts are returned in øre (cents) as integers, matching the Fiken API — e.g.
100000means 1000.00 NOK - Account codes are strings — e.g.
"1920"or"1500:10001" - Pagination defaults to page 0, 25 results per page (max 100)
- Date filters use
YYYY-MM-DDformat
Development
npm test # run tests
npm run build # compile TypeScript
npm run dev # run without building (uses tsx)
License
MIT
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。