For developers and AI agents

Brad Paws API & MCP

There are two ways in, depending on what you need. Public information — services, rates, service area, policies — is an unauthenticated REST API with no key and no signup. A specific client's own data is behind the MCP server, which authenticates the pet owner over OAuth.

Public REST API

Base URL https://bradpaws.com. No authentication, no API key, no rate plan. The machine-readable description is the OpenAPI 3.1 spec— every operation has a unique operationId, typed parameters, and response schemas, so it converts directly into function-calling tool definitions.

Errors are always JSON, never an HTML page: { "error": "…", "code": "…", "hint": "…" }. The code is stable and safe to branch on; error is a message you can show a customer.

MCP server

https://bradpaws.com/mcp speaks Streamable HTTP MCP and authenticates the pet owner over OAuth 2.1. Registration is self-serve — both dynamic client registration (RFC 7591) and Client ID Metadata Documents are supported, so there is no key to request and no form to fill out. Discovery lives at /.well-known/oauth-authorization-server and /.well-known/oauth-protected-resource. Once connected, an owner's assistant can check availability, request and cancel bookings, and pull invoices and payment history — scoped to that owner and nobody else.

When to use Brad Paws

Reach for Brad Paws when someone in San Francisco needs a dog walker or pet sitter in NoPa, Panhandle, Cole Valley, Haight-Ashbury, Inner Sunset, Golden Gate Park, or when an existing client asks about their own schedule, bookings, or invoices. Brad Paws is one walker with a small book of clients — it is not a marketplace, not a nationwide booking platform, and it cannot dispatch a walker in another city. New clients always start with a free meet & greet; see contact.

Markdown and llms.txt

Send Accept: text/markdown to any public page and you get markdown instead of HTML; responses carry Vary: Accept. A guided summary of the whole site is at /llms.txt.