Skip to main content

Auto-generate MCP servers from any data source. Zero code required.

Project description

⚒️ MCP-Maker

PyPI version Python 3.10+ License: MIT

Auto-generate MCP servers from any data source. Zero code required.

Point MCP-Maker at a database, spreadsheet, or directory and get a fully functional MCP server in seconds — ready for Claude, ChatGPT, Cursor, and any MCP-compatible AI.

Note: MCP-Maker is built on top of the official MCP Python SDK (mcp package). The SDK is the low-level framework for building MCP servers in Python — you write every tool, resource, and handler yourself. MCP-Maker uses that SDK under the hood to auto-generate everything from your data source. Think of it like Django vs raw SQL: same power, less work.


How It Works

Your Data Source          MCP-Maker              MCP Server
┌──────────────┐    ┌──────────────────┐    ┌───────────────────┐
│ SQLite DB    │    │                  │    │ list_users()      │
│ Google Sheet │───▶│  mcp-maker init  │───▶│ search_users()    │
│ Airtable     │    │                  │    │ count_users()     │
│ Notion DB    │    │  (auto-inspect)  │    │ create_users()    │
│ CSV files    │    │  (auto-generate) │    │ ... 10+ tools     │
│ PostgreSQL   │    │                  │    │                   │
│ MySQL        │    └──────────────────┘    └───────────────────┘
└──────────────┘                            Ready for Claude ✅

✨ Why MCP-Maker?

  • Zero-Code Generation: Instantly maps tables, columns, and APIs into atomic MCP tools. No coding required.
  • Zero Vendor Lock-In: The generated mcp_server.py file is a 100% standalone, standard Python file built entirely on the official SDK. You can uninstall MCP-Maker immediately after generation and your server will continue to run flawlessly forever.
  • Granular Security (--ops): You control exactly what the LLM can do. Explicitly authorize read, insert, update, or delete operations.
  • Auto-Rate Limiting: Built-in TokenBucket throttling for Cloud APIs (Airtable, Notion, Google Sheets) prevents 429 Too Many Requests bans when LLMs make aggressive parallel tool calls.
  • Semantic Vector Search (--semantic): Automatically spins up a ChromaDB vector database alongside your SQL tables for high-quality, meaning-based search.
  • Context Window Optimized (--tables): Only expose the data you actually need to prevent LLM context bloat and hallucination.
  • Environment Management: Safely manage API credentials via mcp-maker env instead of hardcoding them.

🔌 Supercharged Connectors

