APIs are registered by adding an entry to CONTENTS and a stub note. No code changes are needed to add a new service.
Add a line to the CONTENTS note linking to the stub note, with a brief description:
Available APIs:
- weather: current conditions and forecast — see api/weather
- home-automation: lights, heating — see api/home-auto
The LLM reads CONTENTS at startup and knows what APIs exist and roughly what they do.
The stub note (e.g. api/weather) must contain at minimum:
service_url: http://example.com
# spec_url: optional, discovered automatically if absent
On first use the orchestrator runs spec discovery and schema generation, then writes the full cached schema into this same note (see Schema Cache). The note becomes self-documenting.
httpbin is the first integration target — a public HTTP testing service with a full OpenAPI spec. Useful for developing and testing the pipeline without real-world side effects or auth.
Stub note at api/httpbin (to be created when implementation begins).
HTTP service credentials are looked up from ~/.netrc by hostname — the same mechanism used for IMAP. The LLM never handles credentials directly.