Supabase
Supabase’s official server lets AI create tables, query data and review project settings in your Supabase database.
Description from the maker (original English)
Generate MCP servers from natural language, OpenAPI specs, or database schemas.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
ANTHROPIC_API_KEY, CLAUDE_CODE_OAUTH_TOKEN, OPENAI_API_KEY, GOOGLE_API_KEYValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"tool-factory": {
"command": "npx",
"args": [
"-y",
"@heshamfsalama/mcp-tool-factory"
],
"env": {
"ANTHROPIC_API_KEY": "your-value",
"CLAUDE_CODE_OAUTH_TOKEN": "your-value",
"OPENAI_API_KEY": "your-value",
"GOOGLE_API_KEY": "your-value"
}
}
}
}Run this in your terminal
claude mcp add tool-factory --env ANTHROPIC_API_KEY=your-value --env CLAUDE_CODE_OAUTH_TOKEN=your-value --env OPENAI_API_KEY=your-value --env GOOGLE_API_KEY=your-value -- npx -y @heshamfsalama/mcp-tool-factoryFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"tool-factory": {
"command": "npx",
"args": [
"-y",
"@heshamfsalama/mcp-tool-factory"
],
"env": {
"ANTHROPIC_API_KEY": "your-value",
"CLAUDE_CODE_OAUTH_TOKEN": "your-value",
"OPENAI_API_KEY": "your-value",
"GOOGLE_API_KEY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"tool-factory": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@heshamfsalama/mcp-tool-factory"
],
"env": {
"ANTHROPIC_API_KEY": "your-value",
"CLAUDE_CODE_OAUTH_TOKEN": "your-value",
"OPENAI_API_KEY": "your-value",
"GOOGLE_API_KEY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 9, 2026
The registry name was verified with the GitHub account HeshamFS, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: ANTHROPIC_API_KEY, CLAUDE_CODE_OAUTH_TOKEN, OPENAI_API_KEY, GOOGLE_API_KEY
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.1.0) reached the registry 10 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Supabase, MongoDB MCP Server, Elasticsearch MCP Server
Servers in the same category from other makers, sorted by stars.
Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
Supabase’s official server lets AI create tables, query data and review project settings in your Supabase database.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Generate production-ready MCP (Model Context Protocol) servers from natural language descriptions, OpenAPI specs, database schemas, GraphQL schemas, or ontologies.
The Model Context Protocol (MCP) is an open standard that enables AI assistants to securely connect with external data sources and tools. MCP servers expose tools that can be used by:
MCP Tool Factory lets you generate complete, production-ready MCP servers in seconds.
| Feature | Description |
|---|---|
| Natural Language | Describe your tools in plain English |
| OpenAPI Import | Convert any REST API spec to MCP tools |
| Database CRUD | Generate tools from SQLite or PostgreSQL schemas |
| GraphQL Import | Convert GraphQL schemas to MCP tools (queries to reads, mutations to writes) |
| Ontology Import | Generate from RDF/OWL, JSON-LD, or YAML ontologies |
| Resources & Prompts | Full support for all three MCP primitives: Tools, Resources, and Prompts |
| 10 LLM Providers | Anthropic, OpenAI, Google, Mistral, DeepSeek, Groq, xAI, Azure, Cohere + Claude Code via Vercel AI SDK |
| Cost Tracking | Per-call cost calculation, budget limits, provider cost comparison |
| Parallel Generation | Tool implementations generated concurrently for faster output |
| LLM Response Caching | Deduplicates identical LLM calls with configurable TTL |
| Streamable HTTP | Generated servers use the modern Streamable HTTP transport |
| Web Search | Auto-fetch API documentation for better generation |
| Production Ready | Logging, metrics, rate limiting, retries built-in |
| Type Safe | Full TypeScript with strict mode |
| MCP Registry | Generates server.json for registry publishing |
| Is an MCP Server | Use it directly with Claude to generate servers on-the-fly |
MCP Tool Factory is itself an MCP server! Add it to Claude Desktop, Claude Code, Cursor, or VS Code to generate MCP servers through conversation.
Claude Code auto-injects CLAUDE_CODE_OAUTH_TOKEN — no env vars needed:
claude mcp add mcp-tool-factory -- node /path/to/mcp-tool-factory-ts/bin/mcp-server.js
Set one API key and go. The factory auto-detects the provider:
Claude Desktop / Cursor / VS Code — add to your MCP config (claude_desktop_config.json, .cursor/mcp.json, or .vscode/mcp.json):
{
"mcpServers": { "mcp-tool-factory": { "command": "node", "args": ["/path/to/mcp-tool-factory-ts/bin/mcp-server.js"], "env": { "ANTHROPIC_API_KEY": "your-key-here" } } } }
Any of these API keys will work: ANTHROPIC_API_KEY, OPENAI_API_KEY, GOOGLE_API_KEY, MISTRAL_API_KEY, DEEPSEEK_API_KEY, GROQ_API_KEY, XAI_API_KEY, AZURE_OPENAI_API_KEY, COHERE_API_KEY.
Use MCP_FACTORY_PROVIDER, MCP_FACTORY_MODEL, and MCP_FACTORY_BUDGET to override auto-detection:
{
"mcpServers": { "mcp-tool-factory": { "command": "node", "args": ["/path/to/mcp-tool-factory-ts/bin/mcp-server.js"], "env": { "OPENAI_API_KEY": "your-key-here", "MCP_FACTORY_PROVIDER": "openai", "MCP_FACTORY_MODEL": "gpt-5.2", "MCP_FACTORY_BUDGET": "0.50" } } } }
| Env Var | Purpose | Example |
|---|---|---|
MCP_FACTORY_PROVIDER | Override auto-detected provider | openai, groq, deepseek |
MCP_FACTORY_MODEL | Override default model | gpt-5.2, deepseek-chat |
MCP_FACTORY_BUDGET | Per-generation budget limit in USD | 0.50 |
Claude Code CLI with full control:
claude mcp add mcp-tool-factory \
-e DEEPSEEK_API_KEY=your-key \ -e MCP_FACTORY_PROVIDER=deepseek \ -e MCP_FACTORY_MODEL=deepseek-chat \ -e MCP_FACTORY_BUDGET=0.25 \ -- node /path/to/mcp-tool-factory-ts/bin/mcp-server.js
| Tool | Description |
|---|---|
generate_mcp_server | Generate from natural language description |
generate_from_openapi | Generate from OpenAPI specification |
generate_from_database | Generate from database schema |
generate_from_graphql | Generate from GraphQL schema |
generate_from_ontology | Generate from RDF/OWL, JSON-LD, or YAML ontology |
validate_typescript | Validate TypeScript code |
list_providers | List available LLM providers |
get_factory_info | Get factory capabilities |
You: Create an MCP server for the GitHub API with tools to list repos, create issues, and manage pull requests
Claude: *Uses
generate_mcp_servertool*
I've generated a complete MCP server with the following tools:
-
list_repositories- List user repositories
-
create_issue- Create a new issue
-
list_pull_requests- List PRs for a repo
-
merge_pull_request- Merge a PR
Let me write these files to your project...
# Global installation
npm install -g @heshamfsalama/mcp-tool-factory
npx @heshamfsalama/mcp-tool-factory generate "Create tools for managing a todo list"
At least one provider API key is required:
# Anthropic Claude (recommended)
export ANTHROPIC_API_KEY=your-key-here
export CLAUDE_CODE_OAUTH_TOKEN=your-token-here
export OPENAI_API_KEY=your-key-here export GOOGLE_API_KEY=your-key-here export MISTRAL_API_KEY=your-key-here export DEEPSEEK_API_KEY=your-key-here export GROQ_API_KEY=your-key-here export XAI_API_KEY=your-key-here export AZURE_OPENAI_API_KEY=your-key-here export COHERE_API_KEY=your-key-here
# From natural language
mcp-factory generate "Create tools for fetching weather data by city and converting temperatures"
mcp-factory from-openapi ./api-spec.yaml
mcp-factory from-database ./data.db
mcp-factory from-graphql ./schema.graphql
mcp-factory from-ontology ./ontology.owl --format rdf
mcp-factory generate "Create tools for managing a todo list with priorities" \
--name todo-server \ --output ./servers/todo \ --web-search \ --logging \ --metrics
# From local file
mcp-factory from-openapi ./openapi.yaml --name my-api-server
mcp-factory from-openapi ./spec.json --base-url https://api.example.com
# SQLite
mcp-factory from-database ./myapp.db --tables users,posts,comments
mcp-factory from-database "postgresql://user:pass@localhost/mydb" --type postgresql
# From a GraphQL SDL file
mcp-factory from-graphql ./schema.graphql --name my-graphql-server
mcp-factory from-graphql https://api.example.com/graphql --name my-api-server
GraphQL queries are mapped to read-only MCP tools, and mutations are mapped to write tools. GraphQL types are automatically converted to Zod validation schemas.
# From RDF/OWL (.owl, .rdf, .ttl)
mcp-factory from-ontology ./ontology.owl --format rdf --name knowledge-server
mcp-factory from-ontology ./schema.jsonld --format jsonld --name linked-data-server
mcp-factory from-ontology ./domain.yaml --format yaml --name domain-server
OWL Classes are mapped to MCP Resources, ObjectProperties become Tools, and DataProperties become tool parameters.
# Run tests
mcp-factory test ./servers/my-server
mcp-factory serve ./servers/my-server
servers/my-server/
├── src/ │ └── index.ts # MCP server with tools, resources, and prompts ├── tests/ │ └── tools.test.ts # Vitest tests (InMemoryTransport) ├── package.json # Dependencies ├── tsconfig.json # TypeScript config ├── Dockerfile # Container deployment ├── README.md # Usage documentation ├── skill.md # Claude Code skill file ├── server.json # MCP Registry manifest ├── EXECUTION_LOG.md # Generation trace (optional) └── .github/ └── workflows/ └── ci.yml # GitHub Actions CI/CD
Generated servers export a createServer() factory function for easy testing. The server uses Streamable HTTP transport with a single /mcp POST endpoint and a /health GET endpoint. Tests use InMemoryTransport.createLinkedPair() for fast, reliable in-process testing with vitest.
| Command | Description |
|---|---|
generate | Generate MCP server from natural language |
from-openapi | Generate from OpenAPI specification |
from-database | Generate from database schema |
from-graphql | Generate from GraphQL schema |
from-ontology | Generate from RDF/OWL, JSON-LD, or YAML ontology |
test | Run tests for generated server |
serve | Start server for testing |
info | Display factory information |
mcp-factory generate "..." \
--output, -o # Output directory (default: ./servers) --name, -n # Server name --description, -d # Package description --github-username, -g # GitHub username for MCP Registry --version, -v # Server version (default: 1.0.0) --provider, -p # LLM provider (anthropic, openai, google, mistral, deepseek, groq, xai, azure, cohere, claude_code) --model, -m # Specific model to use --web-search, -w # Search web for API documentation --auth # Environment variables for auth --health-check # Include health check endpoint (default: true) --logging # Enable structured logging (default: true) --metrics # Enable Prometheus metrics --rate-limit # Rate limiting (requests per minute) --retries # Enable retry logic (default: true) --budget # Maximum spend in USD (aborts if exceeded) --compare-costs # Show cost comparison across providers before generating
| Variable | Description | Required |
|---|---|---|
ANTHROPIC_API_KEY | Anthropic Claude API key | At least one |
CLAUDE_CODE_OAUTH_TOKEN | Claude Code OAuth token | provider key |
OPENAI_API_KEY | OpenAI API key | is required |
| GOOGLE_API_KEY | Google Gemini API key | for generat
Only the beginning is shown; read the rest in the repo