Bol Ai

io.github.peter-schoutPublished by GitHub account peter-schoutv1.0.0Updated Oct 28, 2026

Extract structured data from Bills of Lading: parties, ports, containers, incoterms. EU-hosted.

VerifiedStreamable HTTPWeb executableFiles & StorageData & AnalyticsBusiness & Commerce

Overview

AI-generated overview

Bol.ai extracts structured data from freight documents such as Bills of Lading, invoices and packing lists, and reconciles and exports the results.

What you can do
  • Extract structured fields from a single freight document (PDF, PNG or JPG) via URL or base64, with automatic document type detection
  • Run batch extraction on up to 10 document URLs with per-document outcomes
  • List recent documents and fetch a document's extraction result, including corrections and verification warnings
  • Save corrected field values that take precedence over the original extraction
  • Reconcile related documents in a shipment by shared reference numbers and compare parties, weights and package counts
  • Export completed extractions as normalized TMS/ERP-ready line rows, and check remaining credits and subscription status
When to use it
Useful for logistics, freight forwarding and trade-compliance workflows where an assistant should read shipping documents, correct or verify extracted fields, cross-check documents in one shipment, and hand normalized rows to a TMS or ERP.
Requirements
Remote MCP endpoint at bol.ai over streamable HTTP. Requires a Bol.ai API key sent as a bearer token in the Authorization header; keys are created in the app on a Professional plan. Documents must be reachable by URL or supplied as base64 content, max 10 MB each.
Before you install
The API key in the Authorization header is a secret and should be kept out of logs and shared configs. Extraction consumes prepaid credits, and each document in a batch is billed independently, so a batch can run out of credits partway; check usage first. Saving corrections and exporting write data to the account. Freight documents are sent to a third-party EU-hosted service.

Installation

In SourceWeft

  1. Open Bol Ai in the dashboard and add it to a workspace.
  2. Connect Authorization token credentials. They are stored privately and never shown on public pages.
  3. Enable the server for the chats that should use its tools.

Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.

Use with an agent

Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.

Read https://sourceweft.com/mcp/io.github.peter-schout%2Fbol-ai/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.

Read the install guide the agent follows

Other MCP clients

Add this to your client's mcpServers config.

{
  "mcpServers": {
    "bol-ai": {
      "type": "http",
      "url": "https://bol.ai/api/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_TOKEN>"
      }
    }
  }
}

Tools

8

extract_bol

Extract freight document

Extract structured data from a freight document (PDF, PNG or JPG, max 10 MB): Bill of Lading, commercial invoice, packing list, or CMR road waybill. The document type is detected automatically and returned as `doc_type`. Provide either a fetchable `url` or `base64` file content. Fields not present in the document are null — never guessed. Each successful extraction bills one document.

Parametersurlbase64filename

extract_batch

Extract multiple freight documents

Extract up to 10 freight documents in one call. Provide an array of fetchable URLs; each document is processed and billed independently, and the response reports a per-document outcome so partial success (e.g. running out of credits mid-batch) is explicit.

Parametersurlsrequired

list_documents

List documents

List the 100 most recent documents for this account with id, filename, status (pending/done/failed), doc_type and primary reference number.

Takes no parameters.

get_document

Get extraction result

Get the extraction result for a document by id: doc_type, extracted fields, user corrections (when present), and deterministic verification warnings (ISO 6346 container check digits, plausibility flags). `fields` is the best available data (corrections win); `original_fields` and `corrected_fields` show both sides.

Parametersidrequired

save_corrections

Save field corrections

Save corrected field values for an extracted document. The original extraction is kept alongside the corrections; corrected data takes precedence in get_document, exports and reconciliation. Pass the complete corrected fields object (same shape as returned by get_document).

Parametersidrequiredfieldsrequired

export_documents

Export documents as normalized rows

Export completed extractions as TMS/ERP-ready normalized line rows (one row per container / invoice line / package / goods line), newest first. Optional doc_type filter and max_rows cap. Corrected data wins over the original extraction. For CSV/XLSX files use GET /api/bol/export on the REST API.

Parameterstypemax_rows

get_usage

Check credits and subscription

Check this account's remaining prepaid credits and subscription status. Call this before large batches to avoid running out of credits mid-workflow. When the account cannot bill more documents, a human can top up at the returned buy_credits_url.

Takes no parameters.

Version history

1
  1. v1.0.0LatestSep 16, 2026

Score

83% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 daysRequired25 pts
  • Auth declaredRequired10 pts
  • Tools listedRequired15 pts
  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts

    Declare a GitHub repository with a README, or serve resource_documentation in the OAuth protected-resource metadata.

  • LicenseNot applicable

    A hosted service is used under its provider's terms, so no license is expected here. This check is left out of the percentage.