← All skills
matlab-use-duckdb
97 / 100 · Low risk
Fine to try. Some of what it can do is expected: a data skill usually connects to databases or online services with your credentials.
By matlab/matlab-agentic-toolkit (GitHub) · data · 1,291 stars · scanned at commit b58be81
Use DuckDB from MATLAB via Database Toolbox (R2026a+) as a non-math operations engine on large tabular files (CSV/Parquet/JSON) and as a zero-config embedded database. Use when connecting to DuckDB, querying CSV, Parquet, and JSON files directly with SQL, reducing or profiling large data before MATLAB analysis, creating portable development databases, or installing DuckDB extensions. Triggers on: DuckDB, duckdb(), large CSV/Parquet/JSON, file too large for readtable, filter/aggregate at source,…
Works with any agent that supports SKILL.md skills.
What this skill can do
Sends data to these websites: example.com
This is disclosed by the author in the skill's SKILL.md or README. Expected for a data skill.
Found in 29 places.
Show 17 more
- skills-catalog/reporting-and-database-access/matlab-use-duckdb/SKILL.md, line 192
data = fetch(conn, "SELECT * FROM read_parquet('data/year=2024/*.parquet') " + ... - skills-catalog/reporting-and-database-access/matlab-use-duckdb/SKILL.md, line 203
data = fetch(conn, "SELECT * FROM read_parquet('https://example.com/data.parquet') LIMIT 1000"); - skills-catalog/reporting-and-database-access/matlab-use-duckdb/SKILL.md, line 213
data = fetch(conn, "SELECT * FROM read_xlsx('report.xlsx')"); - skills-catalog/reporting-and-database-access/matlab-use-duckdb/SKILL.md, line 243
data = fetch(conn, "SELECT * FROM read_csv('data.csv')"); - skills-catalog/reporting-and-database-access/matlab-use-duckdb/SKILL.md, line 246
data = fetch(conn, "SELECT * FROM read_csv(""data.csv"")"); - skills-catalog/reporting-and-database-access/matlab-use-duckdb/SKILL.md, line 248
data = fetch(conn, "SELECT * FROM read_csv('data.csv')"); - skills-catalog/reporting-and-database-access/matlab-use-duckdb/SKILL.md, line 254
filtered = fetch(conn, "SELECT * FROM read_parquet('huge.parquet') WHERE val > 100"); - skills-catalog/reporting-and-database-access/matlab-use-duckdb/SKILL.md, line 263
data = fetch(conn, "SELECT * FROM st_read('file.xlsx')"); - skills-catalog/reporting-and-database-access/matlab-use-duckdb/SKILL.md, line 267
data = fetch(conn, "SELECT * FROM read_xlsx('file.xlsx')"); - skills-catalog/reporting-and-database-access/matlab-use-duckdb/SKILL.md, line 295
- **Solution**: Use `fetch(conn, "SELECT * FROM read_csv('file.csv')")` — `sqlread` expects table names only. - skills-catalog/reporting-and-database-access/matlab-use-duckdb/reference/cards/development-database.md, line 38
stats = fetch(conn, "SELECT Department, COUNT(*) as cnt, AVG(Age) as avg_age " + ... - skills-catalog/reporting-and-database-access/matlab-use-duckdb/reference/cards/development-database.md, line 57
monthlySales = fetch(conn, ... - skills-catalog/reporting-and-database-access/matlab-use-duckdb/reference/cards/extensions.md, line 36
data = fetch(conn, "SELECT * FROM read_parquet('https://example.com/data.parquet') LIMIT 1000"); - skills-catalog/reporting-and-database-access/matlab-use-duckdb/reference/cards/extensions.md, line 51
data = fetch(conn, "SELECT * FROM legacy.main.customers WHERE active = true"); - skills-catalog/reporting-and-database-access/matlab-use-duckdb/reference/cards/file-analytics.md, line 9
| `read_csv('path')` | CSV | `fetch(conn, "SELECT * FROM read_csv('data.csv')")` | - skills-catalog/reporting-and-database-access/matlab-use-duckdb/reference/cards/file-analytics.md, line 10
| `read_parquet('path')` | Parquet | `fetch(conn, "SELECT * FROM read_parquet('data.parquet')")` | - skills-catalog/reporting-and-database-access/matlab-use-duckdb/reference/cards/file-analytics.md, line 11
| `read_json('path')` | JSON | `fetch(conn, "SELECT * FROM read_json('events.json')")` |
and 9 more places
Install
Paste this into your terminal. It downloads exactly the version we scanned, not whatever is newest.
if [ -e ~/.agents/skills/'matlab-use-duckdb' ] || [ -L ~/.agents/skills/'matlab-use-duckdb' ]; then echo 'A skill folder named matlab-use-duckdb already exists — not replacing it' >&2; false; else d=$(mktemp -d) && git clone --quiet --filter=blob:none --no-checkout 'https://github.com/matlab/matlab-agentic-toolkit' "$d" && git -C "$d" checkout --quiet 'b58be8124631cccb03a67aa79dcef1c9720243e2' -- 'skills-catalog/reporting-and-database-access/matlab-use-duckdb' && mkdir -p ~/.agents/skills && cp -R "$d"/'skills-catalog/reporting-and-database-access/matlab-use-duckdb' ~/.agents/skills/'matlab-use-duckdb' && rm -rf "$d"; fi
Codex reads ~/.agents/skills directly. For Claude Code, Cursor, Copilot, Gemini CLI, Antigravity or OpenCode, also link it. For Claude Code: ln -s ~/.agents/skills/'matlab-use-duckdb' ~/.claude/skills/'matlab-use-duckdb' (other agents: ~/.cursor/skills, ~/.copilot/skills, ~/.gemini/skills, ~/.gemini/config/skills, ~/.config/opencode/skills). Or install through the finder skill, which does both.
Badge for your README
The badge for matlab/matlab-agentic-toolkit shows the score of its lowest-scoring skill.

[](https://zalavijaysinh.github.io/skilltrust/repos/matlab/matlab-agentic-toolkit/)
Score history
| Date | Version | Score |
|---|
| 2026-11-11 | b58be81 | 97 |
| 2026-11-08 | 2a7f215 | 97 |
| 2026-11-07 | 2a7f215 | 97 |