06 · Software · platform · Sep 2026

Public API and MCP server

A public API of 165 routes and an MCP server of 108 tools, so AI agents can run client fulfilment end to end.

2,234 of my commits in this codebase[20] Sourcescripts/export-commits.mjsAs of2026-09-26StatusVerifiedAll sources →
Work flows through the system from the warehouse to the invoice.

The decision

Agents do the work, humans hold the irreversible

I wanted an agent to be able to take a client from onboarding to a loaded campaign without a person rebuilding context by hand. The risk is obvious: an agent that can send email or buy domains can do real damage. So every write is a dry run until it is confirmed, and there is no tool that sends a message, signs a contract or activates a campaign. Those stay human.[28] Sourceengineering notes (master mcp workspace selection)As of2026-09-20StatusVerifiedAll sources →

What I built

  • 165 API routes on scoped keys, each workspace isolated.[27] Sourceengineering notes (fulfilment api findings)As of2026-09-19StatusVerifiedAll sources →
  • An MCP server with 108 tools, every one a single call to the public API, so the key's scopes decide what an agent can see.[28] Sourceengineering notes (master mcp workspace selection)As of2026-09-20StatusVerifiedAll sources →
  • Refusal codes with written fixes, so an agent knows when to stop and hand the task to a person.

What was hard

Context without a human in the middle

Client knowledge lived across onboarding answers, call notes and campaign history. One read endpoint now returns the whole workspace so an agent starts with what a person would know.

What I learned

  • Design the refusals first. What an agent may not do is the product.

Results

  • Shipped 16 September 2026 and used daily to run our own client work.[18] Sourceengineering notes (agent api round)As of2026-09-16StatusVerifiedAll sources →