← Momentum MCP

Documentation

Momentum MCP puts your FactorSoft deployment behind a Model Context Protocol endpoint, so an AI client can answer questions about your receivables without anybody exporting a spreadsheet.

Endpoint and authorization

The MCP endpoint is https://mcp.mcf.fund/mcp. It speaks streamable HTTP and is stateless, so it works with hosted clients such as OpenAI ChatGPT, Claude, and Grok.

Authorization is OAuth 2.1: a client discovers the authorization server from /.well-known/oauth-protected-resource, registers itself, and takes the user through a PKCE authorization code flow. Nobody pastes an API key into a client, and access can be revoked centrally.

ChatGPT Custom GPTs import the Actions schema at https://mcp.mcf.fund/gpt/openapi.json. Instruction packs (so a GPT is not loaded with every tool) are composed at https://mcp.mcf.fund/gpt/instructions.txt. Setup for each client is on the connect page.

Allowlisting our requests

Every request we make to your FactorSoft host leaves from a single static IP address, so you can restrict access at your firewall instead of exposing the API broadly. The current address is shown on your connection page and will not change without notice.

We only ever call your host in response to a tool call from a workspace member with MCP access. There is no background crawling and we keep no copy of your FactorSoft data.

How the tools are organised

The FactorSoft API exposes over a hundred operations. Presenting all of them as individual tools would make a model worse at choosing between them, so they are collapsed into a focused set:

  • Purpose-built tools for the things people actually ask about: clients, debtors, invoices, payments, transactions, advances, relationships, credit requests and collection notes.
  • fs_lookup folds every reference table behind one tool with a kind argument.
  • fs_get_sync_token and fs_get_deltas cover incremental sync for each entity.
  • fs_describe_api and fs_request reach the long tail: search the operation catalogue, then call an endpoint directly.
  • fs_ping proves the connection works.

Read tools return a curated field projection by default, and accept a fields argument for more (or ["*"] for everything). Lists return 25 records at a time with a nextOffset to page with. Both defaults exist because tool results are paid for by the token.

API coverage

These FactorSoft feature areas are reachable, either through a purpose-built tool or through fs_request:

  • Advances
  • Brokers
  • CalcClient
  • CarrierPayments
  • Carriers
  • CarrierTerms
  • CheckBatch
  • Clients
  • CollectionNotes
  • CreditRequests
  • Debtors
  • Endpoints
  • FundingAmounts
  • ImportHistory
  • InvoiceDisputes
  • Invoices
  • Lookups
  • MiscDataElements
  • Payments
  • PmtChecks
  • Relationships
  • SecurityRoles
  • System
  • Transactions
  • Uploads
  • VendorDelivery

Invoice and client file downloads are in scope: fs_get_invoice_image and fs_get_client_document return the FactorSoft file bytes. Uploads stay out of scope — they are multipart transfers that suit an HTTP integration rather than a tool call. Purchase batch posting is reachable only through fs_request, because posting a batch moves real money and should take deliberate intent rather than a plausible-looking tool name.

Write access

Workspaces are read-only by default, and mutating tools are not registered at all until an administrator enables them. That is stronger than a permission check: a model cannot be talked into using a tool it was never shown.

With writes enabled, a client can create credit requests, add collection and dispute notes, and update notice-of-assignment and credit-insurance details. Each of those tools is annotated so clients know to confirm before calling, and each invocation is recorded in the workspace audit log.

Access and refusals

Workspace membership and MCP access are separate. An administrator can invite people, then grant or revoke MCP access for each member without removing them from the workspace.

When something is wrong, the endpoint says so through the protocol rather than failing the connection: a suspended workspace, missing MCP access, or an unverified FactorSoft connection comes back as a tool error a model can read aloud to you.

How your credentials are held

FactorSoft secrets are encrypted with a per-record data key that is itself wrapped by a Cloud KMS key, so the plaintext never leaves the process that needs it. Secrets are write-only in the dashboard: once saved they are never displayed or returned by any API or tool, and they are excluded from logs by name.

Credential creation, rotation and deletion, MCP access changes and every write-tool invocation are recorded in an audit log scoped to your workspace.

Governance and risk

Operators and administrators can review the governance document set in the repository at docs/governance/ (data classification, risk register, AI client policy including OpenAI Business retention, onboarding checklist). FactorSoft business data is not stored in Momentum's database; the main exposure is data entering your chosen AI client (OpenAI ChatGPT Business/Enterprise, Claude Team/Enterprise, Grok Business/Enterprise).