
Research
Shai-Hulud Descends to Hades: Miasma Worm Campaign Spreads with New PyPI Wave
Socket found 37 malicious PyPI wheels that abuse Python startup hooks to launch a Bun-powered credential stealer tied to Mini Shai-Hulud/Miasma.
@airtable/mcp-cli
Advanced tools
Manage your Airtable bases from the terminal.
This CLI discovers commands from the Airtable MCP server at runtime. airtable-mcp tools shows whatever the server exposes at that moment. If the server adds, removes, or renames a tool, the CLI reflects that without a client release. See DESIGN.md for the design rationale.
npm install -g @airtable/mcp-cli
Or download a standalone binary:
curl -fsSL https://raw.githubusercontent.com/Airtable/airtable-mcp-cli/main/install.sh | sh
Set up your personal access token. Credentials are stored in a default profile. Use --profile <name> to create additional profiles.
airtable-mcp configure
Discover what you have access to:
airtable-mcp tools
airtable-mcp list-bases
Then act on it:
airtable-mcp list-records --baseId appXXX --tableIdOrName Tasks
The first time you run a tool, the CLI fetches the tool list from the server and caches it for 60 seconds. After that, subsequent commands are fast. Use --refresh on any tool command to bypass the cache.
This CLI is experimental and tool names, arguments, and output formats may change without notice. The tools you see today may be renamed, removed, or have their arguments changed in a future server update. If you're scripting against specific tools, check for tool existence before calling and handle missing or unexpected fields in output.
airtable-mcp configure Set up personal access token
airtable-mcp whoami Show current auth status
airtable-mcp logout Remove saved credentials
airtable-mcp tools List available tools
airtable-mcp <tool> [--flags] Run a tool
airtable-mcp <tool> --help, -h Show help and flags for a tool
airtable-mcp completions <shell> Generate shell completions (bash, zsh, fish)
airtable-mcp --help, -h Show help
airtable-mcp --version, -v Print version
Most commands accept --profile <name> to switch between accounts.
Tool output defaults to formatted JSON. The tools command defaults to a human-readable list.
| Flag | Applies to | Description |
|---|---|---|
--profile <name> | all | Use a named profile |
--json | tools | Output tool list as JSON |
--refresh | tools, <tool> | Bypass the tool cache |
--output raw | <tool> | Raw text output instead of JSON |
--input - | <tool> | Read arguments as JSON from stdin |
-q, --quiet | <tool> | Suppress status messages on stderr |
Manage multiple accounts:
airtable-mcp configure --profile work
airtable-mcp configure --profile personal
airtable-mcp tools --profile work
Install pre-built skills for common workflows:
npx skills add airtable/skills
Other installation methods can be found in the Airtable Skills repo.
This CLI is meant to be driven by scripts and agents. Flags, output behavior, and exit codes are the stable part. Tool names and schemas are not; they come from the server at runtime.
Useful pieces:
AIRTABLE_TOKEN: skip configure, useful in CItools --json: discover tools programmatically--input -: pass arguments as JSON on stdin-q: keep stdout clean--output raw: return the server response without JSON formattingExample:
export AIRTABLE_TOKEN=pat_xxx
airtable-mcp tools --json
echo '{"baseId":"appXXX","tableIdOrName":"Tasks"}' | airtable-mcp list-records --input - -q
| Variable | Description |
|---|---|
AIRTABLE_TOKEN | Personal access token. Overrides airtable-mcp configure. |
AIRTABLE_MCP_ENDPOINT | MCP server URL (default: https://mcp.airtable.com/mcp). |
Endpoints are restricted to HTTPS on *.airtable.com to prevent token exfiltration to arbitrary servers.
Config is stored in ~/.airtable/cli.json with restricted file permissions (0600). The config directory is created with 0700 permissions. Tool definitions are cached in ~/.airtable/cache-{profile}.json with a 60-second TTL. The cache is integrity-checked on read.
npm install
npm run build
npm run typecheck
npm test
Install locally as the airtable-mcp command:
npm run build
npm link
After npm link, only re-run npm run build to pick up changes — no need to re-link.
Unlink when done:
npm unlink -g @airtable/mcp-cli
MIT
FAQs
Airtable MCP CLI — auto-discovers commands from the MCP server
The npm package @airtable/mcp-cli receives a total of 339 weekly downloads. As such, @airtable/mcp-cli popularity was classified as not popular.
We found that @airtable/mcp-cli demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 22 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
Socket found 37 malicious PyPI wheels that abuse Python startup hooks to launch a Bun-powered credential stealer tied to Mini Shai-Hulud/Miasma.

Security News
RubyGems and Bundler 4.0.13 introduced an opt-in cooldown feature that delays newly published gems during dependency resolution.

Security News
pnpm 11.5 now recognizes npm staged publish approvals in release metadata, preventing those releases from being mistaken for lower-trust package publishes.