urantia-papers
OfficialUrantia Papers API
Eine entwickler- und KI-agentenfreundliche API für die Urantia-Papiere. Bietet Volltextsuche, strukturierten Inhaltszugriff und Audio-URLs für alle über 14.500 Absätze in 197 Papieren.
API-Endpunkte
Methode | Pfad | Beschreibung |
GET |
| Inhaltsverzeichnis (Teile → Papiere) |
GET |
| Liste aller 197 Papiere |
GET |
| Einzelnes Papier mit allen Absätzen |
GET |
| Abschnitte innerhalb eines Papiers |
GET |
| Zufälliger Absatz |
GET |
| Absatz nach beliebigem ID-Format |
GET |
| Absatz mit umgebendem Kontext |
POST |
| Volltextsuche mit Paginierung |
GET |
| Audio-Informationen für einen Absatz |
POST |
| Semantische (Vektor-)Suche |
GET |
| Liste der Entitäten (Wesen, Orte, Konzepte usw.) |
GET |
| Details zur Entität |
GET |
| Absätze, die eine Entität erwähnen |
GET |
| Zitat generieren (APA, MLA, Chicago, BibTeX) |
GET |
| Dynamisches Open Graph-Bild |
POST |
| Vektor-Embeddings für Absätze |
GET |
| Benutzerprofil (Authentifizierung erforderlich) |
POST |
| Lesezeichen erstellen (Authentifizierung erforderlich) |
GET |
| Lesezeichen auflisten (Authentifizierung erforderlich) |
GET |
| Notizen auflisten (Authentifizierung erforderlich) |
POST |
| Notiz erstellen (Authentifizierung erforderlich) |
GET |
| Lesefortschritt (Authentifizierung erforderlich) |
GET |
| Benutzereinstellungen (Authentifizierung erforderlich) |
POST |
| Autorisierungscode abrufen (Authentifizierung erforderlich) |
POST |
| Code gegen Token austauschen |
GET |
| OAuth-App-Informationen abrufen |
Interaktive Dokumentation verfügbar unter /docs (Swagger UI). OpenAPI-Spezifikation unter /openapi.json.
SDKs
Offizielle TypeScript-SDKs sind auf npm verfügbar:
npm install @urantia/api # Typed client for all endpoints
npm install @urantia/auth # OAuth client for accounts.urantiahub.comSiehe urantia.dev/sdks für die Dokumentation.
Absatz-ID-Formate
Die API akzeptiert drei Referenzformate, die automatisch aus der Zeichenfolge erkannt werden:
Format | Beispiel | Struktur |
globalId |
|
|
standardReferenceId |
|
|
paperSectionParagraphId |
|
|
Suche
curl -X POST https://api.urantia.dev/search \
-H "Content-Type: application/json" \
-d '{"q": "Universal Father", "limit": 10, "type": "and"}'Suchmodi: and (alle Wörter, Standard), or (jedes Wort), phrase (exakte Übereinstimmung). Optionale Filter: paperId, partId.
Audio
Absätze enthalten ein audio-Feld – ein verschachteltes Objekt, das nach Modell und Stimme sortiert ist, oder null, falls kein Audio existiert:
{
"audio": {
"tts-1-hd": {
"nova": { "format": "mp3", "url": "https://audio.urantia.dev/tts-1-hd-nova-3:119.1.5.mp3" },
"echo": { "format": "mp3", "url": "https://audio.urantia.dev/tts-1-hd-echo-3:119.1.5.mp3" }
}
}
}Verfügbare Modelle und Stimmen variieren je nach Absatz. Der dedizierte Endpunkt /audio/:paragraphId gibt nur die Audiodaten für einen bestimmten Absatz zurück.
Caching
Antworten enthalten Cache-Control-Header. Cloudflares CDN cached am Edge über s-maxage:
Route | CDN (s-maxage) | Browser (max-age) |
| 24 Stunden | 1 Stunde |
| 1 Stunde | 5 Minuten |
| no-store | no-store |
| 1 Stunde | 5 Minuten |
Für KI-Agenten
Empfohlener Ablauf:
GET /toc– Struktur des Buches verstehenPOST /search– relevante Passagen findenGET /paragraphs/:ref/context?window=3– umgebenden Kontext abrufenGET /papers/:id– ein vollständiges Papier lesen
MCP-Server
Die API enthält einen integrierten MCP-Server unter https://api.urantia.dev/mcp – verbinden Sie Claude Desktop, Cursor oder einen beliebigen MCP-Client, um Zugriff zu erhalten auf:
13 Tools – Suche, Absatzsuche, Papiernavigation, Entitäten-Browsing, Audio
2 Ressourcen-Vorlagen –
urantia://paper/{id}(Markdown) undurantia://entity/{id}2 Prompt-Vorlagen –
study_assistant,comparative_theology
Ein-Klick-Installation über Smithery.
Authentifizierung
Öffentliche Endpunkte erfordern keine Authentifizierung. Benutzer-Endpunkte (/me/*) erfordern ein JWT. OAuth-Ablauf:
Registrieren Sie eine App über
POST /auth/apps(Admin) oder per Self-Service unter accounts.urantiahub.com/developerDer Benutzer meldet sich unter accounts.urantiahub.com an
Tauschen Sie den Autorisierungscode gegen ein Zugriffstoken über
POST /auth/tokenausÜbergeben Sie das Token als
Authorization: Bearer <token>
Zugriffstoken sind HS256-JWTs mit einer Gültigkeitsdauer von 7 Tagen. PKCE wird für browserbasierte Apps unterstützt.
Beobachtbarkeit
Logging: BetterStack via
@logtail/edge– strukturierte JSON-Logs mit Anforderungs-MetadatenFehlerverfolgung: Globaler Fehler-Handler sendet Stack-Traces an BetterStack
Gesundheitsprüfung:
GET /health– überprüft die DatenbankverbindungUptime: BetterStack Uptime-Monitor
Tech-Stack
Laufzeit: Bun (Entwicklung) / Cloudflare Workers (Produktion)
Framework: Hono + @hono/zod-openapi
Datenbank: Supabase (PostgreSQL + pgvector)
ORM: Drizzle
Beobachtbarkeit: BetterStack (Logging, Uptime)
Entwicklung
# Install dependencies
bun install
# Set up environment
cp .env.example .env
# Edit .env with your Supabase DATABASE_URL
# Push schema to database
bun run db:push
# Set up full-text search (run after db:push)
bun scripts/run-fts-setup.ts
# Generate audio manifest (requires ../urantia-hub-api)
bun run generate-manifest
# Seed database from urantia-papers-json
bun run seed
# Start dev server (hot reload)
bun run devDer Server läuft standardmäßig unter http://localhost:3000.
Bereitstellung
Bereitgestellt auf Cloudflare Workers. Erstmalige Einrichtung:
npx wrangler login
npx wrangler secret put DATABASE_URL
# paste your Supabase connection string (use pooler port 6543)
npx wrangler secret put APP_JWT_SECRET
# paste a 64-byte hex secret: node -e "console.log(require('crypto').randomBytes(64).toString('hex'))"
npx wrangler secret put ADMIN_USER_IDS
# comma-separated Supabase user UUIDs for admin accessBereitstellen:
bun run deployDaten
Inhalte stammen aus urantia-papers-json – 197 Papiere, 1.626 Abschnitte, über 14.500 Absätze mit Audio-Erzählung via audio.urantia.dev.
Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert.
Haftungsausschluss
Dies ist ein unabhängiges Community-Projekt von Adams Technologies LLC. Es ist nicht mit der Urantia Foundation verbunden, wird von ihr nicht unterstützt und steht in keiner Verbindung zu ihr. Der englische Originaltext von The Urantia Book ist gemeinfrei (Michael Foundation v. Urantia Foundation, 10th Cir. 2003). Jegliche Verwendung von "Urantia" erfolgt im Rahmen der nominativen fairen Verwendung zur Identifizierung des Gegenstands.
This server cannot be installed
Maintenance
Latest Blog Posts
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/urantia-hub/urantia-dev-api'
If you have feedback or need assistance with the MCP directory API, please join our Discord server