# auth.md

This site is a public personal portfolio. Agents do not need to register or obtain access tokens to read any published resource.

## Audience

AI agents, recruiters, and crawlers that want structured facts about Rui Silva.

## Registration

Registration is optional and does not create an account.

- Discovery: https://ruisilva.dev/.well-known/oauth-protected-resource
- Authorization server: https://ruisilva.dev/.well-known/oauth-authorization-server
- Register: `POST https://ruisilva.dev/oauth/register`
- Claim: `POST https://ruisilva.dev/oauth/claim`
- Token: `POST https://ruisilva.dev/oauth/token`

Supported identity type: `anonymous`. Credential type: `none`. Issued tokens are the public sentinel `public` and are not validated by the APIs.

## Using the APIs

Call the public endpoints directly:

- https://ruisilva.dev/api/profile
- https://ruisilva.dev/api/projects
- https://ruisilva.dev/api/resume
- https://ruisilva.dev/api/contact
- https://ruisilva.dev/mcp

If a client requires a bearer token, send `Authorization: Bearer public`. The resource server ignores it.

## Scopes

`profile:read`, `projects:read`, and `contact:read` are advertised for discovery. All three are granted to every caller by default.
