Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Dependency-graph MCP server. Tells Claude/Cursor what breaks if you change X. Provenance guards.
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.
THASK_URL, THASK_TOKENValues marked secret are keys to your account. Never share them or paste them into a chat.
You 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": {
"thask": {
"command": "npx",
"args": [
"-y",
"@thask-org/cli"
],
"env": {
"THASK_URL": "your-value",
"THASK_TOKEN": "your-value"
}
}
}
}Run this in your terminal
claude mcp add thask --env THASK_URL=your-value --env THASK_TOKEN=your-value -- npx -y @thask-org/cliFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"thask": {
"command": "npx",
"args": [
"-y",
"@thask-org/cli"
],
"env": {
"THASK_URL": "your-value",
"THASK_TOKEN": "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": {
"thask": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@thask-org/cli"
],
"env": {
"THASK_URL": "your-value",
"THASK_TOKEN": "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.
These 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 kimgh06, 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: THASK_URL, THASK_TOKEN
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.6.0) reached the registry 4 months 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, topo^alpin
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.
Avalanche bulletins and mountain weather forecasts for any place in the Alps.
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.
Thask Thask it, done.
The dependency graph layer for AI-assisted development.
Map what depends on what, then let Claude Code / Cursor / Codex query it through MCP — with provenance guards so agents can't silently land hallucinated descriptions on your graph.
v0.6.0 — Knowledge OS Foundation. Thask now models the full project
memory, not just execution deps: 4 new first-class entity types
(
REQUIREMENT,DECISION,EXPERIMENT,PERSON) alongside the original
7, 9 new relationship verbs (
realizes,supersedes,decided,
produced,owns,reported,drives,tests,conflicts), a domain
lifecycleStateorthogonal tostatus, and per-node comments,
attachments, and canonical project tags. Same 25 MCP tools — the new
capabilities ride on wider enums plus two additive fields.
Live Demo — Documentation Graph · Architecture Graph
| Without Thask | With Thask | |
|---|---|---|
| You ask | *"Refactor this payment function."* | *"Refactor this payment function."* |
| Agent sees | Just the open file. | The file plus every node that depends_on it across your graph. |
| Agent answers | Plausible code. Three downstream flows quietly break. | "This change touches 3 flows and 2 UIs — I will update them together, or stop and ask." |
| Description drift | Agent rewrites the "why" prose on confidence, you read it, the next agent treats it as ground truth. | Agent keys default to blocking semantic writes. They propose to a queue; a human approves. Source-of-record stays human. |
Every change is recorded with 6-dimension provenance (actor, channel, agent model, mutation kind, trigger, evidence) so the next agent knows what to trust and what to re-derive from code.
Spreadsheets lose context. Linear issue trackers hide relationships. Thask maps your product as a living graph — so you can see what breaks before it breaks.
AI-Native Ship with thask mcp serve — Claude Code and Cursor read your dependency graph as a tool. Ask "what breaks if I change this?" and get real answers.
Graph-first Thinking Every flow, task, and bug is a node. Every dependency is a visible edge. No more hidden connections.
Impact at a Glance One click shows which nodes are affected by recent changes. Catch regressions before they ship.
Self-hosted docker compose up — that's it. Your data stays on your infrastructure. No vendor lock-in.
Drag-and-drop nodes with 11 types — Flow, Branch, Task, Bug, API, UI, Group, plus the v0.6.0 Knowledge OS entities Requirement, Decision, Experiment, and Person. Connect them by hovering and dragging the edge handle. Auto-layout with the fCOSE force-directed algorithm.
Toggle Impact Mode to instantly highlight changed nodes and their downstream dependencies. Dimmed nodes are safe; glowing nodes need attention.
Organize related nodes into collapsible groups. Drag nodes in and out. Resize groups freely. Double-click to collapse with a child count badge.
Track every node as PASS / FAIL / IN_PROGRESS / BLOCKED with color-coded visuals. Filter the graph by node type or status to focus on what matters.
Slide-out panel with full editing — title, description (with markdown rendering), type, status, tags, connected nodes, and a complete change history audit log.
Fourteen edge types with distinct colors: the base five (depends_on, blocks, related, parent_child, triggers) plus the v0.6.0 Knowledge OS verbs (realizes, conflicts, drives, supersedes, tests, produced, owns, decided, reported). Every edge also carries a JSONB metadata bag — supersedes records {reason}, produced records {outcome_summary}, etc. Draggable waypoints for edge routing. Click any edge to change its type or delete it.
Full CLI for terminal workflows (npm install -g @thask-org/cli). 25 MCP tools for AI agent integration — Claude Code and Cursor can query and modify your graph directly. One-step browser login (thask login), in-place upgrades (thask self-update). CLI Reference · MCP Guide
Every API key is classified as user_interactive, agent, or service with seven independent permission flags. Agent keys default to blocking semantic writes (description, "why" content) and node verification — so a hallucinated description can't silently land on your graph. Every write records 6-dimension provenance (actor, channel, agent model, mutation kind, trigger, evidence) to a single audit_log table. DATABASE.md > Provenance
Agents wanting to revise a description post to node_suggestions and a human approves before the change lands. The deciding human becomes the author of record — the agent is credited only in audit metadata. Server-enforced: accepted decisions require a user_interactive actor regardless of permission flags.
Three endpoints cut N round-trips down to one — node.batch_update (up to 200), edge.batch_create / edge.batch_delete (up to 500). Atomic on permission / cycle failure; per-item skip reasons in skipped[]; HTTP 207 Multi-Status when any item skips. Saves substantial agent context (1 call vs N).
Every CLI invocation, MCP tool call, and HTTP response appends a single JSONL line to ~/.thask/events.jsonl — on your machine only, no upload. Inspect with thask usage (30-day summary, p50/p95 latency, top commands), thask reflog / thask history (recent events, full-text search), or tail -f the file directly. Raw bodies are opt-in (thask telemetry config set capture_payloads true); the default captures only metadata. Tokens, URL credentials, JWT and cookies are masked at write time.
Scan Go codebases to auto-generate dependency graphs. thask scan --path . parses go.mod and imports, creating nodes and edges automatically. Extensible via plugin system.
Detect dependency cycles (Tarjan DFS) and find the critical path (longest depends_on/blocks chain). Toggle Analysis Mode (Shift+A) to visualize cycles and critical path on the canvas.
Versioned REST API at /api/v1/ for third-party integrations. OpenAPI 3.1 spec, interactive Scalar docs, structured error responses, and idempotency support. API Guide
Four team roles — Owner, Admin, Member, Viewer — with granular permissions. Per-project roles (Editor, Viewer). API key authentication for programmatic access.
Share projects via link with viewer or editor access. Manage per-project members with granular roles. Public shared views support realtime collaboration. Embeddable graph views and OG image generation.
Start new projects from built-in templates: API Flow, Microservice Map, Sprint Board. One-click apply from the project creation flow.
Light and dark mode with system detection. Persisted per user. Design system uses CSS variables throughout.
Thask has two parts:
| Server (self-hosted) | CLI (local) | |
|---|---|---|
| What | Web UI + REST API + PostgreSQL | Terminal commands + MCP server |
| Install | docker compose up | npm install -g @thask-org/cli |
| Used by | Humans (browser) | Humans (terminal) + AI agents (MCP) |
| Data | Stores everything (nodes, edges, users) | Reads/writes via server API |
Browser ──→ Thask Server (Docker) ──→ PostgreSQL
↑ CLI / MCP ──────┘
The server runs your graph database and web UI. The CLI talks to the server's API — you can create nodes, run scans, and analyze graphs from the terminal. AI agents (Claude Code, Cursor) use the CLI's built-in MCP server.
Get Thask working with Claude Code in 2 minutes:
make up
npm install -g @thask-org/cli
thask config set url http://localhost:7244 thask login # opens browser, click Approve, token saved
`thask login` (v0.5.11+) replaces the old "make a key in Settings,
copy a 64-char string, paste it" dance. The MCP server reads the same ~/.thask/config.json, so this single login covers Claude Code too. For headless / SSH sessions: create a key in the web UI and run thask config set token instead.
.claude/mcp.json): {
"mcpServers": { "thask": { "command": "thask", "args": ["mcp", "serve"] } } }
Now Claude Code can read and modify your dependency graph — with v0.5.9+ permission gates so agent keys can't silently land hallucinated descriptions. See MCP Guide for details and the official Claude Code plugin for a zero-setup install.
make up # auto-generates .env with SESSION_SECRET on first run
Or manually:
cp .env.example .env
docker compose up --build
Open http://localhost:7243 and create an account.
The Makefile is the source of truth — every dev workflow has a target.
make dev # one-shot: starts DB + capture worker, then backend + frontend in parallel
Or run pieces individually in separate terminals:
make dev-db # PostgreSQL only (docker compose)
make dev-capture # Playwright capture worker (docker compose) make dev-backend # Go backend (requires air: go install github.com/air-verse/air@latest) make dev-frontend # SvelteKit frontend on :7243
If air isn't installed, run the backend directly:
cd backend && cp .env.example .env && go run ./cmd/server
Prerequisites: Go 1.26+, [Node.
Only the beginning is shown; read the rest in the repo