Registry API for 800+ crypto blockchain DeFi NFT trading tools discovery
Runs on your machine from its package; the steps are below.
At most: only reads or looks up information.
Odel charges nothing per call. The publisher may charge for its own service.
Runs locally
This server runs on your machine over stdio, but its source registry didn't list a distribution package. Check the source repository for setup instructions.
The NPM for Crypto AI Tools - Central registry for the Lyra ecosystem
Lyra Registry is a standalone API service that catalogs, scores, and serves metadata for all tools in the Lyra ecosystem. It enables discovery, evaluation, and integration of 800+ crypto & DeFi MCP tools.
Between builds I am working on cleaning up the main Lyra repo with over 800+ blockchain and cryptocurrency tools. I hope to release it soon.
The public demo deployment is offline while hosting is being migrated. Run it locally with the Quick Start below, or read the source at github.com/nirholas/lyra-registry.
git clone https://github.com/nirholas/lyra-registry.git
cd lyra-registry
npm install
Create a PostgreSQL database on Neon or Supabase (free tier works).
cp .env.example .env
# Edit .env with your DATABASE_URL
npm run db:push
If you have a running Lyra MCP server:
LYRA_MCP_URL=http://localhost:3001/mcp npm run db:seed
Or seed with sample data:
npm run db:seed
npm run dev
Visit http://localhost:3000 to see the landing page.
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/tools | List all tools with pagination |
| POST | /api/tools | Register a new tool |
| GET | /api/tools/:id | Get tool by ID |
| PATCH | /api/tools/:id | Update a tool |
| DELETE | /api/tools/:id | Delete a tool |
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/search?q= | Full-text search |
| GET | /api/trending | Get trending tools |
| GET | /api/categories | List all categories |
| POST | /api/discovery | Submit tool for review |
| GET | /api/health | Health check & stats |
/api/tools and /api/search| Param | Type | Description |
|---|---|---|
q | string | Search query |
category | string | Filter by category slug |
chain | string | Filter by blockchain (bsc, ethereum, etc.) |
protocol | string | Filter by protocol (pancakeswap, aave, etc.) |
grade | a|b|f | Filter by trust grade |
requiresApiKey | true|false | Filter by API key requirement |
tags | string | Comma-separated tags |
page | number | Page number (default: 1) |
limit | number | Items per page (default: 20, max: 100) |
sortBy | string | Sort field: name, createdAt, totalScore, downloadCount |
sortOrder | asc|desc | Sort direction (default: desc) |
/api/trending| Param | Type | Description |
|---|---|---|
period | day|week|month | Time period (default: week) |
limit | number | Number of results (default: 10, max: 50) |
category | string | Filter by category |
# Search for DeFi tools
curl "http://localhost:3000/api/search?q=defi&category=defi"
# Get top 10 trending tools this week
curl "http://localhost:3000/api/trending?period=week&limit=10"
# Get all security tools
curl "http://localhost:3000/api/tools?category=security&sortBy=totalScore"
# Register a new tool
curl -X POST "http://localhost:3000/api/tools" \
-H "Content-Type: application/json" \
-d '{
"name": "my_custom_tool",
"description": "A custom DeFi tool",
"category": "defi",
"inputSchema": {
"type": "object",
"properties": {
"address": { "type": "string" }
},
"required": ["address"]
},
"chains": ["ethereum", "bsc"],
"tags": ["defi", "portfolio"]
}'
Every tool is scored using the SperaxOS trust algorithm. The score determines the tool's grade:
| Criteria | Weight | Required |
|---|---|---|
| Validated | 20 | โ |
| Has Tools | 15 | โ |
| Deployment | 15 | โ |
| Documentation | 10 | โ |
| Auto Deploy | 12 | |
| License | 8 | |
| Prompts | 8 | |
| Resources | 8 | |
| Claimed | 4 |
| Grade | Score | Description |
|---|---|---|
| A | 80%+ | All required items met, excellent tool |
| B | 60-79% | All required items met, good tool |
| F | <60% | Missing required items or low score |
lyra-registry/
โโโ src/
โ โโโ app/
โ โ โโโ api/
โ โ โ โโโ tools/
โ โ โ โ โโโ route.ts # GET/POST /api/tools
โ โ โ โ โโโ [id]/
โ โ โ โ โโโ route.ts # GET/PATCH/DELETE /api/tools/:id
โ โ โ โโโ search/
โ โ โ โ โโโ route.ts # GET /api/search
โ โ โ โโโ trending/
โ โ โ โ โโโ route.ts # GET /api/trending
โ โ โ โโโ categories/
โ โ โ โ โโโ route.ts # GET/POST /api/categories
โ โ โ โโโ discovery/
โ โ โ โ โโโ route.ts # GET/POST /api/discovery
โ โ โ โโโ health/
โ โ โ โโโ route.ts # GET /api/health
โ โ โโโ globals.css
โ โ โโโ layout.tsx
โ โ โโโ page.tsx # Landing page
โ โโโ db/
โ โ โโโ index.ts # Database connection
โ โ โโโ schema.ts # Drizzle schema
โ โ โโโ seed.ts # Seed script
โ โโโ lib/
โ โ โโโ calculateScore.ts # Trust score algorithm (from SperaxOS)
โ โ โโโ validation.ts # Zod schemas
โ โโโ types/
โ โโโ index.ts # TypeScript types
โโโ drizzle.config.ts
โโโ next.config.ts
โโโ package.json
โโโ tsconfig.json
โโโ README.md
DATABASE_URL environment variablerailway init
railway add
railway variables set DATABASE_URL=...
railway up
The registry can automatically import tools from a running Lyra MCP server:
# Start Lyra server
cd ../Lyra && bun run build && bun dist/cli.mjs --transport=http --port=3001
# Seed registry
cd ../lyra-registry
LYRA_MCP_URL=http://localhost:3001/mcp npm run db:seed
The lyra-intel project can automatically discover and submit new tools:
# In lyra-intel
from lyra_intel.discovery import RegistrySubmitter
submitter = RegistrySubmitter("http://localhost:3000/api/discovery")
await submitter.submit_tool(tool, security_result)
All rights reserved. See LICENSE.
Lyra Registry is deployed and accessible over HTTP via MCP Streamable HTTP transport โ no local installation required.
Endpoint:
https://modelcontextprotocol.name/mcp/lyra-registry
Add to your MCP client configuration (Claude Desktop, Cursor, SperaxOS, etc.):
{
"mcpServers": {
"lyra-registry": {
"type": "http",
"url": "https://modelcontextprotocol.name/mcp/lyra-registry"
}
}
}
| Tool | Description |
|---|---|
search_mcp_ecosystem | Search MCP ecosystem |
get_popular_mcp_servers | Popular MCP servers |
get_sperax_mcp_servers | All Sperax MCP servers |
Search MCP ecosystem:
curl -X POST https://modelcontextprotocol.name/mcp/lyra-registry \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_mcp_ecosystem","arguments":{"query":"crypto defi"}}}'
Popular MCP servers:
curl -X POST https://modelcontextprotocol.name/mcp/lyra-registry \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_popular_mcp_servers","arguments":{"category":"crypto"}}}'
All Sperax MCP servers:
curl -X POST https://modelcontextprotocol.name/mcp/lyra-registry \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"get_sperax_mcp_servers","arguments":{}}}'
curl -X POST https://modelcontextprotocol.name/mcp/lyra-registry \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
Powered by modelcontextprotocol.name โ the open MCP HTTP gateway
Full documentation site: https://nirholas.github.io/lyra-registry/