QuestDB Web Console MCP Server

io.github.questdbPublished by GitHub account questdbv0.5.0Updated Oct 24, 2026

Connects coding agents to a running QuestDB Web Console: notebook cells, SQL queries, and charts.

VerifiedSTDIODesktop onlyDatabasesData & Analytics

Overview

AI-generated overview

Bridges coding agents to a running QuestDB Web Console, letting them create notebook cells, run SQL queries and build charts in the user's existing browser tab.

What you can do
Create and update notebook cells in the QuestDB Web Console, including editing cell contents and running queries from them (update_cell, run_query). Build charts from query results in the console. Pair the browser session with the bridge by fetching pairing credentials and completing a consent prompt. Log tool calls and results to stderr and a log file for troubleshooting.
When to use it
Useful when you already work in the QuestDB Web Console and want a coding agent to draft SQL, fill notebook cells or produce charts against your live session, rather than connecting to QuestDB directly.
Requirements
A local Node.js runtime (Node 22 or later for the standalone bundle) and npx, or the standalone .mjs bundle from a GitHub release. A running QuestDB Web Console reachable at CONSOLE_ORIGIN (default Optional MCP_BRIDGE_PORT, LOG_PATH and LOG_LEVEL. Browser pairing with a consent prompt is required before any tool works.
Before you install
Every action runs in the browser against your already-established QuestDB session, so the agent can run queries and modify notebook cells in that console. Pairing uses a WebSocket URL and token shown by the agent; accept the consent prompt only if you trust the client. Each bridge run generates a fresh port and token held in memory, and old credentials stop working on restart. DEBUG logging records full tool payloads, including query text, to the log file.

Installation

In SourceWeft

  1. Open QuestDB Web Console MCP Server in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

QuestDB MCP Server

An MCP server that connects coding agents (Claude Code, Codex, Cursor, OpenCode, Gemini CLI) to a running QuestDB Web Console. The agent gets tools to create notebook cells, run queries, and build charts. Every action executes in the browser against your already-established QuestDB session.

Setup

Quick setup (recommended)

The interactive wizard detects your installed coding agents and writes the bridge into each one's MCP config:

bash
npx @questdb/mcp-server-questdb setup

It walks you through two steps:

  1. Pick agents: multi-select from the ones it detects (Claude Code, Codex, Cursor, OpenCode, Gemini CLI).
  2. Review settings: optionally override CONSOLE_ORIGIN and MCP_BRIDGE_PORT; press Enter to keep the defaults.

The wizard pins each agent's config to the bridge version that ran it. Your QuestDB Web Console expects a specific bridge version. If you're on an older console, run the matching version: npx @questdb/mcp-server-questdb@<version> setup. The config it writes will launch that same version. (When unsure, pair first; on a version mismatch the agent is told which version to switch to.) For versions earlier than 0.3.0, use the former package name instead: npx @questdb/mcp-bridge@<version> setup.

Manual setup

Or add it to your MCP client's config by hand (e.g. ~/.claude/.mcp.json):

json
{  "mcpServers": {    "questdb": {      "command": "npx",      "args": ["-y", "@questdb/mcp-server-questdb"]    }  }}

Offline / restricted install (no npx)

Environments that can't run npx (no npm registry access, vet-then-vendor policies) can use the standalone bundle attached to each supported version's GitHub Release: a single self-contained .mjs file needing only Node ≥ 22, making no network connections except the local WebSocket to your Web Console.

Standalone bundles are available starting with bridge version 0.4.0. All supported QuestDB Web Console versions request bridge version 0.4.0 or later.

Download the bundle (mcp-server-questdb-<version>.mjs) and THIRD_PARTY_NOTICES.txt from the release, then move the bundle to a permanent location before setup—do not configure it from a downloads or temporary directory—and invoke that exact path:

bash
node /permanent/absolute/path/mcp-server-questdb-<version>.mjs setup

Setup writes agent configs that launch the bundle file directly (no npx involved), so moving or deleting that exact path will prevent the MCP server from starting. To switch versions, put the matching bundle beside the current one and run node /permanent/absolute/path/mcp-server-questdb-<new-version>.mjs upgrade; it re-points your agent configs at the new file while keeping env settings. If a configured file was already moved, run upgrade from its new absolute path. setup and upgrade always write the install style of the binary you run: a bundle writes file-path configs; npx writes npx configs.

Environment variables

LabelValueDefault ValueDescription
CONSOLE_ORIGINorigin URLhttp://127.0.0.1:9000QuestDB Web Console origin. 127.0.0.1 and localhost are interchangeable.
MCP_BRIDGE_PORT1–65535auto-allocatedWhen specified, the bridge uses a fixed port. The port is bound on the first pairing attempt, pairing fails with a bridge_bind_failed error if the port is taken.
LOG_PATHfile path/tmp/questdb-mcp-bridge/<ISO-ts>-<pid>.logOverride the log file location.
LOG_LEVELERROR / WARN / INFO / DEBUGINFODEBUG adds heartbeats and full tool payloads.

Commands

Your MCP client runs the bridge for you via the config above, so you rarely invoke it by hand. When you do:

CommandDescription
npx @questdb/mcp-server-questdb (no args)Start the bridge — same as start.
npx @questdb/mcp-server-questdb startStart the bridge.
npx @questdb/mcp-server-questdb setupInteractively configure the bridge for your coding agents.
npx @questdb/mcp-server-questdb --versionPrint the version and exit. Alias: -v.
npx @questdb/mcp-server-questdb --helpPrint this help and exit. Alias: -h.

An unknown command exits non-zero with a short error. Pin a version with npx @questdb/[email protected] start. (Installed on your PATH, the executable is named mcp-server-questdb.)

Pairing

Before any notebook / chart / SQL tool works, your browser has to pair with the bridge. The agent drives the flow.

When the agent needs to pair, it calls get_pairing_credentials and shows you both:

  • A one-click deep link — open it in the tab showing your Web Console.
  • A WebSocket URL + token — paste into the MCP pill at the bottom of the Web Console if the deep link doesn't land in the right tab.

Either path lands you on a consent prompt. Accept it and the agent's next tool call goes through.

Each bridge run generates a fresh port and pairing token, held only in memory. On restart the old credentials stop working — the agent will surface new ones the next time it needs to pair.

Logs

The bridge writes to stderr and to a log file. Tail the newest:

bash
tail -F "$(ls -t /tmp/questdb-mcp-bridge/*.log | head -1)"

At default INFO:

2026-05-15T12:29:27.142Z [INFO] tool_call: run_query2026-05-15T12:29:27.318Z [INFO] tool_result: run_query ok2026-05-15T12:29:28.011Z [ERROR] tool_result: update_cell internal_error timeout after 15000ms

At DEBUG (full payloads as continuation lines):

2026-05-15T12:29:27.142Z [INFO] tool_call: run_query2026-05-15T12:29:27.142Z [DEBUG]   args: {"query":"SELECT count() FROM trades"}2026-05-15T12:29:27.318Z [INFO] tool_result: run_query ok2026-05-15T12:29:27.318Z [DEBUG]   content: [{"type":"text","text":"..."}]

License

Apache-2.0.

Source: README.md at commit b80e855

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

2
  1. v0.5.0LatestSep 30, 2026
  2. v0.4.0Sep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts