QueryWeaver logo

QueryWeaver

Converts natural-language database questions into SQL using graph-based schema context and exposes Text2SQL through MCP and REST.

Install QueryWeaver

Pick your client, then add it in one click or paste the config.

STDIOPython
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "queryweaver": {
      "command": "uvx",
      "args": [
        "queryweaver"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

We couldn’t confirm it starts correctly

We ran the install command but it didn't respond within our test window — this can mean a slow first-time install rather than a real problem.

uvx queryweaver

Process exited before answering initialize.

This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked 20d ago.

Overview

QueryWeaver MCP server converts natural-language database questions into SQL by using graph-based representations of database schemas. It exposes Text2SQL operations through an HTTP MCP endpoint, including database discovery, connection, schema inspection, and querying. QueryWeaver can also provide REST endpoints for loading graphs, retrieving schema data, and streaming query responses. Use it when an agent needs to explore database structure and generate SQL from plain-English requests.

Use cases

  • Ask natural-language questions about a database
  • Inspect graph-based database schemas
  • Generate SQL from chat requests
  • Stream Text2SQL results into an application
  • Connect an MCP client to an HTTP Text2SQL service

Key features

  • Graph-powered schema understanding
  • HTTP MCP endpoint
  • Natural-language to SQL generation
  • Database and schema discovery tools
  • REST API with streamed query responses
  • FalkorDB-backed conversation memory

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

50/53 checks healthy over the last 91d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 3d ago via OSV.dev · queryweaver (PyPI)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars1.1kStargazers on the source repository.
Last commitTodayMost recent push to the default branch.
Install checkInconclusiveDidn't respond in our test window — often a slow first install.
Directory activity3 viewsConfig copies, upvotes, and views on AllMCPs.

How QueryWeaver works

What QueryWeaver MCP server does

QueryWeaver MCP server provides a Text2SQL interface for asking database questions in natural language. It uses graph-based schema understanding to represent databases through tables, columns, and foreign-key relationships, then uses that context to produce SQL and query results.

The application exposes both an HTTP MCP surface and a REST API. The MCP operations cover four parts of the workflow: listing available databases, connecting to a database, retrieving a database schema, and running a database query. The REST API adds graph management endpoints for creating or uploading schema graphs, listing user-scoped graphs, reading graph data, and submitting chat-based Text2SQL requests.

How it works

A schema is stored as a graph associated with an authenticated user. The graph can be created from a JSON payload or an uploaded file. Once available, an agent can inspect the graph and send a natural-language request against a selected graph.

QueryWeaver MCP server returns generated SQL and query processing information through its MCP or REST interfaces. REST query responses are streamed as JSON messages separated by a defined message boundary. The stream may contain intermediate processing steps, follow-up questions for ambiguous requests, and the final SQL. Requests involving destructive SQL operations such as inserts, updates, or deletes include a confirmation step that an automated client must handle.

Per-user conversation memory is stored in FalkorDB. Memory graphs persist by default, but MEMORY_TTL_SECONDS can set an inactivity expiration period; the expiration is refreshed when the user interacts with the system.

Setup and configuration

The provided Docker image starts the service on port 5000:

Terminal
docker run -p 5000:5000 -it falkordb/queryweaver

Configuration can be supplied through a .env file passed with Docker's --env-file option or through individual environment variables. The documented configuration includes an application environment, a FastAPI secret key, OAuth credentials, and credentials for supported AI providers. QueryWeaver supports OpenAI, Gemini, Anthropic, and Azure provider keys.

The built-in MCP HTTP surface is enabled by default. Set DISABLE_MCP=true to turn it off. A client can target a local MCP endpoint at http://127.0.0.1:5000/mcp and send a bearer token in the Authorization header. REST operations that access or modify user-scoped data also require bearer-token authentication.

Tools and capabilities

QueryWeaver MCP server registers these MCP operations:

  • list_databases lists available databases.
  • connect_database connects to a database.
  • database_schema retrieves schema information.
  • query_database runs a database query through the Text2SQL flow.

The REST API provides equivalent supporting workflows through graph endpoints. GET /graphs lists graphs, GET /graphs/{graph_id}/data returns graph nodes and links, POST /graphs creates or uploads a graph, and POST /graphs/{graph_id} submits a chat query. Graph identifiers are namespaced per user.

Limitations and notes

MCP can be disabled through configuration, so clients cannot use the endpoint when DISABLE_MCP is set to true.

Generated queries may require clarification when a request is ambiguous or outside the available schema. Clients consuming the REST API must process its streamed message format and handle confirmation for destructive SQL. Authentication is required for user-scoped graphs and data. The documentation identifies FalkorDB as the store for conversation memory; it does not specify every database engine supported for query execution.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about QueryWeaver

QueryWeaver is an MCP server that connects AI clients to database schemas and Text2SQL workflows through HTTP. Its main tools list databases, connect to databases, retrieve schemas, and run natural-language queries. It uses graph-based schema understanding and can return generated SQL and results through the MCP or REST interfaces.

Run the published Docker image with port 5000 mapped to the host. Use `docker run -p 5000:5000 -it falkordb/queryweaver`, then configure an MCP client to use the `/mcp` endpoint. Configuration can also be supplied with a `.env` file passed to Docker.

Point the client at `http://127.0.0.1:5000/mcp` and send a bearer token in the `Authorization` header. The built-in MCP HTTP surface is enabled by default, but setting `DISABLE_MCP=true` disables it.

Yes, QueryWeaver generates SQL from natural-language questions using a graph representation of the database schema. Submit a chat request against a loaded graph through the `query_database` MCP operation or the REST graph query endpoint.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewQueryWeaver AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/queryweaver?style=directory)](https://allmcps.com/mcp/queryweaver)
HTML Embed
<a href="https://allmcps.com/mcp/queryweaver"><img src="https://allmcps.com/api/badge/queryweaver?style=directory" alt="QueryWeaver on AllMCPs" /></a>