Stellar Raven is a remote MCP server on Cloudflare Workers. It gives agents two tools over one catalog of Stellar ecosystem sources: Lumenloop, Stellar Light/Scout, Stellar Docs, and selected ecosystem skills.
searchfinds service operations and skills.executeruns agent-written JavaScript in a Dynamic Worker isolate with no network access. Host-side adapters make every service call and hold every secret.
The server instructions also include a generated source-family map. Agents use it to plan which source family can answer a question.
Add https://raven.stellar.org/mcp to an MCP client that supports streamable HTTP and OAuth.
Raven is its own OAuth authorization server, and WorkOS AuthKit handles sign-in. Compatible
clients find and complete this flow automatically. An access token lasts 1 hour. Clients refresh
it automatically for 90 days, then the user signs in again.
| Page | URL |
|---|---|
| User guide and troubleshooting | https://raven.stellar.org/docs |
| Browser Playground | https://raven.stellar.org/playground |
| Terms and privacy | https://raven.stellar.org/terms |
| Health | https://raven.stellar.org/health |
For help, use the #raven channel in the
Stellar Developers Discord. To report a vulnerability, read
SECURITY.md.
- Use Node 24 (
.nvmrc) and runnpm ci. - Create
.dev.varswith the variable names in the.dev.varsstep ofci.yml. SetDEV_ALLOW_UNAUTHENTICATED=trueto skip OAuth. This bypass works only for the loopback hostslocalhost,127.0.0.1,::1, and[::1]. A Lumenloop call needs a realLUMENLOOP_API_KEY. A Stellar Docs call needs realALGOLIA_APPLICATION_ID_DOCSandALGOLIA_API_KEY_DOCSvalues. Without them, the call returns an error. A Stellar Light/Scout call needs no key. - Run
npm run typegen. It generatesenv.d.tsfromwrangler.jsoncand the names in.dev.vars. - Run
npm run devand connect a client tohttp://localhost:8787/mcp. Restart the server after you edit.dev.vars.
The Worker reads .dev.vars. Maintenance scripts, such as scripts/refresh-inventory.mjs, read
.env. Git ignores both files.
npm run typecheck # tsc
npm test # unit and contract tests (offline)
npm run test:smoke # the assembled Worker and the Dynamic Worker boundary
npm run build # dry-run the Worker bundletest/README.md maps the test suites.
| Question | Document |
|---|---|
| What is in scope, and which decisions are open? | PLAN.md |
How do search and execute work? |
ARCHITECTURE.md |
| How do I deploy and operate Raven? | docs/operations.md |
| How is usage counted and retained? | usage/README.md |
| How do I contribute? | CONTRIBUTING.md |
| How do agents work in this repository? | AGENTS.md |
| How do I report a vulnerability? | SECURITY.md |
Apache-2.0 © 2026 Stellar Development Foundation. Third-party code, fonts, and upstream skill content keep their own licenses. Read THIRD-PARTY-NOTICES.md.
