MCP.so
Sign In

Queryweaver

@FalkorDB

About Queryweaver

An open-source Text2SQL tool that transforms natural language into SQL using graph-powered schema understanding. Ask your database questions in plain English, QueryWeaver handles the weaving.

Basic information

Category

Databases

Transports

stdio

Publisher

FalkorDB

Submitted by

Guy Korland

Config

Add this server to your MCP-compatible client using the configuration below.

{
  "mcpServers": {
    "queryweaver": {
      "type": "http",
      "url": "https://app.queryweaver.ai/mcp",
      "headers": {
        "Authorization": "Bearer your_token_here"
      }
    }
  },
  "inputs": []
}

Tools

4

List Graphs This route is used to list all the graphs (databases names) that are available in the database. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json

Get Graph Data Return all nodes and edges for the specified database schema (namespaced to the user). This endpoint returns a JSON object with two keys: `nodes` and `edges`. Nodes contain a minimal set of properties (id, name, labels, props). Edges contain source and target node names (or internal ids), type and props. args: graph_id (str): The ID of the graph to query (the database name). ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json

Query Graph Query the Database with the given graph_id and chat_data. Args: graph_id (str): The ID of the graph to query. chat_data (ChatRequest): The chat data containing user queries and context. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json

Connect Database Accepts a JSON payload with a database URL and attempts to connect. Supports both PostgreSQL and MySQL databases. Streams progress steps as a sequence of JSON messages separated by MESSAGE_DELIMITER. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json

Overview

What is QueryWeaver?

QueryWeaver is an open-source Text2SQL tool that converts plain-English questions into SQL using graph-powered schema understanding. It helps you ask databases natural-language questions and returns SQL and results.

How to use QueryWeaver?

You can run QueryWeaver via Docker with a single command (docker run -p 5000:5000 -it falkordb/queryweaver) or from source using Python 3.12+ and pipenv. Configuration is provided through environment variables (e.g., Azure OpenAI or OpenAI API keys). QueryWeaver exposes a REST API with endpoints for managing graphs and running Text2SQL queries, and optionally provides MCP endpoints for integration with AI assistants.

Key features of QueryWeaver

  • Graph-powered schema understanding for Text2SQL
  • Plain-English to SQL conversion
  • REST API with Swagger UI documentation
  • Optional MCP server endpoints
  • Docker deployment (single command)
  • Supports Azure OpenAI and OpenAI
  • OAuth authentication (Google, GitHub)
  • Streaming responses with reasoning steps

Use cases of QueryWeaver

  • Natural language database querying without writing SQL
  • Automating SQL generation for dashboards and reports
  • Integrating database access into AI assistants and chatbots
  • Prototyping and data exploration for analysts and developers
  • Enabling non-technical team members to query databases

FAQ from QueryWeaver

What AI providers does QueryWeaver support?

QueryWeaver supports Azure OpenAI by default. To use OpenAI directly, set the OPENAI_API_KEY environment variable instead of AZURE_API_KEY.

How can I authenticate with the REST API?

All authenticated endpoints require a Bearer token in the Authorization header. In the browser the app uses session cookies and OAuth flows (Google, GitHub); for scripts you can use an API token.

Does QueryWeaver support the Model Context Protocol (MCP)?

Yes, QueryWeaver includes built-in MCP endpoints (list_databases, connect_database, database_schema, query_database). These are enabled by default and can be disabled by setting DISABLE_MCP=true.

What are the system requirements for running from source?

You need Python 3.12+, pipenv, a FalkorDB instance, and Node.js with npm (for the TypeScript frontend).

How does the streaming response work?

The POST /graphs/{graph_id} endpoint streams JSON objects delimited by the boundary string |||FALKORDB_MESSAGE_BOUNDARY||| containing intermediate reasoning steps, follow-up questions, and the final SQL.

Comments

More Databases MCP servers