urantia-papers
OfficialAPI «Документов Урантии»
API для «Документов Урантии», удобное для разработчиков и ИИ-агентов. Предоставляет полнотекстовый поиск, доступ к структурированному контенту и аудиоссылки для всех 14 500+ абзацев в 197 документах.
Конечные точки API
Метод | Путь | Описание |
GET |
| Оглавление (части → документы) |
GET |
| Список всех 197 документов |
GET |
| Отдельный документ со всеми абзацами |
GET |
| Разделы внутри документа |
GET |
| Случайный абзац |
GET |
| Абзац по любому формату ID |
GET |
| Абзац с окружающим контекстом |
POST |
| Полнотекстовый поиск с пагинацией |
GET |
| Аудиоинформация для абзаца |
POST |
| Семантический (векторный) поиск |
GET |
| Список сущностей (существа, места, концепции и т. д.) |
GET |
| Детали сущности |
GET |
| Абзацы, упоминающие сущность |
GET |
| Генерация цитаты (APA, MLA, Chicago, BibTeX) |
GET |
| Динамическое изображение Open Graph |
POST |
| Векторные эмбеддинги для абзацев |
GET |
| Профиль пользователя (требуется авторизация) |
POST |
| Создать закладку (требуется авторизация) |
GET |
| Список закладок (требуется авторизация) |
GET |
| Список заметок (требуется авторизация) |
POST |
| Создать заметку (требуется авторизация) |
GET |
| Прогресс чтения (требуется авторизация) |
GET |
| Настройки пользователя (требуется авторизация) |
POST |
| Получить код авторизации (требуется авторизация) |
POST |
| Обменять код на токен |
GET |
| Получить информацию о приложении OAuth |
Интерактивная документация доступна по адресу /docs (Swagger UI). Спецификация OpenAPI находится в /openapi.json.
Related MCP server: mnemex
SDK
Официальные TypeScript SDK доступны в npm:
npm install @urantia/api # Typed client for all endpoints
npm install @urantia/auth # OAuth client for accounts.urantiahub.comСм. urantia.dev/sdks для получения документации.
Форматы ID абзацев
API принимает три формата ссылок, которые автоматически определяются из строки:
Формат | Пример | Структура |
globalId |
|
|
standardReferenceId |
|
|
paperSectionParagraphId |
|
|
Поиск
curl -X POST https://api.urantia.dev/search \
-H "Content-Type: application/json" \
-d '{"q": "Universal Father", "limit": 10, "type": "and"}'Режимы поиска: and (все слова, по умолчанию), or (любое слово), phrase (точное совпадение). Дополнительные фильтры: paperId, partId.
Аудио
Абзацы включают поле audio — вложенный объект, ключами которого являются модель и голос, или null, если аудио отсутствует:
{
"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" }
}
}
}Доступные модели и голоса различаются для каждого абзаца. Специальная конечная точка /audio/:paragraphId возвращает только аудиоданные для заданного абзаца.
Кэширование
Ответы включают заголовки Cache-Control. CDN Cloudflare кэширует данные на границе сети через s-maxage:
Маршрут | CDN (s-maxage) | Браузер (max-age) |
| 24 часа | 1 час |
| 1 час | 5 минут |
| no-store | no-store |
| 1 час | 5 минут |
Для ИИ-агентов
Рекомендуемый порядок действий:
GET /toc— понять структуру книгиPOST /search— найти релевантные отрывкиGET /paragraphs/:ref/context?window=3— получить окружающий контекстGET /papers/:id— прочитать документ целиком
MCP-сервер
API включает встроенный MCP сервер по адресу https://api.urantia.dev/mcp — подключите Claude Desktop, Cursor или любой другой MCP-клиент для доступа к:
13 инструментам — поиск, поиск абзацев, навигация по документам, просмотр сущностей, аудио
2 шаблонам ресурсов —
urantia://paper/{id}(markdown) иurantia://entity/{id}2 шаблонам промптов —
study_assistant,comparative_theology
Установка в один клик через Smithery.
Аутентификация
Публичные конечные точки не требуют авторизации. Конечные точки пользователя (/me/*) требуют JWT. Поток OAuth:
Зарегистрируйте приложение через
POST /auth/apps(администратор) или самостоятельно на accounts.urantiahub.com/developerПользователь входит в систему на accounts.urantiahub.com
Обменяйте код авторизации на токен доступа через
POST /auth/tokenПередайте токен как
Authorization: Bearer <token>
Токены доступа — это HS256 JWT со сроком действия 7 дней. PKCE поддерживается для браузерных приложений.
Наблюдаемость
Логирование: BetterStack через
@logtail/edge— структурированные JSON-логи с метаданными запросовОтслеживание ошибок: Глобальный обработчик ошибок отправляет трассировки стека в BetterStack
Проверка работоспособности:
GET /health— проверяет подключение к БДАптайм: Монитор аптайма BetterStack
Технологический стек
Среда выполнения: Bun (разработка) / Cloudflare Workers (продакшн)
Фреймворк: Hono + @hono/zod-openapi
База данных: Supabase (PostgreSQL + pgvector)
ORM: Drizzle
Наблюдаемость: BetterStack (логирование, аптайм)
Разработка
# 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 devСервер по умолчанию запускается на http://localhost:3000.
Развертывание
Развернуто на Cloudflare Workers. Первоначальная настройка:
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 accessРазвертывание:
bun run deployДанные
Контент получен из urantia-papers-json — 197 документов, 1 626 разделов, 14 500+ абзацев с аудиосопровождением через audio.urantia.dev.
Лицензия
Этот проект лицензирован по лицензии MIT.
Отказ от ответственности
Это независимый общественный проект, созданный Adams Technologies LLC. Он не связан, не одобрен и не аффилирован с Urantia Foundation. Оригинальный английский текст «Книги Урантии» является общественным достоянием (Michael Foundation v. Urantia Foundation, 10-й окружной апелляционный суд, 2003 г.). Все упоминания «Урантии» являются номинативным добросовестным использованием для идентификации предмета обсуждения.
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for Project Gutenberg — 75,000+ public-domain ebooks with full plain-text retrieval.
Free, no-key Bible MCP server — 86 translations in 32 languages, from any MCP client.
Bible corpus MCP server: scripture, Greek/Hebrew interlinear data, cross-refs, semantic search.
Related MCP Servers
- AlicenseAqualityAmaintenanceFree, no-key MCP server for reading scripture from 35+ public-domain translations in 8 languages. Lets users fetch verses, chapters, and passages via natural language from any MCP client.7136 npm1MIT
- AlicenseNot gradedqualityCmaintenanceAn MCP server that ingests books into a structured, cross-linked wiki of sources, entities, concepts, and syntheses, managed by an LLM.41 npm2MIT
- AlicenseNot gradedqualityAmaintenanceSemantic search and comparative retrieval over a multi-tradition corpus of sacred and foundational texts, exposed as an MCP server.MIT
- FlicenseNot gradedqualityAmaintenanceAn MCP server for Christian scholarship and research, providing read-only access to a SQLite corpus of 66-book BSB and 83-book WEB Bibles, original-language Greek/Hebrew word studies with Strong's and morphology, cross-references, patristic citations (Irenaeus, Justin Martyr, Apostolic Fathers), verse alignments, semantic and hybrid search over ~55,800 embeddings, and multi-work passage retrieval, interlinear lookup, and research-brief synthesis prompts.3-