One API key. 300+ AI agents. Zero configuration.
AgentForge is a unified API gateway and marketplace for AI agents. Use a single API key to access hundreds of AI agents — no need to manage individual API keys, authentication, or billing for each one.
Live Demo | API Docs | Browse Agents
Most AI agent platforms make you manage separate API keys, auth flows, and billing for every agent you use. AgentForge gives you one key to rule them all.
- Unified API — Call any agent through a single REST endpoint
-
- 300+ agents — Pre-loaded with trending agents from GitHub and HuggingFace
-
- Creator economy — Publish your own agents and earn revenue (90% creator share)
-
- Built for developers — RESTful API, streaming support, API key auth, rate limiting
-
-
MCP support — Use AgentForge as a Model Context Protocol server to access all agents from Claude, Cursor, and other MCP clients
-
# 1. Get your API key at https://patreon.zeabur.app/#/settings/api-keys # 2. Call any agent: curl -X POST https://patreon.zeabur.app/api/agents/AGENT_ID/invoke \ -H "Authorization: Bearer af_k_your_key_here" \ -H "Content-Type: application/json" \ -d '{"messages": [{"role": "user", "content": "Hello!"}]}'
import requests response = requests.post( "https://patreon.zeabur.app/api/agents/AGENT_ID/invoke", headers={"Authorization": "Bearer af_k_your_key_here"}, json={"messages": [{"role": "user", "content": "Hello!"}]} ) print(response.json())
const response = await fetch( "https://patreon.zeabur.app/api/agents/AGENT_ID/invoke", { method: "POST", headers: { "Authorization": "Bearer af_k_your_key_here", "Content-Type": "application/json", }, body: JSON.stringify({ messages: [{ role: "user", content: "Hello!" }], }), } ); const data = await response.json();
AgentForge ships a built-in MCP server (
mcp/server.ts) that exposes all 300+ agents as MCP tools. This lets any MCP-compatible client — Claude Desktop, Cursor, Continue, etc. — discover and invoke agents with zero extra configuration.Tool Description list_agentsList all agents on the marketplace (optional category/limit filter) get_agentGet full details for a specific agent by ID invoke_agentInvoke any agent with a chat-completion style messages array check_agent_healthCheck the health/availability of a specific agent get_platform_statsRetrieve aggregate platform statistics git clone https://github.com/doggychip/agentforge.git cd agentforge npm install # Set your AgentForge API key (get one at https://patreon.zeabur.app/#/settings/api-keys) export AGENTFORGE_API_KEY=af_k_your_key_here # Start the MCP server (communicates over stdio) npm run mcp:start
Add the following to your
claude_desktop_config.json(~/Library/Application Support/Claude/claude_desktop_config.jsonon macOS):{ "mcpServers": { "agentforge": { "command": "npx", "args": ["tsx", "/path/to/agentforge/mcp/server.ts"], "env": { "AGENTFORGE_API_KEY": "af_k_your_key_here" } } } }Restart Claude Desktop. You will now see AgentForge tools available in the MCP connector panel.
Any MCP client that supports stdio transport can connect to AgentForge:
# Generic stdio invocation AGENTFORGE_API_KEY=af_k_your_key_here npx tsx /path/to/agentforge/mcp/server.tsVariable Required Description AGENTFORGE_API_KEYYes (for invoke_agent) Your AgentForge API key AGENTFORGE_BASE_URLNo Override base URL (default: https://patreon.zeabur.app)- Browse and discover 300+ AI agents, tools, and APIs
-
- One API key to access all agents
-
- Free and paid agents with transparent pricing
-
- Streaming support for real-time responses
-
-
Usage tracking and billing history
- Publish unlimited agents with your own pricing
- 90% revenue share (10% platform fee)
- Stripe Connect payouts to your bank account
- Analytics dashboard with subscriber metrics
-
API proxy — we handle auth, rate limiting, and billing
- Google OAuth + email/password authentication
- Two-factor authentication (TOTP)
- Rate limiting (1000 req/hour, 10000 req/day per key)
- Agent health monitoring
-
Auto-import from GitHub trending and HuggingFace
-
| Method | Endpoint | Description |
-
|--------|----------|-------------|
-
|
POST|/api/agents/:id/invoke| Invoke an agent | -
|
GET|/api/agents| List all agents | -
|
GET|/api/agents/:id| Get agent details | -
|
GET|/api/agents/:id/health| Check agent health | -
|
GET|/api/stats| Platform statistics | -
Full API documentation: patreon.zeabur.app/#/docs
- Node.js 20+
-
PostgreSQL
-
git clone https://github.com/doggychip/agentforge.git cd agentforge npm install # Set environment variables export DATABASE_URL=postgresql://user:password@host:5432/agentforge # Start development server (auto-migrates and seeds) npm run dev
Variable Required Description DATABASE_URLYes PostgreSQL connection string STRIPE_SECRET_KEYNo Stripe API key for payments STRIPE_WEBHOOK_SECRETNo Stripe webhook signing secret GOOGLE_CLIENT_IDNo Google OAuth client ID GOOGLE_CLIENT_SECRETNo Google OAuth client secret SMTP_HOSTNo SMTP server for emails SMTP_USERNo SMTP username SMTP_PASSNo SMTP password - Push to GitHub
-
- Create project in Zeabur
-
- Import the repo + add PostgreSQL service
-
-
Zeabur auto-injects
DATABASE_URL - Frontend: React 18, Tailwind CSS, shadcn/ui, TanStack Query, wouter
- Backend: Express 5, Drizzle ORM, Passport
- Database: PostgreSQL
- Payments: Stripe Connect
- Auth: bcrypt, Google OAuth, TOTP 2FA
- Deploy: Docker / Zeabur
-
MCP: @modelcontextprotocol/sdk (TypeScript)
-
agentforge/ ├── client/src/ # React frontend │ ├── pages/ # Route pages │ ├── components/ # Shared components │ └── hooks/ # Auth, query hooks ├── mcp/ │ └── server.ts # MCP server (5 tools over stdio) ├── server/ │ ├── routes.ts # API endpoints │ ├── storage.ts # Database layer │ └── db.ts # Connection + migrations ├── shared/ │ └── schema.ts # Drizzle schema + types └── DockerfilePull requests welcome. For major changes, open an issue first.
MIT
-
-
-