{"id":13514083,"url":"https://github.com/planetscale/cli","last_synced_at":"2026-01-16T08:11:09.095Z","repository":{"id":37797966,"uuid":"317614271","full_name":"planetscale/cli","owner":"planetscale","description":"The CLI for PlanetScale Database","archived":false,"fork":false,"pushed_at":"2026-01-13T19:21:42.000Z","size":24760,"stargazers_count":637,"open_issues_count":10,"forks_count":56,"subscribers_count":21,"default_branch":"main","last_synced_at":"2026-01-13T20:59:18.505Z","etag":null,"topics":["database","go","mysql","mysql-client","planetscale"],"latest_commit_sha":null,"homepage":"https://planetscale.com/cli","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/planetscale.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-12-01T17:15:55.000Z","updated_at":"2026-01-13T19:21:45.000Z","dependencies_parsed_at":"2023-11-07T00:47:42.204Z","dependency_job_id":"e4eb5374-2f24-44e5-915d-ee5e6634f6d5","html_url":"https://github.com/planetscale/cli","commit_stats":null,"previous_names":[],"tags_count":288,"template":false,"template_full_name":null,"purl":"pkg:github/planetscale/cli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/planetscale%2Fcli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/planetscale%2Fcli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/planetscale%2Fcli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/planetscale%2Fcli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/planetscale","download_url":"https://codeload.github.com/planetscale/cli/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/planetscale%2Fcli/sbom","scorecard":{"id":509965,"data":{"date":"2025-08-11","repo":{"name":"github.com/planetscale/cli","commit":"675726aff9a839a30800f28bd3d3bd625488b3f0"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.3,"checks":[{"name":"Maintained","score":10,"reason":"30 commit(s) and 1 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Pinned-Dependencies","score":1,"reason":"dependency not pinned by hash detected -- score normalized to 1","details":["Warn: containerImage not pinned by hash: Dockerfile:1","Warn: containerImage not pinned by hash: Dockerfile:11: pin your Docker image by updating ubuntu:noble to ubuntu:noble@sha256:7c06e91f61fa88c08cc74f7e1b7c69ae24910d745357e0dfe1d2c0322aaf20f9","Warn: containerImage not pinned by hash: Dockerfile.goreleaser:1: pin your Docker image by updating ubuntu:noble to ubuntu:noble@sha256:7c06e91f61fa88c08cc74f7e1b7c69ae24910d745357e0dfe1d2c0322aaf20f9","Warn: containerImage not pinned by hash: docker/Dockerfile.goreleaser:2","Warn: containerImage not pinned by hash: docker/Dockerfile.license_finder:1: pin your Docker image by updating golang:1-alpine to golang:1-alpine@sha256:244baa35bcfaf9a5b3444519df6d42554a1f92dc33820bd98f0662df270d8a6a","Info:   0 out of   5 containerImage dependencies pinned","Info:   1 out of   1 goCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact v0.251.0 not signed: https://api.github.com/repos/planetscale/cli/releases/239723816","Warn: release artifact v0.250.0 not signed: https://api.github.com/repos/planetscale/cli/releases/236897777","Warn: release artifact v0.249.0 not signed: https://api.github.com/repos/planetscale/cli/releases/235465432","Warn: release artifact v0.247.0 not signed: https://api.github.com/repos/planetscale/cli/releases/231869825","Warn: release artifact v0.246.0 not signed: https://api.github.com/repos/planetscale/cli/releases/227480933","Warn: release artifact v0.251.0 does not have provenance: https://api.github.com/repos/planetscale/cli/releases/239723816","Warn: release artifact v0.250.0 does not have provenance: https://api.github.com/repos/planetscale/cli/releases/236897777","Warn: release artifact v0.249.0 does not have provenance: https://api.github.com/repos/planetscale/cli/releases/235465432","Warn: release artifact v0.247.0 does not have provenance: https://api.github.com/repos/planetscale/cli/releases/231869825","Warn: release artifact v0.246.0 does not have provenance: https://api.github.com/repos/planetscale/cli/releases/227480933"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-20T00:17:49.187Z","repository_id":37797966,"created_at":"2025-08-20T00:17:49.188Z","updated_at":"2025-08-20T00:17:49.188Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28478047,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-16T06:30:42.265Z","status":"ssl_error","status_checked_at":"2026-01-16T06:30:16.248Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["database","go","mysql","mysql-client","planetscale"],"created_at":"2024-08-01T05:00:45.929Z","updated_at":"2026-01-16T08:11:09.087Z","avatar_url":"https://github.com/planetscale.png","language":"Go","funding_links":[],"categories":["Go","Databases"],"sub_categories":[],"readme":"# PlanetScale CLI [![Build status](https://badge.buildkite.com/cf225eb6ccc163b365267fd8172a6e5bd9baa7c8fcdd10c77c.svg?branch=main)](https://buildkite.com/planetscale/cli)\n\nPlanetScale is more than a database and our CLI is more than a jumble of commands. The `pscale` command line tool brings branches, deploy requests, and other PlanetScale concepts to your fingertips.\n\n![PlanetScale CLI](https://user-images.githubusercontent.com/6104/191803574-be63da54-d255-4f5a-ab2d-2b49cdf7eb12.png)\n\n\n## Installation\n\n#### macOS\n\n`pscale` is available via a Homebrew Tap, and as downloadable binary from the [releases](https://github.com/planetscale/cli/releases/latest) page:\n\n```\nbrew install planetscale/tap/pscale\n```\nOptional: `pscale` requires a MySQL 8 Client in your PATH for certain commands. You can install it by running:\n\n```\nbrew install mysql-client@8.4\n```\n\nTo upgrade to the latest version:\n\n```\nbrew upgrade pscale\n```\n\n#### Linux\n\n`pscale` is available as downloadable binaries from the [releases](https://github.com/planetscale/cli/releases/latest) page. Download the .deb or .rpm from the [releases](https://github.com/planetscale/cli/releases/latest) page and install with `sudo dpkg -i` and `sudo rpm -i` respectively.\n\nArch: [`pscale-cli-bin`](https://aur.archlinux.org/packages/pscale-cli-bin)\n\n#### Windows\n\n`pscale` is available via [scoop](https://scoop.sh/), and as a downloadable binary from the [releases](https://github.com/planetscale/cli/releases/latest) page:\n\n```\nscoop bucket add pscale https://github.com/planetscale/scoop-bucket.git\nscoop install pscale mysql\n```\n\nTo upgrade to the latest version:\n\n```\nscoop update pscale\n```\n\n#### Manually\n\nDownload the pre-compiled binaries from the [releases](https://github.com/planetscale/cli/releases/latest) page and copy to the desired location.\n\nAlternatively, you can install [bin](https://github.com/marcosnils/bin) which works on all `macOS`, `Windows`, and `Linux` platforms:\n\n```\nbin install https://github.com/planetscale/cli\n```\n\nTo upgrade to the latest version\n\n```\nbin upgrade pscale\n```\n\n#### Container images\n\nWe provide ready to use Docker container images.  To pull the latest image:\n\n```\ndocker pull planetscale/pscale:latest\n```\n\nTo pull a specific version:\n\n```\ndocker pull planetscale/pscale:v0.63.0\n```\n\nIf you like to have a shell alias that runs the latest version of pscale from docker whenever you type `pscale`:\n\n```\nmkdir -p $HOME/.config/planetscale\nalias pscale=\"docker run -e HOME=/tmp -v $HOME/.config/planetscale:/tmp/.config/planetscale --user $(id -u):$(id -g) --rm -it -p 3306:3306/tcp planetscale/pscale:latest\"\n```\n\nIf you need a more advanced example that works with service tokens and differentiates between commands that need a pseudo terminal or non-interactive mode, [have a look at this shell function](https://github.com/jonico/pscale-cli-helper-scripts/blob/main/.pscale/cli-helper-scripts/use-pscale-docker-image.sh).\n\n## MCP Server Integration\n\nThe PlanetScale CLI includes a Model Context Protocol (MCP) server that provides AI tools direct access to your PlanetScale databases. This allows AI assistants to list organizations, databases, branches, and run SQL queries with proper authentication.\n\n### Setting up MCP in AI tools\n\n#### Claude Desktop\n\nTo enable the PlanetScale MCP server in Claude Desktop:\n\n```\npscale mcp install --target claude\n```\n\n#### Cursor Editor\n\nTo enable the PlanetScale MCP server in Cursor:\n\n```\npscale mcp install --target cursor\n```\n\n#### Manual Setup for Other AI Tools\n\nFor AI tools that support custom MCP servers but don't have automated installation through the CLI, you can manually configure them:\n\n1. Find your tool's MCP configuration file\n2. Add the following configuration:\n\n```json\n{\n  \"mcpServers\": {\n    \"planetscale\": {\n      \"command\": \"pscale\",\n      \"args\": [\"mcp\", \"server\"]\n    }\n  }\n}\n```\n\n3. Restart your AI tool to apply the changes\n\nVerify the tool recognizes the PlanetScale MCP server by asking it to list your databases or perform other PlanetScale operations.\n\nOnce configured, these AI tools will be able to use PlanetScale-specific context to help you work with your databases. The MCP server provides the following capabilities:\n- List organizations\n- List databases\n- List branches\n- List keyspaces\n- List tables\n- Get table schemas\n- Run read-only SQL queries\n\n## GitHub Actions Usage\nUse the [setup-pscale-action](https://github.com/planetscale/setup-pscale-action) to install and use `pscale` in GitHub Actions.\n\n```yaml\n- name: Setup pscale\n  uses: planetscale/setup-pscale-action@v1\n- name: Use pscale\n  env:\n    PLANETSCALE_SERVICE_TOKEN_ID: ${{ secrets.PLANETSCALE_SERVICE_TOKEN_ID }}\n    PLANETSCALE_SERVICE_TOKEN: ${{ secrets.PLANETSCALE_SERVICE_TOKEN }}\n  run: |\n    pscale deploy-request list my-db --org my-org\n```\n\n## Local Development\n\nTo run a command:\n```\ngo run cmd/pscale/main.go \u003ccommand\u003e\n```\n\nAlternatively, you can build `pscale`:\n```\ngo build cmd/pscale/main.go\n```\n\nAnd then use the `pscale` binary built in `cmd/pscale/` for testing:\n```\n./cmd/pscale/pscale \u003ccommand\u003e\n```\n\n## Documentation\n\nPlease checkout our Documentation page: [planetscale.com/docs](https://planetscale.com/docs/reference/planetscale-cli)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplanetscale%2Fcli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fplanetscale%2Fcli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fplanetscale%2Fcli/lists"}