verae-mcp-timestamping-server/docs/operator-guide.md
George Lambert 840755c84a docs: HTML and PDF set plus optional CORS
WhatToChange: recommended-changes/2026-09-21-docs-and-cors/
  What-to-Change.md
  What-to-Change-To.md
  How-to-implement-the-changes.md

What was actually done:
- Markdown, HTML, and PDF for standards, architecture, API, and the operator guide.
- README points at scripts/build-docs.sh.
- VERAE_MCP_CORS=1 enables CORS and JSON responses on the Streamable HTTP app.

What was not done:
- (none)
2026-09-21 14:13:07 -04:00

1.2 KiB

Operator guide

Install

cd /Users/marchon/research/modelcontextprotocol/verae-mcp-timestamping-server
uv sync --group dev

Run stdio

uv run verae-mcp-timestamping-server

Run Streamable HTTP

VERAE_MCP_TRANSPORT=streamable-http uv run verae-mcp-timestamping-server

The listener is http://127.0.0.1:8000/mcp.

For the sample page on another origin:

VERAE_MCP_CORS=1 VERAE_MCP_TRANSPORT=streamable-http uv run verae-mcp-timestamping-server

A page served from the public internet still cannot call 127.0.0.1 from current browsers. Open site/index.html on the same machine, or put TLS and an access control in front of a non-loopback bind you choose yourself.

Global token

# POST https://api.veraetime.net/auth/login and store access_token=
# in ~/.verae/auth.properties (mode 600), or:
export VERAE_GLOBAL_TOKEN=...

Tests

uv run pytest

Stamp traces (live VeraeTime) are a separate script. They write debug-trace/<YYYY-MM-DDTHHMMSSZ>-<slug>/:

uv run python scripts/transaction_log_test.py

Build these documents

bash scripts/build-docs.sh

HTML lands in docs/html/. PDF lands in docs/pdf/.