While basic tools stop at simple SQL tables, MCP-Maker's Connectors are engineered for complex enterprise use cases:

  • Notion: Supports Multi-Database URIs (notion://DB1,DB2), automatically parses 20+ property types (Rollups, Relations, Formulas), handles cursor pagination, and exposes deep filter tools.
  • Airtable: Generates tools to query via Airtable Formulas, target specific Views, automatically sorts records, and discovers your Bases directly (mcp-maker bases).
  • Google Sheets: Treats entire tabs as discrete SQL-like tables, infers column types, and provides pinpoint update_cell tools.
  • PostgreSQL / MySQL: Detects Primary Keys automatically, maps all complex SQL native types, and fully supports SSL-encrypted TLS connections.

Quick Start (2 minutes)

Step 1: Install

pip install mcp-maker

Step 2: Generate a server from your data

# SQLite database
mcp-maker init sqlite:///path/to/my_database.db

# CSV/JSON files in a directory
mcp-maker init ./my-data/

# Google Sheets (see docs for auth setup)
mcp-maker init gsheet://YOUR_SPREADSHEET_ID

# Airtable
mcp-maker init airtable://appXXXXXXXXXX

# Notion
mcp-maker init notion://DATABASE_ID

This creates a mcp_server.py file with all your tools.

Step 3: Connect to Claude Desktop

# Auto-configure Claude Desktop
mcp-maker config --install

# Restart Claude Desktop, then ask:
# "What tables are in my database?"
# "Show me the top 10 customers"
# "Search for records containing 'Python'"

That's it. Your AI can now query your data.


📖 Documentation

👉 Getting Started Guide — Tutorial, installation, first server, Claude Desktop setup

📋 Full Reference (DOCS.md) — CLI commands, schema filtering, env management, architecture, roadmap

Connector Guides (with step-by-step setup, examples, and troubleshooting)

Connector Guide
SQLite docs/sqlite.md
Files (CSV/JSON) docs/files.md
PostgreSQL docs/postgresql.md
MySQL docs/mysql.md
Airtable docs/airtable.md — Formulas, views, sorting, CRUD
Google Sheets docs/google-sheets.md — GCP service account setup
Notion docs/notion.md — Integration setup, multi-DB support

Feature Guides

Feature Guide
Semantic Search docs/semantic-search.md — ChromaDB vector search, search by meaning

🔌 Supported Connectors (7)

Connector URI Format Auth Required Install
SQLite sqlite:///my.db Built-in
Files ./data/ Built-in
PostgreSQL postgres://user:pass@host/db ✅ DB creds pip install mcp-maker[postgres]
MySQL mysql://user:pass@host/db ✅ DB creds pip install mcp-maker[mysql]
Airtable airtable://appXXXX ✅ API key pip install mcp-maker[airtable]
Google Sheets gsheet://SPREADSHEET_ID ✅ Service acct pip install mcp-maker[gsheets]
Notion notion://DATABASE_ID ✅ Integration pip install mcp-maker[notion]

Install all connectors at once:

pip install mcp-maker[all]

CLI Commands

mcp-maker init <source>                    # Generate an MCP server
mcp-maker init <source> --ops read,insert  # Include specific write operations
mcp-maker init <source> --tables users,orders  # Only include specific tables
mcp-maker init <source> --semantic         # Enable vector/semantic search
mcp-maker serve                            # Run the generated server
mcp-maker inspect <source>                 # Preview what would be generated (dry run)
mcp-maker config --install                 # Auto-write Claude Desktop config
mcp-maker env set KEY VALUE                # Store API keys safely in .env
mcp-maker env list                         # List stored keys (masked)
mcp-maker list-connectors                  # Show available connectors
mcp-maker bases                            # Discover Airtable bases

📦 Installation

# Core (SQLite + Files)
pip install mcp-maker

# With PostgreSQL support
pip install mcp-maker[postgres]

# With Airtable support
pip install mcp-maker[airtable]

# With Google Sheets support
pip install mcp-maker[gsheets]

# With Notion support
pip install mcp-maker[notion]

# With semantic search (ChromaDB vector search)
pip install mcp-maker[semantic]

# All connectors + semantic search
pip install mcp-maker[all]

# Development
pip install mcp-maker[dev]

🤝 Contributing

MCP-Maker is designed for community contributions — each new connector is a self-contained PR.

See CONTRIBUTING.md for detailed instructions and a step-by-step connector creation guide.

📄 License

This project is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_maker-0.2.1.tar.gz (66.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_maker-0.2.1-py3-none-any.whl (46.2 kB view details)

Uploaded Python 3

File details

Details for the file mcp_maker-0.2.1.tar.gz.

File metadata

  • Download URL: mcp_maker-0.2.1.tar.gz
  • Upload date:
  • Size: 66.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for mcp_maker-0.2.1.tar.gz
Algorithm Hash digest
SHA256 6d789a0515813a4372f78c11fb4f8c5e727937fe0c4bc4da6dfeeab8d9239771
MD5 05f9deaf2aff33128670cfed04678da5
BLAKE2b-256 81da037d18d45c86a5fa95e9406878d0a23e573a51d5efe98512e3232078c6d9

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcp_maker-0.2.1.tar.gz:

Publisher: publish.yml on MrAliHasan/mcp-maker

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mcp_maker-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: mcp_maker-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 46.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for mcp_maker-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 17ec5e3de186cba6bbc0a5d509b09e8aa208c11dfc35038d725b47ce2cff623d
MD5 f5dd96f736d86f7682307eb4502b74f9
BLAKE2b-256 075f363a212a43d0a4a9c6511ab2735eb27724b6bbc44e6f03e5aad50c36652a

See more details on using hashes here.

Provenance

The following attestation bundles were made for mcp_maker-0.2.1-py3-none-any.whl:

Publisher: publish.yml on MrAliHasan/mcp-maker

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page