# harvard-art-museum-data-pipeline

Guides data pipeline setup for the Harvard Art Museums API. It normalizes artifact records into MySQL and renders a Streamlit dashboard.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 2000 installs · ★ 5
- Author: reason-machines
- License: LicenseRef-Unknown · policy=link-only · description only; the file stays with the author
- Source: https://github.com/reason-machines/data-skills/tree/HEAD/skills/harvard-art-museum-data-pipeline/SKILL.md
- Updated: 2026-10-09
- HTML: https://affpapa.org/en/nevibecode/skills/harvard-art-museum-data-pipeline

## What it does

This skill guides the creation of an ingestion pipeline for artifact catalogs. Python scripts fetch museum records in batches while respecting request limits. Incoming nested payloads get parsed into three structured tables: `artifactmetadata`, `artifactmedia`, and `artifactcolors`.

Data lands in MySQL or a managed TiDB Cloud instance using bulk inserts. The setup includes over 20 prewritten analytical queries and a Streamlit interface powered by Plotly charts. You get a fully functional data workflow template.

The pipeline immediately fails without a Harvard API token and an active database target. You will need Python 3.8+, packages like `pandas` and `mysql-connector-python`, plus credentials saved in environment variables.

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add reason-machines/data-skills --skill harvard-art-museum-data-pipeline -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/harvard-art-museum-data-pipeline/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/harvard-art-museum-data-pipeline/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add reason-machines/data-skills --skill harvard-art-museum-data-pipeline -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/harvard-art-museum-data-pipeline/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add reason-machines/data-skills --skill harvard-art-museum-data-pipeline -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/harvard-art-museum-data-pipeline/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install reason-machines/data-skills harvard-art-museum-data-pipeline
```

2. **Manually: put the files in place**
- File: `.github/skills/harvard-art-museum-data-pipeline/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add reason-machines/data-skills --skill harvard-art-museum-data-pipeline -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/reason-machines/data-skills --path skills/harvard-art-museum-data-pipeline
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/harvard-art-museum-data-pipeline/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add reason-machines/data-skills --skill harvard-art-museum-data-pipeline -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/reason-machines/data-skills/tree/HEAD/skills/harvard-art-museum-data-pipeline/SKILL.md

## When to use it
- ingest artifact records from the Harvard Art Museums API with pagination
- structure relational database tables for museum metadata, media, and colors
- load normalized dataframes into MySQL or TiDB Cloud
- build an interactive analytics interface using Streamlit and Plotly

## Example prompts
- Set up a Python ETL script to extract object records from the Harvard Art Museums API
- Design the SQL schema for artifactmetadata and artifactmedia tables in MySQL
- Create a Streamlit and Plotly dashboard to explore museum artifact colors

## Similar
- [data-pipeline](https://affpapa.org/en/nevibecode/skills/data-pipeline.md) — skill · 4900 installs
- [indicator-setup](https://affpapa.org/en/nevibecode/skills/indicator-setup.md) — skill · 551 installs
- [indicator-dashboard](https://affpapa.org/en/nevibecode/skills/indicator-dashboard.md) — skill · 570 installs
- [data-visualization](https://affpapa.org/en/nevibecode/skills/anthropics-data-visualization.md) — skill · 13800 installs
- [csv-data-visualizer](https://affpapa.org/en/nevibecode/skills/csv-data-visualizer.md) — skill · 1300 installs
- [Data Cleaning Pipeline](https://affpapa.org/en/nevibecode/skills/data-cleaning-pipeline.md) — skill · 589 installs

From the same set: [reason-machines/data-skills](https://affpapa.org/en/nevibecode/by/reason-machines/data-skills.md) — 74 cards

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
