Bizpro Desk MCP Server

v2.1.0 104 Tools

Bizpro Desk MCP Server connects Claude to Bizpro Desk through secure MCP-compatible endpoints, allowing authorized read and write access to business workflows.

Quick Start

1. Connect Claude to Bizpro Desk

In Claude, go to Settings → Integrations and add a new connector:

Claude will open the Bizpro Desk sign-in page automatically.

2. Sign in with your Bizpro Desk account

Enter your Bizpro Desk email and password on the sign-in screen. No tokens needed — Claude handles the OAuth flow automatically.

3. Start using Bizpro Desk in Claude

Once signed in, you can ask Claude to manage your clients, invoices, sales, expenses, products, and more — directly from the conversation.

Authentication

OAuth 2.0 (recommended) — When connecting via Claude or any OAuth-compatible client, Bizpro Desk handles authentication automatically. You sign in with your Bizpro Desk email and password; no tokens required on your end.

Bearer Token — For direct API / developer access, generate a token in Settings → API & Integrations:

Authorization: Bearer bzp_xxx
# or
X-MCP-Token: bzp_xxx

OAuth Metadata

Authorization Serverhttps://api.bizprodesk.com/api/mcp/.well-known/oauth-authorization-server
Protected Resourcehttps://api.bizprodesk.com/api/mcp/.well-known/oauth-protected-resource

Rate Limits

100 requests per minute per token. Exceeding this returns HTTP 429.

Transport

TypeEndpointStatus
Streamable HTTP (preferred)POST https://api.bizprodesk.com/api/mcp/mcpProduction
REST fallbackPOST https://api.bizprodesk.com/api/mcp/v1/tools/callLegacy

The MCP transport accepts JSON-RPC 2.0 messages. Supported methods: initialize, tools/list, tools/call, ping.

Available Tools (104)

52 read-only tools | 52 write tools

