{"name":"io.github.jakobwennberg/fortnox","slug":"jakobwennberg-fortnox","title":null,"description":"MCP server for Fortnox Swedish accounting API integration","url":"https://mcp.market/server/jakobwennberg-fortnox","rating":null,"grade":"B","score":74,"certified":false,"status":"active","category":"finance","tags":["finance"],"presence":{"score":31,"stars":41,"forks":29,"downloads_week":71,"last_push_at":"2026-04-28T15:53:16.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/jakobwennberg/fortnox-mcp","website":null,"version":"1.0.0","remotes":[],"packages":[{"registryType":"npm","identifier":"fortnox-mcp-server","version":"1.0.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Your Fortnox app client ID from developer.fortnox.se","isRequired":true,"format":"string","isSecret":true,"name":"FORTNOX_CLIENT_ID"},{"description":"Your Fortnox app client secret","isRequired":true,"format":"string","isSecret":true,"name":"FORTNOX_CLIENT_SECRET"},{"description":"OAuth2 refresh token obtained from Fortnox authorization flow","isRequired":true,"format":"string","isSecret":true,"name":"FORTNOX_REFRESH_TOKEN"}]}],"tools":[{"name":"fortnox_bookkeep_invoice","description":"Bookkeep an invoice, creating the accounting entries. Once booked, the invoice cannot be edited. Args: - document_number (string): Invoice document number to bookkeep (required) - response_format ('markdown' | 'json'): Output format Returns: Confirmation of bookkeeping with the created voucher reference.","write_action":false,"price_micros":0,"input_schema":null},{"name":"fortnox_cancel_invoice","description":"Cancel an invoice. Booked invoices will have reversal entries created. Args: - document_number (string): Invoice document number to cancel (required) - response_format ('markdown' | 'json'): Output format Returns: Confirmation of cancellation.","write_action":true,"price_micros":0,"input_schema":null},{"name":"fortnox_create_account","description":"Create a new account in the chart of accounts. Args: - account_number (number): Account number 1000-9999 (required) - description (string): Account description (required) - vat_code (string): VAT code for the account - active (boolean): Whether the account is active (default: true) - cost_center_settings ('ALLOWED' | 'MANDATORY' | 'NOTALLOWED'): Cost center settings - project_settings ('ALLOWED' |","write_action":true,"price_micros":0,"input_schema":null},{"name":"fortnox_create_customer","description":"","write_action":true,"price_micros":0,"input_schema":null},{"name":"fortnox_create_invoice","description":"","write_action":true,"price_micros":0,"input_schema":null},{"name":"fortnox_create_supplier","description":"","write_action":true,"price_micros":0,"input_schema":null},{"name":"fortnox_create_voucher","description":"","write_action":true,"price_micros":0,"input_schema":null},{"name":"fortnox_credit_invoice","description":"Create a credit note for an invoice. This creates a new credit invoice referencing the original. Args: - document_number (string): Invoice document number to credit (required) - response_format ('markdown' | 'json'): Output format Returns: The created credit invoice details.","write_action":true,"price_micros":0,"input_schema":null},{"name":"fortnox_delete_account","description":"Delete an account from the chart of accounts. WARNING: This action cannot be undone. The account must not have any transactions. Args: - account_number (number): Account number to delete (required) Returns: Confirmation of deletion.","write_action":true,"price_micros":0,"input_schema":null},{"name":"fortnox_delete_customer","description":"Delete a customer from Fortnox. WARNING: This action cannot be undone. The customer must not have any invoices or orders. Args: - customer_number (string): Customer number to delete (required) Returns: Confirmation of deletion.","write_action":true,"price_micros":0,"input_schema":null},{"name":"fortnox_delete_supplier","description":"Delete a supplier from Fortnox. WARNING: This action cannot be undone. The supplier must not have any invoices. Args: - supplier_number (string): Supplier number to delete (required) Returns: Confirmation of deletion.","write_action":true,"price_micros":0,"input_schema":null},{"name":"fortnox_get_account","description":"Retrieve detailed information about a specific account. Args: - account_number (number): The account number to retrieve (1000-9999, required) - response_format ('markdown' | 'json'): Output format Returns: Complete account details including description, VAT settings, and balances.","write_action":false,"price_micros":0,"input_schema":null},{"name":"fortnox_get_company_info","description":"Retrieve information about the company connected to this Fortnox account. Returns company name, organisation number, addresses, contact details, and other company information. Args: - response_format ('markdown' | 'json'): Output format Returns: Company details including name, organisation number, address, and contact information.","write_action":false,"price_micros":0,"input_schema":null},{"name":"fortnox_get_customer","description":"Retrieve detailed information about a specific customer. Args: - customer_number (string): The customer number to retrieve (required) - response_format ('markdown' | 'json'): Output format Returns: Complete customer details including contact info, addresses, payment terms, and VAT settings.","write_action":false,"price_micros":0,"input_schema":null},{"name":"fortnox_get_invoice","description":"Retrieve detailed information about a specific invoice including all line items. Args: - document_number (string): The invoice document number to retrieve (required) - response_format ('markdown' | 'json'): Output format Returns: Complete invoice details including customer info, dates, amounts, line items, and payment status.","write_action":false,"price_micros":0,"input_schema":null},{"name":"fortnox_get_supplier","description":"Retrieve detailed information about a specific supplier. Args: - supplier_number (string): The supplier number to retrieve (required) - response_format ('markdown' | 'json'): Output format Returns: Complete supplier details including contact info, addresses, bank details, and payment terms.","write_action":false,"price_micros":0,"input_schema":null},{"name":"fortnox_get_voucher","description":"Retrieve detailed information about a specific voucher including all accounting rows. Args: - voucher_series (string): Voucher series (e.g., 'A') (required) - voucher_number (number): Voucher number within the series (required) - financial_year (number): Financial year ID (defaults to current year) - response_format ('markdown' | 'json'): Output format Returns: Complete voucher details including a","write_action":false,"price_micros":0,"input_schema":null},{"name":"fortnox_list_accounts","description":"List accounts from the chart of accounts in Fortnox. Retrieves a paginated list of accounts with optional filtering. Args: - limit (number): Max results per page, 1-100 (default: 20) - page (number): Page number for pagination (default: 1) - search_description (string): Search accounts by description - from_account (number): Filter accounts from this number (1000-9999) - to_account (number): Filte","write_action":false,"price_micros":0,"input_schema":null},{"name":"fortnox_list_customers","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"fortnox_list_invoices","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"fortnox_list_suppliers","description":"List suppliers from Fortnox accounting system. Retrieves a paginated list of suppliers with optional filtering. Args: - limit (number): Max results per page, 1-100 (default: 20) - page (number): Page number for pagination (default: 1) - filter ('active' | 'inactive'): Filter by supplier status - search_name (string): Search suppliers by name (partial match) - response_format ('markdown' | 'json'):","write_action":false,"price_micros":0,"input_schema":null},{"name":"fortnox_list_voucher_series","description":"List available voucher series in Fortnox. Voucher series are used to categorize vouchers (e.g., 'A' for manual entries, 'B' for bank, etc.). Args: - response_format ('markdown' | 'json'): Output format Returns: List of voucher series with code, description, and whether manual entries are allowed.","write_action":false,"price_micros":0,"input_schema":null},{"name":"fortnox_list_vouchers","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"fortnox_send_invoice_email","description":"Send an invoice to the customer via email. The invoice will be sent to the email address configured for the customer. Args: - document_number (string): Invoice document number to send (required) - response_format ('markdown' | 'json'): Output format Returns: Confirmation that the email was sent.","write_action":true,"price_micros":0,"input_schema":null},{"name":"fortnox_update_account","description":"Update an existing account in the chart of accounts. Args: - account_number (number): Account number to update (required) - description (string): Account description - vat_code (string): VAT code - active (boolean): Whether the account is active - cost_center_settings ('ALLOWED' | 'MANDATORY' | 'NOTALLOWED'): Cost center settings - project_settings ('ALLOWED' | 'MANDATORY' | 'NOTALLOWED'): Project","write_action":true,"price_micros":0,"input_schema":null},{"name":"fortnox_update_customer","description":"Update an existing customer in Fortnox. Args: - customer_number (string): Customer number to update (required) - name, email, phone, address fields, etc.: Fields to update (only provided fields are changed) Returns: The updated customer details.","write_action":true,"price_micros":0,"input_schema":null},{"name":"fortnox_update_invoice","description":"Update an existing invoice in Fortnox. Only unbooked invoices can be updated. Args: - document_number (string): Invoice document number to update (required) - rows (array): Updated line items (replaces all existing rows) - Other fields: Same as create_invoice Returns: The updated invoice details.","write_action":true,"price_micros":0,"input_schema":null},{"name":"fortnox_update_supplier","description":"Update an existing supplier in Fortnox. Args: - supplier_number (string): Supplier number to update (required) - All other fields from create_supplier (only provided fields are updated) Returns: The updated supplier details.","write_action":true,"price_micros":0,"input_schema":null}],"scan":{"score":74,"grade":"B","scanned_at":"2026-10-01T13:50:56.470Z","report":{"scannerVersion":"0.1.10","scannedAt":"2026-10-01T13:50:56.446Z","components":{"code":{"score":25,"max":25,"notes":["35 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":8,"max":15,"notes":["last push 156 days ago"]},"identity":{"score":9,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"fortnox-mcp-server","version":"1.0.0","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":4,"publishedAt":"2026-01-25T14:23:00.101Z","repositoryUrl":"git+https://github.com/jakobwennberg/fortnox-mcp.git","weeklyDownloads":71}],"repo":{"found":true,"owner":"jakobwennberg","repo":"fortnox-mcp","archived":false,"pushedAt":"2026-04-28T15:53:16Z","stars":41,"forks":29,"openIssues":4,"ownerType":"Organization","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/261947607?v=4","ownerCreatedAt":"2023-10-28T08:54:07Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/261947607?v=4&s=128","source":"github"},"presence":{"stars":41,"forks":29,"downloadsWeek":71,"license":"MIT","lastPushAt":"2026-04-28T15:53:16.000Z","score":31}}}},"grade_history":[],"reviews":[]}