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.
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
4List 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.
Frequently asked questions
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.
Basic information
More Databases MCP servers
MySQL MCP Server
designcomputerA Model Context Protocol (MCP) server that enables secure interaction with MySQL databases
PostgreSQL Model Context Protocol (PG-MCP) Server
stuzero
Redis
modelcontextprotocolModel Context Protocol Servers
mcp_mysql_server
xwb602625136Model Context Protocol (MCP) server that supports secure interaction with MySQL databases and has anomaly analysis capabilities.更加牛逼!更加好用!不仅止于mysql的增删改查功能; 还包含了数据库异常分析能力;且便于开发者们进行个性化的工具扩展
MongoDB Lens
furey🍃🔎 MongoDB Lens: Full Featured MCP Server for MongoDB Databases
Comments