# Lucis.life developer resources

Lucis is a preventive wellness membership (lucis.life). This page lists what an agent or developer can call today.

## When to use Lucis

- A user wants to understand the Lucis membership, the biomarker panel, Score Lucis, or where to book a blood draw in Europe or the UK.
- An agent needs product facts: prefer llms.txt, the sitemap, or this page instead of inventing endpoints.
- Do not use Lucis as a substitute for a healthcare professional or personal medical advice.

## Machine-readable files

- [llms.txt](https://www.lucis.life/llms.txt) : agent instructions, when-to-use, curated links
- [Lucis OpenAPI spec](https://www.lucis.life/openapi.json) : public catalog, OAuth, RFC 9457 errors
- [Lucis OpenAPI spec (YAML)](https://www.lucis.life/api/openapi.yaml)
- [Lucis OAuth 2.0 metadata](https://www.lucis.life/.well-known/oauth-authorization-server) : RFC 8414
- [Lucis OAuth protected resource](https://www.lucis.life/.well-known/oauth-protected-resource) : RFC 9728
- [Lucis.life auth docs](https://www.lucis.life/auth.md)
- [Lucis.life webhooks](https://www.lucis.life/webhooks.md)
- [Lucis.life MCP](https://www.lucis.life/docs/mcp.md)
- [sitemap.xml](https://www.lucis.life/sitemap.xml) : indexable URLs
- [robots.txt](https://www.lucis.life/robots.txt) : crawl rules

## Markdown content negotiation

Public pages honour `Accept: text/markdown` (and `.md` sibling URLs, e.g. `/about.md`). Response: `Content-Type: text/markdown; charset=utf-8` and `Vary: Accept`.

## Lucis public catalog API

The Lucis biomarker catalog is a read-only public GET. No authentication is required. An optional OAuth 2.0 `client_credentials` token (`catalog.read`) is documented. Catalog errors use `application/problem+json` (RFC 9457) with a machine-readable `code` and a human-readable `detail`. Lucis does not publish a member API. Lucis.life webhooks are not offered; poll the catalog GET instead.

- Same-origin EU: GET https://www.lucis.life/v1/biomarkers/public?template=public-complete-eu
- Same-origin UK: GET https://www.lucis.life/v1/biomarkers/public?template=public-v2-complete-uk
- EU: GET https://api.lucis.life/v1/public/services/lucis-complete-v2/biomarkers?country=FR&locale=en
- UK: GET https://api.lucis.life/v1/public/services/lucis-complete-v2-uk/biomarkers?country=GB&locale=en

## Lucis OAuth 2.0

- Discovery: GET https://www.lucis.life/.well-known/oauth-authorization-server
- Token: POST https://www.lucis.life/oauth/token with `grant_type=client_credentials`

Biomarker catalog only, never individual health data.

## Lucis typed errors

Catalog errors use `application/problem+json`. The `type` URI points at `/developers#<code>`.

### bad-request

Malformed request, for example an unknown catalog template.

### not-found

The requested public resource does not exist.

### method-not-allowed

HTTP method is not supported. The public catalog is a read-only GET.

### unsupported-grant-type

The token endpoint only issues client_credentials tokens.

### invalid-request

Token request is missing a required field or uses an unsupported Content-Type.

### invalid-scope

The requested scope is not catalog.read.

### bad-gateway

The upstream Lucis catalog origin failed.

### internal-error

Unexpected server error on a public agent endpoint.

### rate-limited

Too many requests. Honour Retry-After and the RFC RateLimit headers. Quota is best-effort per compute instance. A shared store is not required for the public catalog.

## Lucis.life OpenAPI spec

Machine-readable OpenAPI 3.1: https://www.lucis.life/openapi.json (JSON) and https://www.lucis.life/api/openapi.yaml (YAML).

## Lucis.life auth docs

Walkthrough: https://www.lucis.life/auth.md. RFC 8414 metadata: https://www.lucis.life/.well-known/oauth-authorization-server. Token: POST https://www.lucis.life/oauth/token.

## Lucis.life webhooks

Lucis.life does not currently publish outbound member webhooks. Poll the catalog GET instead. Details: https://www.lucis.life/webhooks.md.

## Lucis.life MCP

Lucis.life does not currently publish an MCP server. Poll the catalog GET instead. Details: https://www.lucis.life/docs/mcp.md.

Lucis does not replace medical advice. Our content is educational. If in doubt, speak with a healthcare professional.
