/ Directory / Playground / skills
● Official matlab ⚡ Instant

skills

by matlab · matlab/skills

Official MathWorks Agent Skills for MATLAB — makes Claude actually write idiomatic MATLAB instead of generic numeric code.

A curated set of Agent Skills from matlab/skills that activate when Claude is doing MATLAB work: language idioms, toolbox-aware patterns, MATLAB Projects layout, test frameworks, and performance tips. Because it's published by MathWorks, it encodes current best practices rather than Stack-Overflow-of-2012 habits.

Why use it

Key features

Live Demo

What it looks like in practice

skills-skill-4.replay ▶ ready
0/0

Install

Pick your client

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "skills-skill-4": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/matlab/skills",
        "~/.claude/skills/skills"
      ],
      "_inferred": true
    }
  }
}

Open Claude Desktop → Settings → Developer → Edit Config. Restart after saving.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "skills-skill-4": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/matlab/skills",
        "~/.claude/skills/skills"
      ],
      "_inferred": true
    }
  }
}

Cursor uses the same mcpServers schema as Claude Desktop. Project config wins over global.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "skills-skill-4": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/matlab/skills",
        "~/.claude/skills/skills"
      ],
      "_inferred": true
    }
  }
}

Click the MCP Servers icon in the Cline sidebar, then "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "skills-skill-4": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/matlab/skills",
        "~/.claude/skills/skills"
      ],
      "_inferred": true
    }
  }
}

Same shape as Claude Desktop. Restart Windsurf to pick up changes.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "skills-skill-4",
      "command": "git",
      "args": [
        "clone",
        "https://github.com/matlab/skills",
        "~/.claude/skills/skills"
      ]
    }
  ]
}

Continue uses an array of server objects rather than a map.

~/.config/zed/settings.json
{
  "context_servers": {
    "skills-skill-4": {
      "command": {
        "path": "git",
        "args": [
          "clone",
          "https://github.com/matlab/skills",
          "~/.claude/skills/skills"
        ]
      }
    }
  }
}

Add to context_servers. Zed hot-reloads on save.

claude mcp add skills-skill-4 -- git clone https://github.com/matlab/skills ~/.claude/skills/skills

One-liner. Verify with claude mcp list. Remove with claude mcp remove.

Use Cases

Real-world ways to use skills

How to get Claude to write idiomatic MATLAB, not MATLAB-flavored Python

👤 MATLAB developers who noticed Claude defaulting to loops everywhere ⏱ ~25 min intermediate

When to use: Any MATLAB authoring task — from scripts to toolboxes.

Prerequisites
  • MATLAB R2023b+ recommended — mathworks.com/products/matlab.html
  • Skill cloned — git clone https://github.com/matlab/skills ~/.claude/skills/skills
Flow
  1. Describe the task
    Write a function that computes the moving-window correlation of two time series — MATLAB, idiomatic.✓ Copied
    → Vectorized implementation, correct function signature, docstring
  2. Ask for tests
    Add MATLAB unit tests using matlab.unittest.✓ Copied
    → Tests in a separate file following MATLAB Test conventions
  3. Profile
    If this is called in a tight loop, how would you profile and speed it up?✓ Copied
    → tic/toc or profile() suggestions, preallocation hints

Outcome: Idiomatic, fast, tested MATLAB code.

Pitfalls
  • Claude reaches for Python-style loops — Explicitly ask for vectorized form; reference MATLAB docs style
Combine with: filesystem

Port a Python/NumPy script to MATLAB correctly

👤 Engineers moving research code into a MATLAB pipeline ⏱ ~30 min intermediate

When to use: You have a NumPy prototype and need a clean MATLAB equivalent.

Flow
  1. Share the Python
    Port this NumPy script to MATLAB. Preserve numerical behavior — flag where semantics differ.✓ Copied
    → Translated code + explicit notes on 1-indexing, broadcasting, default dtypes
  2. Verify with a test
    Write a side-by-side test that shows both produce the same outputs on known inputs.✓ Copied
    → A small cross-check script

Outcome: MATLAB port with documented semantic differences.

Pitfalls
  • Off-by-one from zero- vs one-indexing — Claude should call these out; if not, re-ask

Combinations

Pair with other MCPs for X10 leverage

skills-skill-4 + filesystem

Work across a MATLAB Projects folder structure

Read +mytools/, add a new function, and update the tests package.✓ Copied
skills-skill-4 + github

Open PRs for MATLAB codebases with proper test coverage

Open a PR that adds the new function + tests.✓ Copied

Tools

What this MCP exposes

ToolInputsWhen to callCost
matlab-authoring task description Any MATLAB task 0
matlab-testing function under test After authoring 0
perf-guidance slow code + context When something is too slow 0

Cost & Limits

What this costs to run

API quota
none
Tokens per call
~3–10k per task
Monetary
free; MATLAB license sold separately
Tip
Constrain to a specific toolbox when asking — reduces context

Security

Permissions, secrets, blast radius

Credential storage: none
Data egress: none

Troubleshooting

Common errors and fixes

Generated code uses a toolbox you don't have licensed

Tell Claude which toolboxes are available.

Verify: ver in MATLAB
Script errors in older MATLAB

Specify your MATLAB release; skill adapts suggestions.

Verify: version in MATLAB

Alternatives

skills vs others

AlternativeWhen to use it insteadTradeoff
jupyterYou're really doing Python science and only occasionally MATLABDifferent ecosystem

More

Resources

📖 Read the official README on GitHub

🐙 Browse open issues

🔍 Browse all 400+ MCP servers and Skills