urantia-papers
Officialウランティア・ペーパー API
『ウランティア・ペーパー』のための、開発者およびAIエージェントフレンドリーなAPIです。197のペーパーにわたる14,500以上の全段落について、全文検索、構造化されたコンテンツへのアクセス、および音声URLを提供します。
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 にあります。
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は、文字列から自動検出される3つの参照形式を受け入れます:
形式 | 例 | 構造 |
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 ヘッダーが含まれます。CloudflareのCDNは s-maxage を介してエッジでキャッシュします:
ルート | CDN (s-maxage) | ブラウザ (max-age) |
| 24時間 | 1時間 |
| 1時間 | 5分 |
| キャッシュなし | キャッシュなし |
| 1時間 | 5分 |
AIエージェント向け
推奨フロー:
GET /toc— 本の構造を理解するPOST /search— 関連する箇所を見つけるGET /paragraphs/:ref/context?window=3— 前後の文脈を取得するGET /papers/:id— ペーパー全体を読む
MCPサーバー
APIには https://api.urantia.dev/mcp に組み込みの MCP サーバーが含まれています。Claude Desktop、Cursor、または任意のMCPクライアントを接続して以下にアクセスできます:
13個のツール — 検索、段落検索、ペーパーナビゲーション、エンティティ閲覧、音声
2個のリソーステンプレート —
urantia://paper/{id}(マークダウン) および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>としてトークンを渡す
アクセストークンは7日間有効なHS256 JWTです。ブラウザベースのアプリではPKCEがサポートされています。
可観測性
ログ:
@logtail/edgeを介したBetterStack — リクエストメタデータを含む構造化されたJSONログエラー追跡: グローバルエラーハンドラーがスタックトレースをBetterStackに送信
ヘルスチェック:
GET /health— DB接続を確認稼働時間: 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 による独立したコミュニティプロジェクトです。ウランティア財団とは提携、承認、または関連していません。『ウランティア・ブック』のオリジナルの英語テキストはパブリックドメインです (Michael Foundation v. Urantia Foundation, 10th Cir. 2003)。「ウランティア」という言葉の使用はすべて、主題を特定するための名目的公正使用です。
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