MCP Testing Tool β Like Postman, but for the Model Context Protocol.
Test, debug, and explore MCP servers with a beautiful interface. No AI chat needed.
β οΈ Beta Software β Modelman is in active development. Found a bug? Open an issue. Want to contribute? PRs welcome!
π Try instantly (no install):
π modelman.run β Opens in your browser, ready to test.
Or run locally:
npx -y @portkey-ai/modelmanOpens on localhost:8009. One command, zero config.
- Connect to any MCP server β HTTP and SSE transport support
- Auto-detection β Just paste a URL, modelman figures out the rest
- Execute tools β Test tools with parameters and view responses
- Copy-paste friendly β Everything is clipboard-ready
- OAuth 2.1 with automatic discovery and compliance testing (docs)
- JWT-based sessions β Secure local authentication
- Rate limiting & audit logs β Built-in security features
- Localhost-only by default β Safe for local development
- Intelligent tool filtering β Context-aware tool selection powered by AI
- Chat interface β Test tools conversationally with LLM assistance
- Keyboard shortcuts β Lightning-fast navigation (docs)
- 8 beautiful themes β Light & dark modes for every preference (docs)
- π¦ "Try in Modelman" links β Share servers with a single URL (docs)
- Persistent state β Your servers and tools stay configured between sessions
Modelman runs a Node.js backend that acts as the MCP client, eliminating CORS issues when connecting to MCP servers from your browser.
graph TD
subgraph Browser["Browser React"]
A[Servers Page]
B[Tools Page]
C[Chat Interface]
end
subgraph Backend["Backend Node.js/Express"]
D[MCP Client]
E[OAuth Handler]
F[JWT Auth]
end
subgraph MCPServers["MCP Servers"]
G[Server 1<br/>HTTP/SSE]
H[Server 2<br/>HTTP/SSE]
I[Server N<br/>HTTP/SSE]
end
A --> D
B --> D
C --> D
D --> G
D --> H
D --> I
E --> D
F --> D
D --> E
F -->|HTTP/WebSocket| D
D -->|HTTP/SSE/stdio| G
D -->|HTTP/SSE/stdio| H
D -->|HTTP/SSE/stdio| I
style Browser fill:#e3f2fd
style Backend fill:#fff3e0
style MCPServers fill:#f3e5f5
Architecture highlights:
- No CORS headaches β Backend handles all MCP connections
- Persistent OAuth tokens β Stored securely in SQLite (
~/.modelman/modelman-mcp.db) - Session-based auth β JWT tokens for secure frontend-backend communication
- Edge-ready β Deploy to Cloudflare Workers for global hosting (guide)
On modelman.run:
- Server configs & tools β Saved in browser localStorage
- OAuth tokens β Managed by the hosted backend
- Chat history β Preserved in localStorage
On local (npx/npm):
- Server configs & tools β Saved in browser localStorage
- OAuth tokens β Stored in
~/.modelman/modelman-mcp.db(persists across npx runs) - Chat history β Preserved in localStorage
Your servers stay configured between sessions!
Run from source:
git clone https://github.com/bunnysayzz/modelman
cd modelman
npm install
npm run dev:full- Backend runs on
localhost:8008 - Frontend runs on
localhost:8009
Available scripts:
npm run dev:fullβ Run both frontend and backendnpm run backendβ Backend onlynpm run devβ Frontend onlynpm run buildβ Build for npm distributionnpm run build:cloudflareβ Build for Cloudflare Workers
Modelman includes a client-side logger accessible from the browser console:
modelmanLogger.download() // Download logs as JSON
modelmanLogger.clear() // Clear logsBackend logs are written to backend.log. See logging docs for details.
- Quick Start Guide β Get up and running in 5 minutes
- Try in Modelman β Share servers with one-click links
- Authentication β OAuth 2.1 and API key setup
- Themes β Customize your interface
- Keyboard Shortcuts β Work faster
- Architecture β How Modelman is built
- Security β Security features and best practices
- Cloudflare Deployment β Deploy to the edge
| Feature | Modelman | Manual curl/testing |
|---|---|---|
| OAuth 2.1 support | β Automatic discovery & flow | β Manual token management |
| Transport auto-detection | β HTTP/SSE auto-detected | β Manual configuration |
| Visual interface | β Beautiful UI | β Terminal only |
| Tool filtering | β AI-powered context-aware | β None |
| Session persistence | β Configs & tokens saved | β Reauth every time |
| Share configurations | β One-click "Try in Modelman" links | β Copy-paste configs |
Does Modelman work with all MCP servers?
Yes! Modelman supports both HTTP and SSE transports, OAuth 2.1, and API key authentication. We auto-detect server configurations to make connection as seamless as possible.
Is my data secure?
Yes. Modelman runs entirely on your local machine. OAuth tokens are stored in a local SQLite database (~/.modelman/modelman-mcp.db), and all communication happens over localhost. No data is sent to external servers.
Can I use Modelman in production?
Modelman is designed for development and testing. For production deployments, you can deploy Modelman to Cloudflare Workers for your team. See our deployment guide.
How do I test servers that require OAuth?
Just add the server URL. Modelman automatically detects OAuth requirements and guides you through the authorization flow. Tokens are stored securely and refreshed automatically.
Can I test multiple servers at once?
Absolutely! Connect to as many servers as you need. Modelman manages all connections simultaneously and lets you switch between them instantly.
Does Modelman support resources and prompts?
Not yet, but they're coming soon! Currently, Modelman focuses on tool testing. Resources and prompts are on our roadmap.
We're working towards full MCP specification support. Coming soon:
- Resources β MCP resource listing and reading
- Prompts β MCP prompt testing and execution
- Electron desktop app β Native app with stdio transport support
- Collaborative workspaces β Share server configs with teams
Want to contribute? Check out CONTRIBUTING.md or open an issue with feature requests!
- Frontend β React 19, TypeScript, Vite, Zustand
- Backend β Node.js, Express, MCP SDK
- Database β SQLite (better-sqlite3)
- Deployment β npm, Cloudflare Workers + Durable Objects
- AI β Workers AI for semantic tool filtering
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
Ways to contribute:
- π Report bugs and issues
- π‘ Suggest new features
- π Improve documentation
- π§ Submit pull requests
MIT License β see LICENSE for details.
Built by bunnysayzz β Making AI development easier, one tool at a time.
Made this because we were tired of curl-ing MCP servers. Hope it helps!