# For software agents

This page is for software agents and for people who operate them. Human buyers use [How to buy](/buy/) and [Contact](/contact/). The offer is the same; only the reading format differs.

This origin is built so a software agent can read the offer without scraping HTML. The interaction is fetch, validate, then email. There is no write tool and no MCP process on this host.

Start with [/llms.txt](/llms.txt). It is the index. Then load the catalog and the RFQ schema. The live sale is a voyage assessment: copy [the assessment example](/agents/examples/rfq-assessment.json), replace the example values, and fill `voyage_scope` with `imo_numbers` (every vessel in the assessment), corridor names and cargo class. [The standalone example](/agents/examples/rfq-standalone.json) and [the programme example](/agents/examples/rfq-programme.json) record interest in the coming Basic launch (products, crew training, officers training); they are not an order for a service that is already on sale. Email the JSON to hello@securesailsolutions.com. Do not POST.

| Resource | What it is for |
|---|---|
| [llms.txt](/llms.txt) | Index and limits. Fetch this first. |
| [articles.json](articles.json) | Published insights |
| [chunks.json](chunks.json) | Question-answer blocks for RAG |
| [JSON-LD graphs](ld/index.json) | Per-page Schema.org at `/agents/ld/<slug>.json` |
| [article.schema.json](article.schema.json) | Front matter for a new insight (GitLab MR on the website repo, not POST; marketing follows WERKWIJZE.md in the engine) |
| [catalog.json](catalog.json) | Products, programmes, claims we do not make |
| [rfq.schema.json](rfq.schema.json) | JSON Schema for a quotation request |
| [rfq-assessment.json](examples/rfq-assessment.json) | Valid example for a voyage assessment |
| [rfq-standalone.json](examples/rfq-standalone.json) | Interest in products or training for the Basic launch (not sold yet) |
| [rfq-programme.json](examples/rfq-programme.json) | Interest in Basic, Standard or Premium (not sold yet) |
| [SKILL.md](SKILL.md) | Short procedure an agent can load |
| [openapi.json](openapi.json) | GET-only OpenAPI of the public files |
| [organization.json](organization.json) | Schema.org Organization |
| [Markdown twins](/en/index.md) | `/en/<page>.md` for each human page |
| [MCP descriptor](/.well-known/mcp.json) | Read-only resources, `tools: []` |
| [Agent-skills index](/.well-known/agent-skills/index.json) | Pointer to SKILL.md |

Production nginx allows CORS on `/agents/` and `/llms.txt` so a browser-hosted agent can read them. The descriptor at `/.well-known/mcp.json` tells an agent where the files are; it does not start a server.

Do not invent weapons, tactics, prices or insurance discounts. Do not put manifests, crew lists, waypoints or security plans in `voyage_scope` or `notes`.
