io. github. peter-schout/ bol-ai
by peter-schout · remote · no sign-in to list tools · v1.0.0 · published by GitHub user peter-schout
Extract structured data from Bills of Lading: parties, ports, containers, incoterms. EU-hosted.
8 tools: 4 change things and 4 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things4Claude Code: ask: see these tools
- Only reads4Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http bol-ai https://bol.ai/api/mcp --header 'Authorization: <your-authorization>'Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
8 tools
Changes things 4Claude Code: ask
export_documentsExport completed extractions as TMS/ERP-ready normalized line rows (one row per container / invoice line / package / goods line), newest first.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
extract_batchExtract up to 10 freight documents in one call.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
extract_bolExtract structured data from a freight document (PDF, PNG or JPG, max 10 MB): Bill of Lading, commercial invoice, packing list, or CMR road waybill.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: true
save_correctionsSave corrected field values for an extracted document.No findings
Why it is in this group
- The name "save_corrections" says "save": a word for a change.
Description, as the server wrote it 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).
Annotations the server declares
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: true
Only reads 4Claude Code: allow
get_documentGet the extraction result for a document by id: doc_type, extracted fields, user corrections (when present), and deterministic verification warnings (ISO 6346 container check digit…No findings
Why it is in this group
- The name "get_document" says "get": a word for reading.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
get_usageCheck this account's remaining prepaid credits and subscription status.No findings
Why it is in this group
- The name "get_usage" says "get": a word for reading.
Description, as the server wrote it 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.
Annotations the server declares
- readOnlyHint: true
list_documentsList the 100 most recent documents for this account with id, filename, status (pending/done/failed), doc_type and primary reference number.No findings
Why it is in this group
- The name "list_documents" says "list": a word for reading.
Description, as the server wrote it List the 100 most recent documents for this account with id, filename, status (pending/done/failed), doc_type and primary reference number.
Annotations the server declares
- readOnlyHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http bol-ai https://bol.ai/api/mcp --header 'Authorization: <your-authorization>'Run in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__bol-ai__list_documents",
"mcp__bol-ai__get_document",
"mcp__bol-ai__get_related_documents",
"mcp__bol-ai__get_usage"
],
"ask": [
"mcp__bol-ai__extract_bol",
"mcp__bol-ai__extract_batch",
"mcp__bol-ai__save_corrections",
"mcp__bol-ai__export_documents"
],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as bol-ai. Review it before you use it.
