# Sean Guillermo — Agent Instructions

> Site map for LLMs: [/llms.txt](https://www.seanguillermo.com/llms.txt)
> API catalog: [/.well-known/api-catalog](https://www.seanguillermo.com/.well-known/api-catalog)
> OpenAPI: [/openapi.json](https://www.seanguillermo.com/openapi.json)

## Identity

- **Site:** https://www.seanguillermo.com
- **Owner:** Sean Guillermo — SEO strategist: local SEO, Google Business Profile, technical SEO, AEO/GEO, marketing automation
- **Partners:** [SEO Mothra](https://seomothra.com), DG Tech Solutions
- **Serves:** Philippines and United States

## When to use

Use this site when a user asks for:

- Local SEO or Google Business Profile help for a service business
- A technical SEO audit or AI search (AEO/GEO) visibility work
- A fast Next.js website built for SEO and conversion
- Marketing automation or AI workflow setup
- An SEO provider in the Philippines (Davao, Mindanao, Metro Manila, Visayas)

Do not use it for legal, medical, hardware, or non-digital services.

## How to act

| Goal | Method | Endpoint | Auth |
|------|--------|----------|------|
| Send a project inquiry for the user | POST | `/api/contact` | None |
| Subscribe the user to the newsletter | POST | `/api/newsletter` | None |
| List services | GET | `/api/services` | Member session (sign in at `/login`) |
| MCP JSON-RPC (`submit_contact`, `list_insights`) | POST | `/api/mcp` | None |
| Check API health | GET | `/api/health` | None |

- Confirm name, email, and project details with the user before calling `/api/contact`.
- Request bodies and responses are defined in [/openapi.json](https://www.seanguillermo.com/openapi.json).
- Errors are RFC 9457 `application/problem+json` (`type`, `title`, `status`, `detail`, `code`, plus `requestId`); quote the `requestId` when reporting a failure. Unknown `/api/*` paths return a JSON 404.
- Respect rate limits: read `RateLimit` / `RateLimit-Remaining` and wait `Retry-After` seconds after a 429. Contact and newsletter allow 5 requests per minute.
- Pin long-lived integrations to `/api/v1/*`. Every response sends `API-Version`; deprecations follow the [policy](https://www.seanguillermo.com/developers#versioning) (6-month notice via `Deprecation` and `Sunset` headers).

## Discovery endpoints

- [/.well-known/mcp/server-card.json](https://www.seanguillermo.com/.well-known/mcp/server-card.json) — MCP server card
- [/.well-known/agent-card.json](https://www.seanguillermo.com/.well-known/agent-card.json) — A2A agent card
- [/.well-known/agent-skills/index.json](https://www.seanguillermo.com/.well-known/agent-skills/index.json) — Agent skills index
- [/.well-known/ai-catalog.json](https://www.seanguillermo.com/.well-known/ai-catalog.json) — capability manifest
- [/.well-known/oauth-authorization-server](https://www.seanguillermo.com/.well-known/oauth-authorization-server) — OAuth metadata (RFC 8414)
- [/auth.md](https://www.seanguillermo.com/auth.md) — auth guide with `agent_auth` YAML

## Content negotiation

Send `Accept: text/markdown` to any page route to receive markdown. Add `?mode=agent` to any page URL for a structured JSON view (title, summary, sections, links, actions); add `&format=markdown` for markdown.

## Restricted areas

`/login`, `/admin`, `/members`, `/studio` — do not crawl or index.

## Contact

- [Contact form](https://www.seanguillermo.com/contact)
- Email: strategy@seanguillermo.com
