Skip to main content
Glama
README.md
# ⚔ mcp-forge (`mforge`)

> **Instant Model Context Protocol (MCP) server generator. Connect SQLite databases and folders to Claude Desktop and Cursor in seconds.**

[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
[![Python 3.9+](https://img.shields.io/badge/python-3.9+-brightgreen.svg)](pyproject.toml)
[![Zero Dependency](https://img.shields.io/badge/core-zero--dependency-orange.svg)](#)
[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?logo=buy-me-a-coffee)](https://buymeacoffee.com/carlosdevkadu)

Model Context Protocol (MCP) by Anthropic is the new open standard for connecting AI assistants to data sources and tools.

**`mcp-forge`** allows developers to turn any SQLite database or local directory into a production-ready, zero-dependency MCP server with one CLI command.

---

## šŸ’– Support & Sponsor

If **mcp-forge** helped you connect data to Claude or Cursor, consider buying me a coffee:

[![Buy Me a Coffee](https://img.shields.io/badge/Buy%20Me%20a%20Coffee-Donate-yellow.svg?style=for-the-badge&logo=buy-me-a-coffee)](https://buymeacoffee.com/carlosdevkadu)

šŸ‘‰ [buymeacoffee.com/carlosdevkadu](https://buymeacoffee.com/carlosdevkadu)

---

## ⚔ Highlights

* šŸ—„ļø **Instant SQLite Server**: Exposes `list_tables`, `describe_table`, and `execute_query` (with built-in read-only safety).
* šŸ“ **Instant Filesystem Server**: Exposes `list_directory`, `read_file`, and `search_text` across any target directory.
* āš™ļø **Auto Claude Config**: Generates ready-to-paste JSON blocks for your `claude_desktop_config.json`.
* šŸ“¦ **Zero External Dependencies**: Pure Python JSON-RPC 2.0 stdio implementation.

---

## šŸš€ Quick Start

### Installation

```bash
pip install .
```

### 1. Connect a SQLite Database to Claude Desktop

Generate the configuration snippet:
```bash
mforge config sqlite ./my_database.db
```

Output:
```json
{
  "mcpServers": {
    "mcp-my_database": {
      "command": "python",
      "args": ["-m", "mcp_forge.cli", "sqlite", "C:/path/to/my_database.db"]
    }
  }
}
```
Paste this into your `claude_desktop_config.json` and restart Claude!

---

### 2. Connect a Project Folder to Claude Desktop

```bash
mforge config folder ./my-project-docs
```

---

## šŸ“„ License

Distributed under the [MIT License](LICENSE).

TDQS

A3.5/5.0

Scored across 3 tools

Disambiguation5/5

Each tool targets a clearly distinct layer: enumerating tables, inspecting one table's schema, and running row-returning queries. An agent can trivially pick the right one from names alone. No overlap between describe_table (metadata) and execute_query (data).

Naming Consistency4/5

All three follow the verb_noun snake_case pattern (list_tables, describe_table, execute_query), which is highly predictable. The only minor inconsistency is singular vs. plural nouns (tables vs. table), though that actually reflects list-vs-single semantics.

Tool Count3/5

Three tools is on the thin edge for a database server; a listing, a schema descriptor, and one query executor cover the basics but leave little room for inspection workflows. It's borderline rather than wrong-sized, since the surface is deliberately minimal.

Completeness3/5

Read-only exploration is covered, but execute_query is explicitly limited to SELECT, so there is no way to create tables, insert, update, or delete — an obvious gap for a database tool. Agents hitting a need to mutate data or run DDL will dead-end, though exploration tasks are fully served.

Maintenance

ActivityMaintained
ResponsivenessNo recent community issues