Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Access your QuestLaw library in GenAI Tools.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
QUESTLAW_VAULT_FILE, QUESTLAW_DISCLOSURE_ACK, QUESTLAW_KEY_ACCOUNTYou need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"questlaw-library": {
"command": "npx",
"args": [
"-y",
"questlaw-mcp"
],
"env": {
"QUESTLAW_VAULT_FILE": "your-value",
"QUESTLAW_DISCLOSURE_ACK": "your-value",
"QUESTLAW_KEY_ACCOUNT": "your-value"
}
}
}
}Run this in your terminal
claude mcp add questlaw-library --env QUESTLAW_VAULT_FILE=your-value --env QUESTLAW_DISCLOSURE_ACK=your-value --env QUESTLAW_KEY_ACCOUNT=your-value -- npx -y questlaw-mcpFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"questlaw-library": {
"command": "npx",
"args": [
"-y",
"questlaw-mcp"
],
"env": {
"QUESTLAW_VAULT_FILE": "your-value",
"QUESTLAW_DISCLOSURE_ACK": "your-value",
"QUESTLAW_KEY_ACCOUNT": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"questlaw-library": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"questlaw-mcp"
],
"env": {
"QUESTLAW_VAULT_FILE": "your-value",
"QUESTLAW_DISCLOSURE_ACK": "your-value",
"QUESTLAW_KEY_ACCOUNT": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
QUESTLAW_VAULT_FILE envQUESTLAW_KEY_ACCOUNT envThese settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026
The registry name was verified with the GitHub account questlaw, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: QUESTLAW_DISCLOSURE_ACK
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (0.5.1) reached the registry 29 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Node.js on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, zanadir
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Find what a repository's CI is missing, and which security checks cannot fail the build.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
A read-only MCP server that lets an AI client search and read your QuestLaw research library.
QuestLaw MCP is an experimental, open-source project for connecting your QuestLaw library to AI tools.
The server decrypts your library on your own machine, from a .qlvault export generated via the extension. It is read-only and makes no network connections.
This project is not part of the official, supported QuestLaw product suite.
Using it decrypts your library on your computer and gives the readable contents to the AI client you connect it to. That client sends what it reads to its provider. The server itself sends nothing anywhere, but it cannot control what the client or the provider does with what it receives. Please use it with that in mind, and read SECURITY.md before you connect a library that holds sensitive information.
questlaw-backup- .qlvault).QuestLaw extension your machine AI client
+--------------+ +---------------------------+ +----------+ | encrypted | export | questlaw-library-mcp | stdio | Claude, | | library |----------->| |<------>| ChatGPT, | | (IndexedDB) | .qlvault | 1. reads the export | MCP | ... | +--------------+ file | 2. unwrap with your key | +----------+ | 3. decrypt in memory | account key --------->| 4. build a search index | (OS secret store) | 5. answer tool calls | +---------------------------+ no network connections, no writes
npx -y questlaw-mcp@0.5.1 setup
setup shows the disclosure and asks you to accept it, stores your account key in the OS secret store, finds your newest export, test-decrypts it, and prints the configuration for your client. To check an install later:
npx -y questlaw-mcp@0.5.1 doctor
From a clone, run the same commands as node bin/questlaw-library-mcp.js setup and node bin/questlaw-library-mcp.js doctor. Once doctor passes, choose an install method below.
In the extension, choose export a backup. An encrypted library produces a file named questlaw-backup- .qlvault. If you turn on daily backup in the extension's settings, the extension writes a new file each day, so the AI client sees recent research without any work from you.
By default, the server reads the newest .qlvault in ~/Downloads. To change that, set QUESTLAW_VAULT_FILE to a specific file or to a different folder.
The server reads a copy of your library from the time of the export, not your live library. If you add research after the export, the model can't see it until you export again.
Word add-in users: this server reads only the
.qlvaultexport. It has no
access to your Word documents, and using it with Microsoft Copilot does not change that.
An export's vault key is wrapped with your 43-character account key, so the server needs that key to open an export. Get it from the extension, under Settings, Encrypted library, Show account key, and then store it:
npx -y questlaw-mcp@0.5.1 setup
| Platform | Store |
|---|---|
| macOS | login keychain |
| Windows | DPAPI blob under %APPDATA% |
| Linux | libsecret, through secret-tool |
On macOS and Linux, the key is passed to the store on stdin. On Windows, it is passed through the child process environment. It never appears in a command line.
The account key opens every export of your library, so treat it like a password. You can supply it through QUESTLAW_RECOVERY_CODE instead, but the server ignores that variable unless you also set QUESTLAW_ALLOW_ENV_KEY=1.
The plugin includes the server and a skill that explains to the model how search works. Download questlaw-mcp-claude-plugin- .zip from Releases, or build it with npm run plugin.
Upload the ZIP through Claude's Plugins, Upload plugin control (under Customize or Settings, depending on the client). The same ZIP works for Claude Desktop plugin uploads, Cowork, and Claude Code. The local MCP server runs in Cowork and Claude Code, and plugin skills also work in chat. See Anthropic's plugin guide.
The plugin takes no configuration. It reads the newest .qlvault in ~/Downloads, the key from the default account in the secret store, and the consent that setup recorded. Run setup before you upload it.
To replace an installed copy, uninstall it before you upload the new archive:
claude plugin uninstall questlaw-library
questlaw-mcp-claude-plugin- .zip, as described above.questlaw-mcp-claude-desktop- .mcpb from Releases, or build it with npm run bundle. Install it through Desktop's extension installer, and type i-understand in the required disclosure field.Either way, store your key first with setup.
claude mcp add questlaw-library -- npx -y questlaw-mcp@0.5.1
codex mcp add questlaw-library -- npx -y questlaw-mcp@0.5.1
Or add it to ~/.codex/config.toml directly:
[mcp_servers.questlaw-library]
command = "npx" args = ["-y", "questlaw-mcp@0.5.1"]
[mcp_servers.questlaw-library.env] QUESTLAW_VAULT_FILE = "/absolute/path/to/export_folder"
Codex saves env values in config.toml as plain text. Put your export path there if you like, but keep the account key in the OS secret store. The QUESTLAW_ALLOW_ENV_KEY setting exists to stop the key from ending up in a file like this one.
The ChatGPT desktop app includes the Codex engine and reads the same ~/.codex/config.toml. If you add the server through Codex, it works in the Codex part of the desktop app, but not in ordinary ChatGPT chats. For those, see the next section.
ChatGPT can't start a local server itself. Instead, it connects through OpenAI's Secure MCP Tunnel, a connection that only goes outbound from your machine. You need developer mode in ChatGPT and access to the OpenAI developer platform.
One-time setup:
tunnel_) and a runtime API key.brew install tunnel-client.export CONTROL_PLANE_API_KEY="sk-..."
tunnel-client init \ --sample sample_mcp_stdio_local \ --profile questlaw \ --tunnel-id tunnel_YOUR_TUNNEL_ID \ --mcp-command "/path/to/node /absolute/path/to/questlaw-mcp/bin/questlaw-library-mcp.js"
tunnel-client doctor --profile questlaw --explain
Each time you want to use it, start the tunnel and leave it running:
tunnel-client run --profile questlaw
The tunnel client starts the MCP server for you. To check that both are running:
pgrep -fl "tunnel-client|questlaw-library-mcp"
{
"mcpServers": { "questlaw-library": { "command": "npx", "args": ["-y", "questlaw-mcp@0.5.1"] } } }
Add an env block only to change a default:
{
"mcpServers": { "questlaw-library": { "command": "npx", "args": ["-y", "questlaw-mcp@0.5.1"], "env": { "QUESTLAW_VAULT_FILE": "/absolute/path/to/export_folder" } } } }
The version is pinned so an install runs exactly the release you checked. To upgrade, change the version in your client configuration.
Default file locations:
| Client | Path |
|---|---|
| Claude Desktop (macOS) | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Claude Desktop (Windows) | %APPDATA%\Claude\claude_desktop_config.json |
| Claude Code | ~/.claude.json |
| Codex | ~/.codex/config.toml |
| ChatGPT | No configuration file. See ChatGPT |
The setup command prints the exact configuration for your machine.
npx -y questlaw-mcp@0.5.1 doctor
ok vendored modules: 4 verified, from questlaw-extension @ 58d523c9 (synced 2026-10-07)
ok disclosure: accepted 2026-09-14T22:09:34.603Z ok account key: found in login keychain as "default" ok library export: questlaw-backup-2026-09-09.qlvault, 2.01 MiB, exported 11 days ago ok decrypt: 341 records in 354ms -- 32 cases, 4 projects, 6 relationships, ...
5 passed, 0 warnings, 0 failing
| Tool | Arguments | Purpose |
|---|---|---|
library_overview | none | What the library holds, its projects, courts, and tags, and the export date |
list_cases | project, court, tag, sort, limit, offset |
Only the beginning is shown; read the rest in the repo