# Dagster CLI (dgc)
A command-line interface for Dagster+, inspired by GitHub's `gh` CLI.
## Installation
```bash
# Install with uv (recommended - adds 'dgc' to PATH)
uv tool install dagster-cli
# Or install with pip
pip install dagster-cli
```
## Quick Start
```bash
# Authenticate with your Dagster+ deployment
dgc auth login
# Check health status of all assets (find problems)
dgc asset health
# View details about a specific asset
dgc asset view analytics/daily_revenue
# View logs for a failed run (see stack traces)
dgc run logs abc123 --stderr
# List recent runs to find failures
dgc run list --limit 10
```
**Note:** All commands support `--help` for detailed options and `--tldr` for quick examples.
## MCP Server for AI Assistants
Run the MCP server without installation using uvx:
```bash
# Start MCP server for Claude Code integration
uvx --from dagster-cli dgc mcp start
```
Configure Claude Code by adding to your MCP settings:
```json
{
"mcpServers": {
"dagster-cli": {
"command": "uvx",
"args": ["--from", "dagster-cli", "dgc", "mcp", "start"]
}
}
}
```
This enables AI assistants to:
- Check asset health and identify failures
- Investigate failed runs and view error logs
- Monitor job execution and debug issues
- Access stderr/stdout logs for troubleshooting
## Working with Branch Deployments
```bash
# List all deployments including branches
dgc deployment list
# Get filtered logs from a branch deployment (e.g., for PR review)
dgc run list --deployment feat-new-feature --status FAILURE --limit 5
dgc run logs abc123 --deployment feat-new-feature --stderr
# Filter runs by job name on a specific deployment
dgc run list --deployment staging --job daily_etl --limit 10
```
## Features
- **Secure Authentication** - Store credentials safely with profile support
- **Job Management** - List, view, and run Dagster jobs from the terminal
- **Run Monitoring** - Track run status, view logs, and analyze failures
- **Asset Management** - List, materialize, and monitor asset health
- **Repository Operations** - List and reload code locations
- **Profile Support** - Manage multiple Dagster+ deployments
- **Branch Deployment Support** - Access branch deployments for testing and debugging
- **Deployment Discovery** - List and test available deployments
- **MCP Integration** - AI assistant integration for monitoring and debugging
## Configuration
### Authentication
```bash
dgc auth login # Set up credentials
dgc auth status # View current profile
dgc auth switch staging # Switch between profiles
```
### Multiple Profiles
```bash
dgc auth login --profile staging # Create new profile
dgc job list --profile production # Use specific profile
```
### Environment Variables
- `DAGSTER_CLOUD_TOKEN` - User token
- `DAGSTER_CLOUD_URL` - Deployment URL
- `DGC_PROFILE` - Default profile
- `DAGSTER_CLOUD_DEPLOYMENT` - Default deployment
Credentials stored in `~/.config/dagster-cli/config.json`
## Development
```bash
# Run tests
uv run pytest
# Format and lint
make fix
# Build package
uv build
```
Raw data
{
"_id": null,
"home_page": null,
"name": "dagster-cli",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "dagster, cli, dagster-plus, dagster-cloud",
"author": null,
"author_email": "Pedro <me@pdbr.org>",
"download_url": "https://files.pythonhosted.org/packages/02/08/b76f8431e67a0c06ae1cadff92c348ffbc98bce7e081d217406bad674ca2/dagster_cli-0.8.0.tar.gz",
"platform": null,
"description": "# Dagster CLI (dgc)\n\nA command-line interface for Dagster+, inspired by GitHub's `gh` CLI.\n\n## Installation\n\n```bash\n# Install with uv (recommended - adds 'dgc' to PATH)\nuv tool install dagster-cli\n\n# Or install with pip\npip install dagster-cli\n```\n\n## Quick Start\n\n```bash\n# Authenticate with your Dagster+ deployment\ndgc auth login\n\n# Check health status of all assets (find problems)\ndgc asset health\n\n# View details about a specific asset\ndgc asset view analytics/daily_revenue\n\n# View logs for a failed run (see stack traces)\ndgc run logs abc123 --stderr\n\n# List recent runs to find failures\ndgc run list --limit 10\n```\n\n**Note:** All commands support `--help` for detailed options and `--tldr` for quick examples.\n\n## MCP Server for AI Assistants\n\nRun the MCP server without installation using uvx:\n\n```bash\n# Start MCP server for Claude Code integration\nuvx --from dagster-cli dgc mcp start\n```\n\nConfigure Claude Code by adding to your MCP settings:\n\n```json\n{\n \"mcpServers\": {\n \"dagster-cli\": {\n \"command\": \"uvx\",\n \"args\": [\"--from\", \"dagster-cli\", \"dgc\", \"mcp\", \"start\"]\n }\n }\n}\n```\n\nThis enables AI assistants to:\n- Check asset health and identify failures\n- Investigate failed runs and view error logs\n- Monitor job execution and debug issues\n- Access stderr/stdout logs for troubleshooting\n\n## Working with Branch Deployments\n\n```bash\n# List all deployments including branches\ndgc deployment list\n\n# Get filtered logs from a branch deployment (e.g., for PR review)\ndgc run list --deployment feat-new-feature --status FAILURE --limit 5\ndgc run logs abc123 --deployment feat-new-feature --stderr\n\n# Filter runs by job name on a specific deployment\ndgc run list --deployment staging --job daily_etl --limit 10\n```\n\n## Features\n\n- **Secure Authentication** - Store credentials safely with profile support\n- **Job Management** - List, view, and run Dagster jobs from the terminal\n- **Run Monitoring** - Track run status, view logs, and analyze failures\n- **Asset Management** - List, materialize, and monitor asset health\n- **Repository Operations** - List and reload code locations\n- **Profile Support** - Manage multiple Dagster+ deployments\n- **Branch Deployment Support** - Access branch deployments for testing and debugging\n- **Deployment Discovery** - List and test available deployments\n- **MCP Integration** - AI assistant integration for monitoring and debugging\n\n## Configuration\n\n### Authentication\n```bash\ndgc auth login # Set up credentials\ndgc auth status # View current profile\ndgc auth switch staging # Switch between profiles\n```\n\n### Multiple Profiles\n```bash\ndgc auth login --profile staging # Create new profile\ndgc job list --profile production # Use specific profile\n```\n\n### Environment Variables\n- `DAGSTER_CLOUD_TOKEN` - User token\n- `DAGSTER_CLOUD_URL` - Deployment URL \n- `DGC_PROFILE` - Default profile\n- `DAGSTER_CLOUD_DEPLOYMENT` - Default deployment\n\nCredentials stored in `~/.config/dagster-cli/config.json`\n\n\n## Development\n\n```bash\n# Run tests\nuv run pytest\n\n# Format and lint\nmake fix\n\n# Build package\nuv build\n```\n\n",
"bugtrack_url": null,
"license": null,
"summary": "A command-line interface for Dagster+",
"version": "0.8.0",
"project_urls": null,
"split_keywords": [
"dagster",
" cli",
" dagster-plus",
" dagster-cloud"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "28da17b174ff886e786b7e55f2b278c2736be33bd498ca220d73f471e059bdd6",
"md5": "20331696beff3bfd3c098931cfeabc16",
"sha256": "598fcbe6be7530f838faf7a4d0861ea52a3386cbf65f9583bb53e0c30648b1b3"
},
"downloads": -1,
"filename": "dagster_cli-0.8.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "20331696beff3bfd3c098931cfeabc16",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 45243,
"upload_time": "2025-07-22T13:28:15",
"upload_time_iso_8601": "2025-07-22T13:28:15.043462Z",
"url": "https://files.pythonhosted.org/packages/28/da/17b174ff886e786b7e55f2b278c2736be33bd498ca220d73f471e059bdd6/dagster_cli-0.8.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "0208b76f8431e67a0c06ae1cadff92c348ffbc98bce7e081d217406bad674ca2",
"md5": "89ce5896e1408a11385f50803d4bd262",
"sha256": "1c8082289d2b988334ddebf135e291296cbfd52652ef95aca29203e479db5034"
},
"downloads": -1,
"filename": "dagster_cli-0.8.0.tar.gz",
"has_sig": false,
"md5_digest": "89ce5896e1408a11385f50803d4bd262",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 40599,
"upload_time": "2025-07-22T13:28:16",
"upload_time_iso_8601": "2025-07-22T13:28:16.269808Z",
"url": "https://files.pythonhosted.org/packages/02/08/b76f8431e67a0c06ae1cadff92c348ffbc98bce7e081d217406bad674ca2/dagster_cli-0.8.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-22 13:28:16",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "dagster-cli"
}