SafeDep Vet MCP
io.github.safedepPublished by GitHub account safedepv1.20.0Updated Oct 24, 2026
Protect your AI agents and IDEs from malicious open-source packages.
Overview
SafeDep Vet MCP exposes the vet scanner so an assistant can check dependencies, CI workflows and agent configs for malicious packages and vulnerabilities.
- What you can do
- Scan a directory, git repository, container image, SBOM or single package for malicious packages, known vulnerabilities and risky GitHub Actions workflows
- Check lockfiles and manifests across npm, PyPI, Go, Maven, Gradle, Cargo, RubyGems, NuGet, Packagist and Pub, plus AI agent configs, without installing or running them
- Apply policy-as-code rules in CEL to decide when a scan fails, and test a rule against a saved scan
- Produce reports such as SARIF, and CycloneDX xBOM and CBOM inventories of AI libraries and crypto usage
- Audit a developer machine for AI tools, MCP servers, editor extensions and global npm packages
- When to use it
- Useful when you want an assistant to vet a project's dependencies, pull request changes or CI workflows before they reach production, or to gate builds on malware and vulnerability findings. Also suited to inventorying AI and crypto usage or auditing the tools installed on a machine.
- Requirements
- Runs as a local stdio process, distributed as a container image (ghcr.io/safedep/vet) run with Docker; the README also lists Homebrew, mise and Go install channels. No account, API key or environment variable is declared. Network access is needed to query SafeDep threat data.
Installation
In SourceWeft
- Open SafeDep Vet MCP in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
Find malicious packages, vulnerabilities and risky CI workflows before they reach production.
[!NOTE] This branch is vet v2, in alpha. vet v1 is on
mainand stays the latest release. The v2.0.0 release notes map each v1 command and flag to v2.
Why vet
Your dependencies, your GitHub Actions workflows and your AI agent configs run code that you did not write. vet finds the risk in them.
- Malicious packages. vet checks each package against SafeDep Threat Intel. Threat Intel analyzes new package versions when the registries publish them.
- Known vulnerabilities, with the fixed version to upgrade to.
- Risky workflows. Dangerous triggers, template injection, exposed secrets and actions with no pinned commit SHA.
- Lockfile tampering and fresh versions. Entries from an untrusted registry, and versions inside the cooldown window.
- Policy as code. Rules in CEL decide when a scan fails. You can test a rule on a saved scan.
- AI and crypto inventory. vet lists the AI libraries and the crypto algorithms that your code calls, and writes a CycloneDX xBOM and CBOM.
vet needs no account and sends no source code.
Quick start
[vet scan finds a malicious package, vulnerabilities and workflow injection]
Install
mise installs a release one day after its publication. install.md has the command for the newest build, the release binaries and the build attestations.
What vet scans
vet reads the lockfiles and manifests of npm, PyPI, Go, Maven, Gradle, Cargo, RubyGems, NuGet, Packagist, Pub and more. It also reads the GitHub Actions workflows and the AI agent configs of the target. It does not install or run any of them. Controls turn this data into findings. See controls.md.
Policy
A policy decides when a scan fails. Save this file as vet-policy.yml:
Test it on the last scan, with no new scan. Then apply it to a pull request:
After its expiry date, the suppression no longer hides the finding. Read policy.md for the rule fields, more rules and the Agent Skill that writes a policy for you.
Use cases
- Pull request check. The vet GitHub Action comments on a pull
request that adds a package, a workflow or a finding, and fails the check on an attack.
vet ci initadds it to a repository. - CI gate. Exit codes, SARIF for GitHub code scanning, GitLab and Bitbucket reports. See ci.md.
- Pull request review.
--base-refreports only the packages and workflows that a change adds. - xBOM and CBOM. A CycloneDX 1.7 inventory of the AI libraries and the crypto that your code uses. See inventory.md.
- AI agents. vet finds Claude Code and other agents, and then writes JSON and never prompts.
- Endpoint audit.
vet endpoint auditlists the AI tools, MCP servers, editor extensions and global npm packages on a developer machine, and checks them for malware.
Documentation
Privacy
vet sends the identity of each package (its ecosystem, name and version) to SafeDep to get the data about it. vet sends no source code and no file content.
Community
- Ask questions and share ideas on Discord or in GitHub Discussions.
- Report a bug in the issue tracker.
- Read the contributing guide before you open a pull request.
vet also runs in the cloud. SafeDep Cloud runs vet on your repositories, with no infrastructure to manage.
[Contributors to vet]Source: README.md at commit b62453f
Tools
0Version history
3- v1.20.0LatestOct 7, 2026
- v1.19.1Sep 16, 2026
- v1.19.0Sep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts