Skip to main content

akaunting-mcp-connector

MCP connector for Akaunting accounting platform – enables AI-powered financial management, reporting, and invoice automation through Claude

ソース情報

リポジトリ
Sandeeprdy1729/skill_galaxy
ソースの最終更新活動
2026年4月1日 06:11
検出された SKILL.md の言語
英語
スター
1
フォーク
0

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
akaunting-mcp-connector
description
MCP connector for Akaunting accounting platform – enables AI-powered financial management, reporting, and invoice automation through Claude
license
GPL
tags
["business","accounting","mcp","akaunting","finance"]
difficulty
intermediate
time_to_master
4-8 weeks
version
1.0.0
# Akaunting MCP Connector ## Overview This skill enables Claude to interact with **Akaunting** through the Model Context Protocol (MCP). It provides a bridge between Claude's AI capabilities and Akaunting's REST API, allowing natural language control of Akaunting operations, intelligent automation, and AI-powered assistance for Akaunting workflows. ## When to Use This Skill - Invoice and bill management via natural language - Financial report generation and analysis - Category and account management - Tax calculation and compliance - Cash flow forecasting and budgeting ## Architecture ``` ┌─────────────┐ ┌─────────────────┐ ┌──────────────────┐ │ Claude │────▶│ MCP Server │────▶│ Akaunting │ │ (Client) │◀────│ (TypeScript) │◀────│ (REST API )│ └─────────────┘ └─────────────────┘ └──────────────────┘ ``` ## Core Concepts ### MCP Server Setup The connector implements an MCP server that exposes Akaunting operations as tools Claude can invoke. The server translates natural language intentions into REST API calls. ### Key Endpoints/Interfaces `/api/invoices`, `/api/bills`, `/api/accounts`, `/api/categories`, `/api/reports` ### Implementation ```typescript // Akaunting MCP Server Implementation import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"; import { z } from "zod"; const server = new McpServer({ name: "akaunting-mcp-connector", version: "1.0.0", }); // Tool: List/Query Resources server.tool( "list_resources", "List and query Akaunting resources with optional filters", { query: z.string().optional().describe("Search query or filter"), limit: z.number().optional().describe("Max results to return"), }, async ({ query, limit }) => { // Call Akaunting REST API const response = await fetch(`${BASE_URL}/api/invoices`, { headers: { "Authorization": `Bearer ${API_KEY}` }, }); const data = await response.json(); return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }], }; } ); // Tool: Create Resource server.tool( "create_resource", "Create a new resource in Akaunting", { name: z.string().describe("Resource name"), config: z.object({}).passthrough().optional().describe("Resource configuration"), }, async ({ name, config }) => { const response = await fetch(`${BASE_URL}/api/invoices`, { method: "POST", headers: { "Authorization": `Bearer ${API_KEY}`, "Content-Type": "application/json", }, body: JSON.stringify({ name, ...config }), }); const data = await response.json(); return { content: [{ type: "text", text: `Created: ${JSON.stringify(data)}` }], }; } ); // Tool: Analyze/Report server.tool( "analyze", "AI-powered analysis of Akaunting data", { type: z.string().describe("Analysis type"), timeframe: z.string().optional().describe("Time range for analysis"), }, async ({ type, timeframe }) => { // Fetch data and provide AI analysis const response = await fetch(`${BASE_URL}/api/invoices`, { headers: { "Authorization": `Bearer ${API_KEY}` }, }); const data = await response.json(); return { content: [{ type: "text", text: JSON.stringify(data, null, 2) }], }; } ); // Start server const transport = new StdioServerTransport(); await server.connect(transport); ``` ### Claude Desktop Configuration ```json { "mcpServers": { "akaunting-mcp-connector": { "command": "node", "args": ["path/to/akaunting-mcp-connector/index.js"], "env": { "AKAUNTING_API_KEY": "your-api-key", "AKAUNTING_BASE_URL": "https://your-instance-url" } } } } ``` ## Best Practices 1. **Authentication**: Store API keys securely using environment variables; never hardcode credentials 2. **Rate Limiting**: Implement request throttling to respect Akaunting API rate limits 3. **Error Handling**: Provide clear, actionable error messages for common failure scenarios 4. **Pagination**: Handle paginated responses for large datasets efficiently 5. **Caching**: Cache frequently accessed read-only data to reduce API calls 6. **Security**: Validate all inputs before passing to the Akaunting API; sanitize outputs 7. **Logging**: Log all API interactions for debugging and audit purposes ## Example Prompts > "Generate a cash flow forecast for the next 3 months based on recurring invoices and bills" ## Security Considerations - All API credentials must be stored as environment variables - Implement input validation and sanitization for all tool parameters - Use HTTPS for all API communications - Follow the principle of least privilege for API token permissions - Audit log all write operations for compliance tracking ## Resources - Akaunting Official Documentation - MCP SDK Documentation: https://modelcontextprotocol.io - MCP Server Examples: https://github.com/modelcontextprotocol/servers - SkillGalaxy Repository: https://github.com/Sandeeprdy1729/skill_galaxy ## Changelog | Version | Date | Changes | |---------|------|---------| | 1.0.0 | 2026-04-01 | Initial MCP connector skill | --- *Part of SkillGalaxy - 10,000+ comprehensive skills for AI-assisted development.*
GitHubで見る