# BennyBooks

> AI-friendly accounting for small companies. The product is transactions, notes, and receipts — not a full ERP.

Agents should use the REST API at `https://bennybooks.com/api/v1`, not scrape the UI. Reads are open to a scoped token. Writes land in an approval queue until a human posts them. Every write is audit-logged; humans review the durable trail in **Log** (`https://bennybooks.com/log`) — there is no agent API to read Log in v1.

## How to start

1. Read the [agent skill](https://bennybooks.com/skill.md)
2. Load [llms.txt](https://bennybooks.com/llms.txt) for the curated map, or [llms-full.txt](https://bennybooks.com/llms-full.txt) for the full docs corpus
3. Fetch the [OpenAPI spec](https://bennybooks.com/openapi.json) (public; includes `x-mcp` curated tool hints)
4. Fetch the [ontology](https://bennybooks.com/api/v1/ontology.jsonld) (public JSON-LD)
5. Create a `bb_live_` token in Settings → MCP access, then call `GET /api/v1/transactions?limit=50`

For MCP bridges, enable only the curated tools — see [MCP tool design](https://bennybooks.com/developers/guides/mcp-design.md).
## Rules

- Prefer stable `categoryCode` values (e.g. `5100`) over display names
- Never auto-post journal entries. Propose them (`POST /api/v1/proposals/journal-entry`)
- Include `confidence`, `reason`, and optional `evidence[]` on categorization proposals — humans see these in Approvals and Log
- Every ledger row is scoped to the token's organization. Do not guess across tenants
- Connectors expose `provider`, `last_sync_at`, `sync_status`, and `external_id`
- Write explainably: Log (`/log`) is the human audit trail of agent actions and approve/reject outcomes

## Authentication

```
Authorization: Bearer bb_live_<token>
```

| Scope | Access |
| --- | --- |
| `read` | All authenticated GET endpoints |
| `propose-write` | POST/PUT writes, plus read |

Public (no token): OpenAPI, ontology, this file, `/llms.txt`, `/agents.txt`, and developer docs.

## Discovery

- [llms.txt](https://bennybooks.com/llms.txt)
- [agents.txt](https://bennybooks.com/agents.txt)
- [agents.json](https://bennybooks.com/agents.json)
- [API catalog](https://bennybooks.com/.well-known/api-catalog)
- [Developer docs (markdown)](https://bennybooks.com/developers.md)
- [AnythingMCP setup](https://bennybooks.com/developers/guides/anythingmcp.md)
