About dvt
The dvt plugin brings a specification-based dashboard workflow into Claude Code. It is for teams and agents creating and reviewing data visualizations, and connects to dvt instances while keeping an authoring skill available offline.
Key features
- 01Author and validate dashboard JSON specs
- 02Connect to dvt to design and render dashboards
- 03Apply specs to a live instance
- 04Review specs and dashboard layouts
- 05Load authoring skills matched to engine versions
Use cases
- 01Create dashboard specs in Claude Code
- 02Submit and render dashboards on a dvt instance
- 03Review dashboard layout and analytical narrative
- 04Use a matching skill after an engine schema update
MCP support
The plugin acts as an MCP client, connecting to the hosted dvt Gallery or a specified engine URL to design, validate, render, and apply specs. It can read the dvt://skill/spec-authoring resource from the engine; the bundled skill is used as a fallback.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://mcp.dvt.dev/mcpclaude mcp add --transport http dev-dvt-dvt https://mcp.dvt.dev/mcp{"mcpServers":{"dev-dvt-dvt":{"type":"http","url":"https://mcp.dvt.dev/mcp"}}}Open in Cursor{"servers":{"dev-dvt-dvt":{"type":"http","url":"https://mcp.dvt.dev/mcp"}}}Open in VS Code{"mcpServers":{"dev-dvt-dvt":{"type":"http","url":"https://mcp.dvt.dev/mcp"}}}{"mcpServers":{"dev-dvt-dvt":{"serverUrl":"https://mcp.dvt.dev/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
https://mcp.dvt.dev/mcpAuth requiredTools
Details
From the project READMEdvt-plugin
The dvt Claude Code plugin — a thin client for dvt (data viz tool).
dvt is an AI-native approach to data visualization: data teams design, generate, and deploy dashboards through a spec-driven workflow, where a dashboard is a versioned JSON spec that humans and agents author the same way. This plugin brings that workflow into Claude Code. It is a thin client — it carries no data and no compute. It bundles two things:
- the dvt dashboard-spec authoring skill, so an agent knows how to read, write, and validate a dvt dashboard spec; and
- an MCP client pointed at a dvt endpoint, so the agent can design, validate, render, and apply specs against a live dvt instance.
The plugin is open and ungated. It contains no secret and no entitlement logic — your access is governed entirely by the dvt endpoint and the key you connect with.
Install
In any Claude Code session:
/plugin marketplace add getdvt/dvt-plugin
/plugin install dvt@dvt-plugin
Then restart Claude Code (plugins don't hot-load).
Connect
After installing, run /dvt:connect and follow the prompts. The plugin talks to a dvt endpoint
over MCP; point it at one of two targets:
- dvt Gallery (hosted) — connect to
https://mcp.dvt.dev/mcpwith a Gallery API key. Mint a key in your dvt workspace athttps://app.dvt.dev/app/api-keys, then paste thedvt_live_…value when/dvt:connectprompts for it. The key is stored by Claude Code at user scope, never committed here. - Direct engine URL — point the client at a dvt engine URL you already have (e.g.
http://localhost:8001/mcp).
/dvt:connect registers a user-scoped dvt MCP server with your endpoint and (for Gallery) your
key, then verifies the connection by listing your dashboards. Once connected, just ask the agent to
build a dashboard.
The plugin bundles the authoring skill so it works offline, but a connected engine also serves its
own copy — matched to the spec version that engine speaks — at the MCP Resource
dvt://skill/spec-authoring. When that revision is at least as new as the bundled one, /dvt:connect
prefers it for the session (and tells you), so authoring stays correct as the schema evolves without a
re-install. If the engine doesn't serve it, the bundled copy is always a valid fallback (ADR-0047).
The plugin never embeds a key or any entitlement check. What you can do is decided by your dvt endpoint and the scopes on the key you provide.
What's inside
.claude-plugin/
marketplace.json single-plugin marketplace so /plugin marketplace add resolves this repo
plugins/dvt/
.claude-plugin/plugin.json plugin manifest (name "dvt", semver)
commands/connect.md /dvt:connect — first-run setup + verify (registers the MCP server)
commands/dvt-review.md /dvt:dvt-review — critique a spec or a built dashboard, GO / REVISE
agents/dvt-layout-critic.md layout, visual design, readability — PASS / NEEDS ATTENTION / SIGNIFICANT ISSUES
agents/dvt-narrative-critic.md analytical story coherence — COHERENT / PARTIALLY COHERENT / INCOHERENT
skills/dvt-spec-author/ dvt dashboard-spec authoring skill (generated at publish time)
icon.svg
README.md
SETUP.md connecting from Cowork (GUI-only environments)
.github/workflows/
plugin-release.yml tags each published version v<semver>
RELEASING.md version + tag convention (semver in plugin.json)
LICENSE Apache-2.0
This repo is publish-only — do not send pull requests here. Every file above is rendered from
plugins/**in the privategetdvt/dvtrepo and pushed by thedvt-publisherGitHub App, so a commit made directly to this repo is overwritten by the next publish. Issues and discussions are closed for the same reason. To propose a change, talk to us at dvt.dev. Security reports go to[email protected](alsodvt.dev/.well-known/security.txt), or via GitHub private vulnerability reporting on this repo.
The bundled spec-authoring skill has a single canonical source in getdvt/dvt
(web/public/dvt-spec-authoring-skill.md plus its references/ dir) and is generated into the tree
at publish time, so the published copy cannot drift from it. SKILL.md is the authoring method;
references/ holds the detail it loads on demand (panel types, layout modes, theme, data sources,
exports and email).
Maintainers: see RELEASING.md for the version + tag flow.
License
Apache-2.0. dvt is an open funnel artifact — this plugin matches the spec and SDK licensing.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.