UnifyAPI
БесплатноНе проверенOne API key and one billing rail for hundreds of API tools across many providers — exposed to AI agents through a single MCP endpoint and billed per call with x
Описание
One API key and one billing rail for hundreds of API tools across many providers — exposed to AI agents through a single MCP endpoint and billed per call with x402 crypto payments.
README
One API key and one billing rail for hundreds of API tools across many providers — exposed to AI agents through a single MCP endpoint and billed per call with x402 crypto payments.
UnifyAPI is a full-stack demo platform (inspired by the MCP + x402 ecosystem) built with Next.js 16, PostgreSQL + Prisma 7, and x402. Agents connect once and call any tool; humans manage keys, balance, and usage from a dashboard.
Features
- Tool catalog — 24 seeded tools across 12 categories and 13 providers.
- Three access surfaces
- REST:
POST /api/call/{slug} - MCP (JSON-RPC):
POST /api/mcp—initialize,tools/list,tools/call - OpenAPI 3.1 spec:
GET /api/openapi - Machine-readable agent card:
GET /api/agent-card
- REST:
- Privy authentication — email / Google / wallet login with embedded wallets; falls back to a demo email login when Privy isn't configured.
- API-key auth — hashed keys, Bearer tokens, revocation.
- Per-call billing — every call validates input, checks balance, executes, charges, and records usage atomically.
- x402 crypto payments — top up balance with USDC; real verify/settle through a facilitator, with an automatic simulation mode when not configured.
- Live + mock tools — weather (Open-Meteo) and crypto price (CoinGecko) hit real key-less APIs; the rest return realistic mock data.
- Dashboard — balance, top-up, key management, usage history.
- Tool playground — run real calls from the tool detail page.
Tech stack
| Layer | Choice |
|---|---|
| Framework | Next.js 16 (App Router, Turbopack) + React 19 + TypeScript |
| Styling | Tailwind CSS v4 |
| Database | PostgreSQL via Prisma 7 (prisma-client generator + @prisma/adapter-pg) |
| Payments | x402 (USDC on Base / Base-Sepolia) |
Getting started
1. Install
npm install
2. Start a database
For local development, run a zero-install Postgres with Prisma:
npm run db:dev # starts a local Prisma Postgres server (keep this running)
This prints connection URLs. The default .env is already pointed at the local server
(postgres://postgres:postgres@localhost:51214/template1).
Production: set
DATABASE_URLin.envto your own PostgreSQL connection string instead.
3. Create the schema & seed data
In a second terminal:
npm run db:push # create tables
npm run db:seed # load categories, providers, and tools
4. Run the app
npm run dev
Open http://localhost:3000.
Using the API
Create an account and key:
- Go to
/login, enter any email (passwordless demo auth). - On
/dashboard, click Top up (credits instantly in simulation mode) and Create new key.
Call a tool over REST:
curl -X POST http://localhost:3000/api/call/crypto.price \
-H "Authorization: Bearer uak_live_..." \
-H "Content-Type: application/json" \
-d '{ "coin": "bitcoin", "vs": "usd" }'
Call a tool over MCP:
curl -X POST http://localhost:3000/api/mcp \
-H "Authorization: Bearer uak_live_..." \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{"name":"weather__current","arguments":{"latitude":-6.2,"longitude":106.8}}}'
MCP tool names replace dots with double underscores:
weather.current→weather__current.
Enabling real x402 payments
By default the server runs in simulation mode: top-ups credit instantly and no on-chain
settlement happens. To enable real crypto payments, fill these in .env:
X402_PAY_TO="0xYourReceivingWalletAddress"
X402_NETWORK="base-sepolia" # or "base" for mainnet
X402_FACILITATOR_URL="https://x402.org/facilitator"
# Mainnet via Coinbase CDP facilitator also needs:
# CDP_API_KEY_ID="..."
# CDP_API_KEY_SECRET="..."
With X402_PAY_TO set, POST /api/payments/topup returns HTTP 402 with payment
requirements. An x402-capable client/wallet completes the payment and retries with an
X-PAYMENT header, which the server verifies and settles through the facilitator before
crediting the balance.
The wallet, network, and facilitator credentials must be supplied by you — they are the only pieces that can't be bundled into the demo.
Project structure
prisma/
schema.prisma # data model
seed.ts # catalog seed
src/
app/
page.tsx # landing
tools/ # catalog + tool detail (+ playground)
docs/ # documentation
login/ dashboard/ # account UI
api/
tools/ # public catalog
call/[slug]/ # authenticated tool execution + billing
mcp/ # MCP JSON-RPC endpoint
openapi/ # OpenAPI 3.1 spec
agent-card/ # agent discovery card
keys/ me/ auth/ # account management
payments/topup/ # x402 top-up
lib/
prisma.ts apiKeys.ts auth.ts
catalog.ts validate.ts execute.ts billing.ts x402.ts
components/ # client UI (CodeTabs, Playground, CatalogSearch)
Authentication (Privy)
Set NEXT_PUBLIC_PRIVY_APP_ID and PRIVY_APP_SECRET (from dashboard.privy.io)
to enable real auth: email, Google, and crypto-wallet login, each with an embedded wallet. The
client signs in with Privy, and the server verifies the Privy access token and bridges it into a
session (src/app/api/auth/privy/route.ts). With those vars empty, the app uses a passwordless demo
login so you can run it immediately.
Deployment
See DEPLOY.md for step-by-step Vercel and Docker instructions, plus the full environment-variable checklist. In short:
- Vercel: import the repo (uses
vercel.json), set env vars, pointDATABASE_URLat managed Postgres. - Docker:
docker compose up --buildbrings up the app + Postgres together.
Live vs mock tools
11 tools call real, key-less upstreams (weather, crypto price/market, FX, geocode, timezone,
dictionary, translation, news). The rest return realistic mock data — wire them to real providers in
src/lib/execute.ts.
Notes & caveats (it's a demo)
- Rate limiting, caching, and retries are described in the UI but not fully implemented.
- The x402 mainnet path needs a Coinbase CDP facilitator; testnet works with the public facilitator.
Установка UnifyAPI
У этого сервера нет опубликованного пакета — он собирается из исходников. Открой репозиторий и следуй инструкции в README.
▸ github.com/UnifyAPIPRO/UNIFYAPIFAQ
UnifyAPI MCP бесплатный?
Да, UnifyAPI MCP бесплатный — установка в пару кликов через Unyly без оплаты.
Нужен ли API-ключ для UnifyAPI?
Нет, UnifyAPI работает без API-ключей и переменных окружения.
UnifyAPI — hosted или self-hosted?
Доступен hosted-вариант: Unyly запускает сервер в облаке, локальная установка не обязательна.
Как установить UnifyAPI в Claude Desktop, Claude Code или Cursor?
Открой UnifyAPI на unyly.org, выбери вкладку своего клиента (Claude Desktop, Claude Code, Cursor) и нажми Install — конфиг сгенерируется автоматически, без правки JSON.
Похожие MCP
Stripe
Payments, customers, subscriptions
автор: Stripemalamutemayhem/unclick-agent-native-endpoints
110+ tools for AI agents spanning social media, finance, gaming, music, AU-specific services, and utilities. Zero-config local tools plus platform connectors. n
автор: malamutemayhemwhiteknightonhorse/APIbase
Unified API hub for AI agents with 56+ tools across travel (Amadeus, Sabre), prediction markets (Polymarket), crypto, and weather. Pay-per-call via x402 micropa
автор: whiteknightonhorsetrackerfitness729-jpg/sitelauncher-mcp-server
Deploy live HTTPS websites in seconds. Instant subdomains ($1 USDC) or custom .xyz domains ($10 USDC) on Base chain. Templates for crypto tokens and AI agent pr
Compare UnifyAPI with
Не уверен что выбрать?
Найди свой стек за 60 секунд
Автор?
Embed-бейдж для README
Похожее
Все в категории finance
