Skip to content

Claude Cowork Plugin

Joel Natividad edited this page May 30, 2026 · 4 revisions

Claude Cowork Plugin

Tier: Intermediate

The qsv Claude Cowork Plugin turns qsv into 15 data-science skills plus 3 domain agents for Claude Desktop (Pro plan or higher). Combined with the MCP Server, Claude can read, profile, clean, query, validate, and visualize your local data files via natural language — no programming required.

Note

Canonical installation guide: .claude/skills/docs/guides/START_HERE.md. This page is a workflow overview; the START_HERE guide is the source of truth for installation steps.

Why use a plugin instead of pasting CSVs into Claude? No uploads, no file-size limits, no data leaving your machine. qsv handles the data; Claude handles the conversation.

What it adds

Component What it does Count
User-invocable skills (/skill-name) Slash-command-style skills you invoke explicitly 9
Model-invoked skills Skills Claude calls on its own when relevant 6
Subagents Domain-specific roleplays Claude can hand work off to 3

Total: 15 skills + 3 agents.

Prerequisites

  1. Claude Desktopdownload.
  2. Claude Pro plan (or higher) for Cowork sessions.
  3. qsv MCP Server installed — see MCP Server or START_HERE step 1.

Install via the Claude Desktop marketplace

The five-step short version (see START_HERE step 2 for screenshots):

  1. Profile icon (bottom-left) → Settings.
  2. Capabilities → Skills → Go to Customize.
  3. Personal plugins → +Add marketplace → enter dathere/qsvSynch.
  4. + → Browse plugins → Personal tab → qsvInstall on qsv-data-wrangling.
  5. Start a new Cowork session. Check the Context panel — qsv skills should appear.

Verify with /data-profile in a fresh session against any CSV.

Skills

9 user-invocable (typed as /skill-name)

Skill What it does
/csv-query Run SQL against one or more CSVs (via Polars sqlp or DuckDB)
/data-clean Standardize encoding, normalize headers, strip sentinel nulls, dedup
/data-convert Convert between CSV / Parquet / JSONL / Excel / ODS / GeoJSON
/data-describe Generate a natural-language data dictionary, description, and tags via describegpt
/data-join Hash, asof, non-equi joins via join or joinp
/data-profile Full stats + frequency snapshot, narrated by Claude
/data-validate Generate a schema, hand-edit, validate, return invalid-row report
/data-viz Produce charts from CSV data (via Claude's plotting facilities)
/infer-ontology Derive an ontology / taxonomy / data lineage from the data

6 model-invoked (Claude calls automatically)

Skill Triggered when
bls-query User mentions BLS (Bureau of Labor Statistics) data
csv-wrangling User asks for any pipeline-style operation across multiple commands
data-quality Anomaly / outlier / data-quality concern is discussed
genai-disclaimer An LLM-generated inference (e.g. name-gender, sentiment) is being applied — adds a generative AI disclaimer
qsv-performance Performance / index / cache question comes up
reproducible-analysis User wants the steps reproducible (Make / shell / notebook)

Subagents

Agent Role
data-analyst Generalist data analyst — exploratory analysis, narrative reports
data-wrangler Pipeline-builder — chains qsv commands into reproducible scripts
policy-analyst Policy / regulatory framing — explainability, citation-heavy outputs

Hand off a task with @data-wrangler please build a pipeline to clean and validate this CSV (or whatever fits the agent's specialty).

Workflow examples

Quick profile a CSV you just received

Drop the CSV into Claude's chat (or have it in ~/Downloads). You: "Profile this file and tell me anything weird." Claude calls /data-profile → runs qsv stats --everything + qsv frequency → narrates the results, highlighting nulls, outliers, schema oddities.

Build a CKAN-ready dataset

You: "Clean and validate this export so I can upload it to CKAN." Claude invokes /data-clean (safenames + replace + fill) → /data-validate (schema + validate) → returns a clean CSV + validation-error report.

Time-series asof join

You: "Join my NYC 311 complaints with the daily weather for Central Park." Claude calls /data-join with joinp --strategy backward against NOAA GHCN-Daily data fetched via qsv fetch --disk-cache.

Hand off to a subagent

You: "@policy-analyst write a one-page brief on which complaint types spike in the summer." The policy-analyst subagent runs the analysis, generates a Markdown brief with citations, and explains its sources.

Real-world demos

Live demonstrations of the Cowork plugin on civic-scale datasets — published in the People's API Demos showcase:

  • NYC Snow Analysis 2010–2026 — 16 years of NYC 311 service requests (24.1 GB) profiled, cleaned, and joined against Census demographics and Open-Meteo historical weather in a single Cowork session. Illustrates multi-MCP composition (qsv + Census + Open-Meteo) through the Cowork plugin in ~34 minutes.
  • NYC Housing Policy Analysis — End-to-end policy brief produced by the policy-analyst subagent (273 qsvmcp invocations) on NYC housing supply, affordability, subsidized-housing, and infrastructure datasets. A reference example for the agent hand-off pattern described above.

Browse the full showcase at https://dathere.github.io/peoples-api-demos/.

Skill source

All skills live in .claude/skills/skills/ in the qsv repo. Each skill is a folder with a SKILL.md describing its trigger, prompt, and underlying qsv commands.

Agents live in .claude/skills/agents/ as Markdown files defining their system prompt.

To contribute new skills or agents, follow the SKILL.md format and submit a PR.

Plugin auto-deployment

When you start Claude in a qsv-aware directory (e.g., qsv-pro exports), the plugin can auto-deploy a CLAUDE.md workflow guide. To disable auto-deployment:

export QSV_NO_COWORK_SETUP=1

Updating

The plugin updates via Claude Desktop's marketplace mechanism — same place you installed it. The MCP server has its own update mechanism — see MCP Server → updating.

Troubleshooting

Symptom Fix
Plugin not visible in Context panel Start a new Cowork session (existing ones don't pick up new plugins)
Skills don't work Verify the MCP Server is running: ask Claude "list data files in my Downloads folder" — should return a list
qsv binary not found error Set QSV_MCP_BIN_PATH in MCP server settings
Permission denied on a folder Add to QSV_MCP_ALLOWED_DIRS

For more, see Troubleshooting and START_HERE troubleshooting.

See also

Clone this wiki locally