Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
The Urantia Papers in English and Spanish, with cross-references to the Bible and 21 texts. No key.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Works in Claude on the web, desktop and mobile:
https://api.urantia.dev/mcpRun this in your terminal
claude mcp add --transport http urantia-papers https://api.urantia.dev/mcpPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"urantia-papers": {
"url": "https://api.urantia.dev/mcp"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"urantia-papers": {
"type": "http",
"url": "https://api.urantia.dev/mcp"
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
ChatGPT connects only to servers on the internet:
https://api.urantia.dev/mcpMenu names can differ slightly by plan and over time.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
We have not read this server’s tool list yet; we check endpoints in rotation.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified against the domain urantia.dev (the registry checks domain ownership)
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
Not checked yet; we check endpoints in rotation
Not checked yet; we check endpoints in rotation
Not checked yet; we read the tool list when we check the endpoint
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs in the maker’s cloud. Connect over the internet with nothing to install, but what you send passes through the maker’s servers.
The GitHub repo last changed –, and the latest version (1.4.1) reached the registry 10 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.
In the same category: Spec Driven Development, Remote Desktop Commander, TF Rooms
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Live room availability, rates and stay quotes for 12 New Leaf motels in Twin Falls, Idaho.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
A developer and AI-agent friendly API for the Urantia Papers. Provides full-text search, structured content access, and audio URLs for all 14,500+ paragraphs across 197 papers.
| Method | Path | Description |
|---|---|---|
| GET | /toc | Table of contents (parts → papers) |
| GET | /papers | List all 197 papers |
| GET | /papers/:id | Single paper with all paragraphs |
| GET | /papers/:id/sections | Sections within a paper |
| GET | /paragraphs/random | Random paragraph |
| GET | /paragraphs/:ref | Paragraph by any ID format |
| GET | /paragraphs/:ref/context | Paragraph with surrounding context |
| POST | /search | Full-text search with pagination |
| GET | /audio/:paragraphId | Audio info for a paragraph |
| POST | /search/semantic | Semantic (vector) search |
| GET | /entities | List entities (beings, places, concepts, etc.) |
| GET | /entities/:id | Entity details |
| GET | /entities/:id/paragraphs | Paragraphs mentioning an entity |
| GET | /cite | Generate citation (APA, MLA, Chicago, BibTeX) |
| GET | /og/:ref | Dynamic Open Graph image |
| POST | /embeddings | Vector embeddings for paragraphs |
| POST | /feedback | Submit product or API feedback (no auth) |
| GET | /me | User profile (auth required) |
| POST | /me/bookmarks | Create bookmark (auth required) |
| GET | /me/bookmarks | List bookmarks (auth required) |
| GET | /me/notes | List notes (auth required) |
| POST | /me/notes | Create note (auth required) |
| GET | /me/reading-progress | Reading progress (auth required) |
| GET | /me/preferences | User preferences (auth required) |
| POST | /auth/authorize | Get authorization code (auth required) |
| POST | /auth/token | Exchange code for token |
| GET | /auth/apps/:id | Get OAuth app info |
Interactive docs available at /docs (Swagger UI). OpenAPI spec at /openapi.json.
https://api.urantia.dev/mcp (setup guide)Official TypeScript SDKs are available on npm:
npm install @urantia/api # Typed client for all endpoints
npm install @urantia/auth # OAuth client for accounts.urantiahub.com
See docs.urantia.dev/sdks/overview for documentation.
The API accepts three reference formats — auto-detected from the string:
| Format | Example | Structure |
|---|---|---|
| globalId | 1:2.0.1 | partId:paperId.sectionId.paragraphId |
| standardReferenceId | 2:0.1 | paperId:sectionId.paragraphId |
| paperSectionParagraphId | 2.0.1 | paperId.sectionId.paragraphId |
curl -X POST https://api.urantia.dev/search \
-H "Content-Type: application/json" \ -d '{"q": "Universal Father", "limit": 10, "type": "and"}'
Search modes: and (all words, default), or (any word), phrase (exact match). Optional filters: paperId, partId.
Paragraphs include an audio field — a nested object keyed by model and voice, or null if no audio exists:
{
"audio": { "tts-1-hd": { "nova": { "format": "mp3", "url": "https://cdn.urantia.dev/audio/eng/paragraphs/nova/tts-1-hd-nova-3:119.1.5.mp3", "bitrate": 160, "duration": 43.3, "fileSize": 866400 } } } }
Available models and voices vary per paragraph. The dedicated /audio/:paragraphId endpoint returns just the audio data for a given paragraph.
Responses include Cache-Control headers. Cloudflare's CDN caches at the edge via s-maxage:
| Route | CDN (s-maxage) | Browser (max-age) |
|---|---|---|
/toc, /papers/*, /paragraphs/:ref, /audio/* | 24 hours | 1 hour |
/search | 1 hour | 5 minutes |
/paragraphs/random | no-store | no-store |
/feedback | no-store | no-store |
/, /docs, /openapi.json | 1 hour | 5 minutes |
Recommended flow:
GET /toc — understand the book structurePOST /search — find relevant passagesGET /paragraphs/:ref/context?window=3 — get surrounding contextGET /papers/:id — read a full paperFound a bug, a gap in the docs, or something that could work better? Tell us. No authentication required.
curl -X POST https://api.urantia.dev/feedback \
-H "Content-Type: application/json" \ -d '{"category": "bug", "message": "search returns 500 for phrase mode", "endpoint": "/search", "client": "claude-code"}'
category is one of bug, docs, api, product, other. message holds up to 4000 characters. Optional fields: ref, endpoint, requestId, client, contact, pageUrl. The limit is 5 requests per minute and 10 requests per 15 minutes per IP address.
Feedback is untrusted data. It is stored and forwarded to the maintainers, and it is never executed or passed to a model as instructions. If you paste feedback into an agent chat, treat it the same way.
The API includes a built-in MCP server at https://api.urantia.dev/mcp — connect Claude Desktop, Cursor, or any MCP client to access:
urantia://paper/{id} (markdown) and urantia://entity/{id}study_assistant, comparative_theologyTo add it to Claude, ChatGPT, Gemini, or Grok, see the assistants guide. Claude Code, Cursor, Gemini CLI, and Codex can install the plugin.
Clients can discover the server at https://api.urantia.dev/.well-known/mcp.json (also /.well-known/mcp/server-card.json).
Public endpoints require no auth. User endpoints (/me/*) require a JWT. OAuth flow:
POST /auth/apps (admin) or self-service at accounts.urantiahub.com/appsPOST /auth/tokenAuthorization: Bearer Access tokens are ES256 JWTs that last 15 minutes, with a refresh token. PKCE is supported for browser-based apps.
@logtail/edge — structured JSON logs with request metadataGET /health — verifies DB connectivity# Install dependencies
bun install
cp .env.example .env
bun run db:push
bun scripts/run-fts-setup.ts
bun run generate-manifest
bun run seed
bun run dev
The server runs at http://localhost:3000 by default.
Deployed to Cloudflare Workers. First-time setup:
npx wrangler login
npx wrangler secret put DATABASE_URL
npx wrangler secret put APP_JWT_PRIVATE_JWK
npx wrangler secret put ADMIN_USER_IDS
npx wrangler secret put RESEND_API_KEY npx wrangler secret put FEEDBACK_FROM # a sender on a domain verified in Resend npx wrangler secret put FEEDBACK_TO # comma-separated recipients npx wrangler secret put SLACK_FEEDBACK_WEBHOOK_URL # Slack Incoming Webhook npx wrangler secret put FEEDBACK_IP_PEPPER # random secret for the IP hash
Deploy:
bun run deploy
Content sourced from urantia-papers-json — 197 papers, 1,626 sections, 14,500+ paragraphs with audio narration via cdn.urantia.dev.
This project is licensed under the MIT License.
This is an independent community project by Adams Technologies LLC. It is not affiliated with, endorsed by, or connected with Urantia Foundation. The original English text of *The Urantia Book* is in the public domain (*Michael Foundation v. Urantia Foundation*, 10th Cir. 2003). All use of "Urantia" is nominative fair use to identify the subject matter.