Tool NameTitleDescriptionTypePermission
get_company_infoGet company profileRetrieve the company profile including name, business type, currency settings, and enabled featuresreadcompany:read
get_dashboardGet dashboard metricsRetrieve key business metrics including total revenue, expenses, profit, client count, and recent activityreaddashboard:read
list_clientsList clientsRetrieve a paginated list of clients with optional search by name, email, or phonereadclients:read
create_clientCreate a clientCreate a new client record with name, contact details, and optional noteswriteclients:write
list_productsList products and servicesRetrieve a paginated list of products and services with optional search by name or SKUreadproducts:read
create_productCreate a product or serviceCreate a new product or service with pricing, stock quantity, and category informationwriteproducts:write
list_invoicesList invoices and documentsRetrieve a paginated list of invoices, proformas, quotes, and delivery notes with optional status and type filtersreaddocuments:read
create_invoiceCreate invoice or documentCreate a new invoice, proforma, quote, or delivery note for a client with line itemswritedocuments:write
mark_invoice_paidRecord invoice paymentRecord a payment against an existing invoice, updating its status to paidwritedocuments:write
convert_proforma_to_invoiceConvert proforma to invoiceConvert an existing proforma document into a formal invoicewritedocuments:write
list_salesList salesRetrieve a paginated list of sales transactions with optional date range and search filtersreadsales:read
create_saleCreate saleRecord a new sale transaction with product, quantity, price, and payment detailswritesales:write
list_expensesList expensesRetrieve a paginated list of business expenses with optional category and date filtersreadexpenses:read
create_expenseCreate expenseRecord a new business expense with amount, category, payment method, and descriptionwriteexpenses:write
list_transfersList transfersRetrieve a paginated list of money transfers between financial accountsreadtransfers:read
create_transferCreate transferTransfer money between two financial accounts with amount and descriptionwritetransfers:write
list_suppliersList suppliersRetrieve a paginated list of suppliers with optional search by name, email, or phonereadsuppliers:read
create_supplierCreate supplierCreate a new supplier record with name and contact informationwritesuppliers:write
list_debtorsList debtorsRetrieve a list of debtors (clients with outstanding balances) with optional status filterreaddebtors:read
list_paymentsList debtor paymentsRetrieve a paginated list of debtor payment recordsreadpayments:read
list_accountsList financial accountsRetrieve a list of financial accounts (bank, mobile money, cash) with balancesreadaccounts:read
update_clientUpdate a clientUpdate an existing client record by ID with new name, contact, or address informationwriteclients:write
delete_clientDelete a clientPermanently delete a client record by ID (requires confirm=true)writeclients:write
update_productUpdate a product or serviceUpdate an existing product or service by ID with new pricing, stock, or category datawriteproducts:write
delete_productDelete a product or servicePermanently delete a product or service by ID (requires confirm=true)writeproducts:write
update_supplierUpdate a supplierUpdate an existing supplier record by ID with new contact informationwritesuppliers:write
update_invoiceUpdate an invoice or documentUpdate an existing invoice or document by ID with new status, due date, or noteswritedocuments:write
delete_invoiceDelete an invoice or documentPermanently delete an invoice or document by ID (requires confirm=true)writedocuments:write
delete_supplierDelete a supplierPermanently delete a supplier record by ID (requires confirm=true)writesuppliers:write
list_staffList team members / staffRetrieve a list of team members and staff with their roles and permissionsreadstaff:read
list_appointmentsList appointmentsRetrieve a paginated list of appointments with optional status and date range filtersreadappointments:read
create_appointmentCreate appointmentCreate a new appointment for a client with date, time, duration, and noteswriteappointments:write
list_subscriptionsList subscriptionsRetrieve a paginated list of client subscriptions with optional status filterreadsubscriptions:read
create_subscriptionCreate subscriptionCreate a new subscription for a client with plan name, amount, and billing cyclewritesubscriptions:write
list_branchesList branchesRetrieve a list of company branches and locationsreadbranches:read
list_branch_transfersList branch transfersRetrieve a list of stock or asset transfers between branchesreadbranches:read
list_payrollList payroll runsRetrieve a list of payroll runs with optional status filterreadpayroll:read
list_raw_materialsList raw materialsRetrieve a paginated list of raw materials with stock levels and costsreadraw_materials:read
list_budget_plansList budget plansRetrieve a list of budget plans with optional status filterreadbudget:read
get_tax_summaryGet tax summaryRetrieve the tax profile, obligations, and payment status for the companyreadtax:read
get_reports_summaryGet reports summaryRetrieve a financial summary report with total revenue, expenses, and profit for an optional date rangereadreports:read
list_notificationsList notification logsList email notification delivery logs (reports, reminders, stock alerts) with sent/pending/failed status. Filter by status or type.readnotifications:read
list_restock_historyList restock historyRetrieve a paginated list of product restock eventsreadproducts:read
list_formsList formsRetrieve a list of custom forms with optional status filterreadforms:read
list_filesList filesRetrieve files and folders from the file managerreadfiles:read
list_activity_logList activity logRetrieve the activity audit log with optional filters by action type or resourcereadaudit:read
list_productionList production batchesRetrieve a paginated list of production batches with optional status and search filtersreadproduction:read
list_error_logsList error logsRetrieve a list of application error logs for the company with optional resolved filterreaderrors:read
get_my_accountGet my accountRetrieve the current authenticated user profile including name, email, role, and company detailsreadaccount:read
list_issuesList issuesRetrieve a list of issues from the issue tracker with optional status filterreadissues:read
list_document_templatesList document templatesRetrieve all saved document design templates for your company — invoice, quote, proforma layouts with colors, fonts, and style settingsreadtemplates:read
get_document_templateGet document templateGet full details of a specific document template by ID including all design settingsreadtemplates:read
get_active_document_templateGet active document templateGet the currently active document template that is applied to all printed invoices, quotes, and proformasreadtemplates:read
create_document_templateCreate document templateCreate a new document design template. Specify accent color, font, logo position, table style, footer text, and per-type color overrides. Does not activate automatically — use set_active_document_template to apply it.writetemplates:write
update_document_templateUpdate document templateUpdate an existing document template design settings by IDwritetemplates:write
set_active_document_templateSet active document templateSet a template as the active design for all documents. Deactivates the previous active template. All future printed invoices, quotes, proformas, and delivery notes will use this design.writetemplates:write
delete_document_templateDelete document templatePermanently delete a document template by ID (requires confirm=true). Cannot delete the currently active template.writetemplates:write
preview_document_templatePreview document templateGet a summary of a template design settings and a preview URL. Omit id to preview the currently active template.readtemplates:read
set_template_logoSet template logoSet a custom logo image on a document template. Provide either a URL (logoUrl) or base64-encoded image (logoBase64). This logo overrides the company logo on printed documents using this template.writetemplates:write
set_template_signatureSet template signatureSet the authorized signature image and signatory details on a document template. Provide signatureUrl or signatureBase64, plus optional signatureName and signatureTitle.writetemplates:write
save_fileSave file to Bizpro DeskSave a file to Bizpro Desk Files. Provide the file content as a base64-encoded string. Supports any file type: PDFs, images, documents, spreadsheets, CSVs, etc. The file will appear in the Files page inside Bizpro Desk.writefiles:write
list_projectsList projectsList all projects with budget totals, amount paid, and remaining balancereadprojects:read
get_projectGet projectGet full details of a project including associated invoices and payment progressreadprojects:read
create_projectCreate projectCreate a new project with a total budget. Sales/invoices can be linked to it to track payment progress.writeprojects:write
update_projectUpdate projectUpdate an existing project name, budget, status, or dateswriteprojects:write
get_project_summaryGet project summaryGet full project summary: total budget, total invoiced, total paid, pending amount, remaining balance, and invoice listreadprojects:read
create_invoice_from_projectCreate invoice from projectCreate an invoice linked to a project. Pre-fills from project settings. Only override dueDate, totalAmount, or items if needed.writeprojects:write
mark_project_invoice_paidMark project invoice as paidMark a project invoice as paid. Automatically updates project status to completed when fully paid.writeprojects:write
get_exchange_ratesGet exchange ratesGet all exchange rates configured for the companyreadsettings:read
set_exchange_rateSet exchange rateSet or update an exchange rate between two currencies (e.g. USD to RWF). Used for multi-currency sales reporting.writesettings:write
get_sales_summary_convertedGet multi-currency sales summaryGet sales totals across all currencies, converted to a single preferred currency using stored exchange ratesreadsales:read
analyze_document_for_projectAnalyze document and create projectUpload a document or contract text to Claude AI and extract project details: name, total cost, currency, client, dates, and payment installments. Set autoCreate:true to automatically create the project.writeprojects:write
get_tax_profileGet tax profileGet the company tax profile: adopted country, enabled taxes with rates, filing frequencies, and customizationsreadtax:read
list_tax_obligationsList tax obligationsList tax obligations with amounts due, amounts paid, due dates, status, and an isOverdue flag. Filter by period (YYYY-MM, YYYY-Qn, YYYY) or status (pending, due, paid, partial, overdue).readtax:read
create_manual_tax_obligationCreate manual tax obligationRecord a manually tracked tax obligation with a name, amount due, and due date. It appears in the tax calendar and summaries alongside calculated taxes.writetax:write
record_tax_paymentRecord tax paymentRecord a payment against a tax obligation. Updates the paid amount and marks the obligation paid or partial automatically.writetax:write
get_pos_configGet POS configurationGet the POS terminal configuration: receipt header/footer, tax label, discount and refund policies, and accounting sync settingsreadpos:read
list_pos_transactionsList POS transactionsList POS payment transactions with status, amounts, payment breakdown, and terminal references. Filter by status or date range.readpos:read
get_pos_eod_summaryGet end-of-day POS summaryGet the end-of-day sales summary for a date: transaction count, total revenue, total profit, breakdown by payment method, and top 10 productsreadpos:read
list_capital_injectionsList capital injectionsList capital injections (owner/investor money added to accounts) with purpose, source, and total invested. Filter by date range, purpose, source, or account.readcapital:read
create_capital_injectionRecord capital injectionRecord a capital injection into an account. Increases the account balance. Purpose: general, restock, pay_expenses, expansion, emergency, loan, or other. Source: owner_personal, investor, loan, savings, or other.writecapital:write
list_expense_groupsList expense groupsList expense groups (projects/events that bundle expenses) with budget, total spent, remaining budget, and expense countreadexpenses:read
get_expense_groupGet expense groupGet one expense group with all its linked expenses and budget totalsreadexpenses:read
create_expense_groupCreate expense groupCreate an expense group to bundle related expenses (e.g. a renovation, event, or project) with an optional budgetwriteexpenses:write
add_expense_to_groupAdd expense to groupLink an existing expense to an expense group so it counts toward the group budgetwriteexpenses:write
list_deleted_recordsList deleted recordsList soft-deleted record snapshots (clients, products, sales, expenses, debtors, subscriptions, documents) with who deleted them and whyreaddeleted-records:read
restore_deleted_recordRestore deleted recordRestore a deleted record from its snapshot back into the live data. Supported types: Client, Product, Sale, Expense, Debtor, Subscription, Document.writedeleted-records:write
list_form_responsesList form responsesList responses submitted to a form, together with the form field definitions needed to interpret the answersreadforms:read
create_formCreate formCreate a draft form with fields (short_text, long_text, multiple_choice, dropdown, checkboxes, rating, number, etc.). Publish it from the Forms page to collect responses.writeforms:write
get_accounting_sync_statusGet accounting sync statusGet the accounting sync status: connected provider (QuickBooks, Xero, or CSV), last sync time, pending/failed job counts, and recent sync logs. Tokens are never returned.readaccounting:read
list_business_goalsList business goalsList business goals (revenue, profit, sales count, expense reduction targets) with current progress and statusreadgoals:read
create_business_goalCreate business goalCreate a business goal with a target value and deadline. Types: revenue, profit, sales_count, expense_reduction, clients, custom. Progress is tracked automatically from sales and expenses.writegoals:write
create_issueSubmit bug report or feature requestSubmit a bug report or feature request to the public Bizpro Desk issue board. Links and emails are stripped; it appears after admin approval.writeissues:write
update_expenseUpdate expenseUpdate an expense (description, amount, category, date, payment method/status, supplier, notes). If the amount changes on an account-paid expense, the account balance is adjusted by the difference.writeexpenses:write
delete_expenseDelete expenseDelete an expense (requires confirm=true). Refunds the linked account and keeps a restorable snapshot in Deleted Records.writeexpenses:write
create_raw_materialCreate raw materialCreate a raw material for production tracking with unit, cost, opening stock, and reorder levelswriteproduction:write
restock_raw_materialRestock raw materialRecord a raw material purchase. Increases stock and recalculates the weighted-average unit cost.writeproduction:write
create_budget_planCreate budget planCreate a budget plan (draft by default) with a name, date range, and currency. Add line items with add_budget_plan_item.writebudgets:write
add_budget_plan_itemAdd budget plan itemAdd a line item to a budget plan. Type input_cost for planned spending or expected_output for projected production/yield.writebudgets:write
update_appointmentUpdate appointmentUpdate or reschedule an appointment: date, times, duration, client, notes, or status (scheduled, completed, cancelled, no-show)writeappointments:write
update_subscriptionUpdate subscriptionUpdate a client or vendor subscription: plan/service details, amount, billing cycle, dates, status (set status to cancelled to cancel), or noteswritesubscriptions:write
renew_subscriptionRenew subscriptionRenew a client subscription by N months (default 1). Extends the expiry date, reactivates it, and re-arms the expiry reminder.writesubscriptions:write
restock_productRestock productAdd stock to a product and record a restock transaction in the stock history. Optionally record the purchase unit cost.writeproducts:write
create_branchCreate branchCreate a company branch with name, optional unique code, location, and currency. Setting isHeadquarters moves the HQ flag to the new branch.writebranches:write

Write Safety

All destructive actions (create, update, delete) are annotated with destructiveHint: true. Delete operations additionally require confirm: true in the parameters to prevent accidental data loss.

All write actions support idempotency keys to prevent duplicate operations.

Error Handling

HTTP CodeMeaning
401Missing or invalid MCP token
403Token lacks required permission
429Rate limit exceeded (100/min)
500Internal server error

Useful Links