harvard-artifacts-data-pipeline — Claude Code skill: ETL and analytics
A skill that walks your agent from Harvard Art Museums API extraction to a Streamlit dashboard backed by SQL analytics.
npx skills add reason-machines/data-skills --skill harvard-artifacts-data-pipeline -a claude-codeWhat harvard-artifacts-data-pipeline does
The skill covers the whole route: pulling objects from the Harvard Art Museums API with pagination and pauses between calls, reshaping nested JSON into three tables, loading them into MySQL or TiDB Cloud, and rendering charts in Streamlit with Plotly.
The schema has three tables. artifactmetadata holds objectid, title, culture, century, division, classification, dated, accessionyear, peoplecount and totalpageviews. artifactmedia carries imagecount, videocount, hasimage and primaryimageurl. artifactcolors stores color, spectrum, hue and percent. Foreign keys tie them together on objectid. Code samples inside cover fetching, transformation and batch inserts with ON DUPLICATE KEY UPDATE, plus a set of analytical queries.
You need a Harvard Art Museums API key and a reachable database before anything runs. The skill reads HARVARD_API_KEY, DB_HOST, DB_USER, DB_PASSWORD and DB_NAME from the environment, so a missing key stops extraction at the first request. Dependencies come from requirements.txt: streamlit, pandas, requests, mysql-connector-python, plotly, python-dotenv.
What it helps with
- pull museum objects from the Harvard API with pagination
- split nested JSON into three related tables
- batch-load metadata rows into MySQL
- write SQL queries over culture, century and classification
- build a Streamlit dashboard with Plotly charts
Example prompts for the agent
- Build the ETL pipeline: fetch 100 objects from the Harvard Art Museums API and split them across
artifactmetadata,artifactmediaandartifactcolors - Write a SQL query counting objects per culture in the database
- Create a Streamlit dashboard charting how objects are distributed across centuries
How to install harvard-artifacts-data-pipeline
1Skills CLI (Vercel)
npx skills add reason-machines/data-skills --skill harvard-artifacts-data-pipeline -a claude-code2Manually: put the files in place
~/.claude/skills/harvard-artifacts-data-pipeline/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/harvard-artifacts-data-pipeline/
1Skills CLI (Vercel)
npx skills add reason-machines/data-skills --skill harvard-artifacts-data-pipeline -a codex2Manually: put the files in place
.agents/skills/harvard-artifacts-data-pipeline/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add reason-machines/data-skills --skill harvard-artifacts-data-pipeline -a cursor2Manually: put the files in place
.cursor/skills/harvard-artifacts-data-pipeline/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install reason-machines/data-skills harvard-artifacts-data-pipeline2Manually: put the files in place
.github/skills/harvard-artifacts-data-pipeline/SKILL.md1Skills CLI (Vercel)
npx skills add reason-machines/data-skills --skill harvard-artifacts-data-pipeline -a gemini-cli2Platform CLI
gemini skills install https://github.com/reason-machines/data-skills --path skills/harvard-artifacts-data-pipelineManually: put the files in place
.devin/skills/harvard-artifacts-data-pipeline/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add reason-machines/data-skills --skill harvard-artifacts-data-pipeline -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about harvard-artifacts-data-pipeline
How do I install harvard-artifacts-data-pipeline in Claude Code?
Run npx skills add reason-machines/data-skills --skill harvard-artifacts-data-pipeline -a claude-code. The skill lands at ~/.claude/skills/harvard-artifacts-data-pipeline/SKILL.md.
What does harvard-artifacts-data-pipeline do?
It guides the agent through the full data cycle for Harvard Art Museums: extraction, transformation into a relational schema, loading into MySQL or TiDB Cloud, and a Streamlit dashboard on top.
What do I need before running it?
A Harvard Art Museums API key and access to a MySQL or TiDB Cloud database. The skill reads HARVARD_API_KEY, DB_HOST, DB_USER, DB_PASSWORD and DB_NAME from the environment.