QuickFile MCP Server
Model Context Protocol server for
Features
40+ MCP Tools for complete QuickFile API coverage
Client Management: Create, search, update, delete clients and contacts
Invoicing: Create invoices, estimates, credit notes; send by email; get PDF
Purchases: Record and manage purchase invoices from suppliers
Supplier Management: Full supplier CRUD operations
Banking: Bank accounts, transactions, balances
Financial Reports: Profit & Loss, Balance Sheet, VAT obligations, Ageing reports
System Operations: Account details, event log, notes
Quick Start
1. Clone and Install
2. Configure Credentials
Create your QuickFile API credentials:
Where to find these:
Account Number: Visible in top-right corner of QuickFile dashboard
API Key: Account Settings → 3rd Party Integrations → API Key
Application ID: Account Settings → Create a QuickFile App → copy the Application ID
3. Install OpenCode (if not already installed)
OpenCode is an open-source AI coding assistant that runs in your terminal. It supports MCP (Model Context Protocol) servers like this one.
See the OpenCode documentation for more installation options and configuration.
4. Configure OpenCode
Add to your ~/.config/opencode/opencode.json:
Or use the setup script:
5. Start Using
Restart OpenCode and try:
Available Tools
System (3 tools)
Tool | Description |
| Get account details (company, VAT status, year end) |
| Search the audit event log |
| Add notes to invoices, clients, etc. |
Clients (7 tools)
Tool | Description |
| Search clients by name, email, postcode |
| Get full client details |
| Create a new client |
| Update client details |
| Delete a client |
| Add contacts to a client |
| Get passwordless login URL for client portal |
Invoices (8 tools)
Tool | Description |
| Search invoices by type, client, date, status |
| Get full invoice with line items |
| Create invoice, estimate, or credit note |
| Delete an invoice |
| Send invoice by email |
| Get PDF download URL |
| Accept or decline an estimate |
| Convert estimate to invoice |
Purchases (4 tools)
Tool | Description |
| Search purchase invoices |
| Get purchase details |
| Create purchase invoice |
| Delete purchase invoice |
Suppliers (4 tools)
Tool | Description |
| Search suppliers |
| Get supplier details |
| Create a new supplier |
| Delete a supplier |
Banking (5 tools)
Tool | Description |
| List all bank accounts |
| Get account balances |
| Search transactions |
| Create a bank account |
| Add bank transaction |
Reports (6 tools)
Tool | Description |
| Profit & Loss report |
| Balance Sheet report |
| VAT returns (filed & open) |
| Debtor/Creditor ageing |
| List nominal codes |
| Recurring subscriptions |
API Rate Limits
QuickFile has a default limit of 1000 API calls per day per account. Contact QuickFile support if you need this increased.
Development
Testing with MCP Inspector
For development and debugging, use the official MCP Inspector tool instead of running through an AI assistant. This provides:
Direct tool invocation - Call MCP tools directly with custom parameters
Real-time response viewing - See full JSON responses without AI interpretation
Faster iteration - No waiting for AI to process requests
Debug visibility - View raw server output and errors
Quick Start
Then open http://localhost:5173 in your browser to:
See all 37 available tools listed
Click a tool to view its input schema
Fill in parameters and execute
View the raw JSON response
Example Test Workflow
Test account access: Call
quickfile_system_get_accountwith{}Test client search: Call
quickfile_client_searchwith{"companyName": "test"}Test reports: Call
quickfile_report_profit_losswith{"startDate": "2024-01-01", "endDate": "2024-12-31"}Test invoice listing: Call
quickfile_invoice_searchwith{"invoiceType": "INVOICE"}
This is the recommended approach for:
Debugging API response issues
Verifying new tools work correctly
Testing parameter validation
Investigating error responses
Contributing
QuickFile API Documentation
The QuickFile API has strict requirements for element ordering and required fields. When contributing:
Always check the official API schema at https://api.quickfile.co.uk/
Use Context7 for AI-assisted development: https://context7.com/websites/api_quickfile_co_uk
Context7 has indexed the full QuickFile API documentation
Use it to query exact field names, required parameters, and element ordering
Example: "What are the required fields for Purchase_Search?"
Key API Quirks
Element ordering matters - XML schema validation requires specific field order
Required fields vary by endpoint -
OrderResultsByandOrderDirectionare required for most search endpointsField naming is inconsistent - e.g.,
FromDate/ToDatevsDateFrom/DateToSearchParameters wrapper - Most endpoints need this wrapper around query params
NominalCode types - Sometimes string, sometimes int (check schema)
Architecture
Credential Security
Credentials stored in
~/.config/.quickfile-mcp/credentials.jsonFile permissions should be 600 (owner read/write only)
Never commit credentials to version control
API key provides full access - treat it like a password
Secretlint runs automatically on pre-commit to prevent accidental secret exposure
Run
npm run secretlintmanually to scan for secrets
Related Projects
OpenCode - Open-source AI coding assistant with MCP support
QuickFile - UK accounting software
Model Context Protocol - Protocol specification for AI tool integration
AI DevOps Framework - Comprehensive AI infrastructure management
License
MIT License - see LICENSE file for details.
Created by Marcus Quinn - Copyright © 2025