Explain any lockfile change: bumps release-verified against 22 registries, vulns (OSV), ages, deprecations, typosquats, integrity tampering — 61 formats incl. pdm.lock, vcpkg, mise.lock, build.gradle, pom.xml, go.sum, GitHub Actions, GitLab CI, Dockerfiles, Kubernetes, Helm, SBOMs.
Setup
Choose your client, copy the config, then fill in any required environment variables.
claude mcp add lockvet --env GITHUB_TOKEN='<GITHUB_TOKEN>' --env GITLAB_TOKEN='<GITLAB_TOKEN>' --env BITBUCKET_TOKEN='<BITBUCKET_TOKEN>' --env GITEA_TOKEN='<GITEA_TOKEN>' --env AZURE_DEVOPS_TOKEN='<AZURE_DEVOPS_TOKEN>' -- docker run -i --rm -e GITHUB_TOKEN -e GITLAB_TOKEN -e BITBUCKET_TOKEN -e GITEA_TOKEN -e AZURE_DEVOPS_TOKEN ghcr.io/matteo-sung/lockvet:0.6.20~/.codex/config.toml
[mcp_servers.lockvet]
command = "docker"
args = ["run", "-i", "--rm", "-e", "GITHUB_TOKEN", "-e", "GITLAB_TOKEN", "-e", "BITBUCKET_TOKEN", "-e", "GITEA_TOKEN", "-e", "AZURE_DEVOPS_TOKEN", "ghcr.io/matteo-sung/lockvet:0.6.20"]
env = { GITHUB_TOKEN = "<GITHUB_TOKEN>", GITLAB_TOKEN = "<GITLAB_TOKEN>", BITBUCKET_TOKEN = "<BITBUCKET_TOKEN>", GITEA_TOKEN = "<GITEA_TOKEN>", AZURE_DEVOPS_TOKEN = "<AZURE_DEVOPS_TOKEN>" }
# codex mcp add lockvet --env GITHUB_TOKEN='<GITHUB_TOKEN>' --env GITLAB_TOKEN='<GITLAB_TOKEN>' --env BITBUCKET_TOKEN='<BITBUCKET_TOKEN>' --env GITEA_TOKEN='<GITEA_TOKEN>' --env AZURE_DEVOPS_TOKEN='<AZURE_DEVOPS_TOKEN>' -- docker run -i --rm -e GITHUB_TOKEN -e GITLAB_TOKEN -e BITBUCKET_TOKEN -e GITEA_TOKEN -e AZURE_DEVOPS_TOKEN ghcr.io/matteo-sung/lockvet:0.6.20~/.cursor/mcp.json
{
"mcpServers": {
"lockvet": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_TOKEN",
"-e",
"GITLAB_TOKEN",
"-e",
"BITBUCKET_TOKEN",
"-e",
"GITEA_TOKEN",
"-e",
"AZURE_DEVOPS_TOKEN",
"ghcr.io/matteo-sung/lockvet:0.6.20"
],
"env": {
"GITHUB_TOKEN": "<GITHUB_TOKEN>",
"GITLAB_TOKEN": "<GITLAB_TOKEN>",
"BITBUCKET_TOKEN": "<BITBUCKET_TOKEN>",
"GITEA_TOKEN": "<GITEA_TOKEN>",
"AZURE_DEVOPS_TOKEN": "<AZURE_DEVOPS_TOKEN>"
}
}
}
}.vscode/mcp.json
{
"servers": {
"lockvet": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_TOKEN",
"-e",
"GITLAB_TOKEN",
"-e",
"BITBUCKET_TOKEN",
"-e",
"GITEA_TOKEN",
"-e",
"AZURE_DEVOPS_TOKEN",
"ghcr.io/matteo-sung/lockvet:0.6.20"
],
"env": {
"GITHUB_TOKEN": "<GITHUB_TOKEN>",
"GITLAB_TOKEN": "<GITLAB_TOKEN>",
"BITBUCKET_TOKEN": "<BITBUCKET_TOKEN>",
"GITEA_TOKEN": "<GITEA_TOKEN>",
"AZURE_DEVOPS_TOKEN": "<AZURE_DEVOPS_TOKEN>"
}
}
}
}~/.gemini/settings.json
{
"mcpServers": {
"lockvet": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_TOKEN",
"-e",
"GITLAB_TOKEN",
"-e",
"BITBUCKET_TOKEN",
"-e",
"GITEA_TOKEN",
"-e",
"AZURE_DEVOPS_TOKEN",
"ghcr.io/matteo-sung/lockvet:0.6.20"
],
"env": {
"GITHUB_TOKEN": "<GITHUB_TOKEN>",
"GITLAB_TOKEN": "<GITLAB_TOKEN>",
"BITBUCKET_TOKEN": "<BITBUCKET_TOKEN>",
"GITEA_TOKEN": "<GITEA_TOKEN>",
"AZURE_DEVOPS_TOKEN": "<AZURE_DEVOPS_TOKEN>"
}
}
}
}claude_desktop_config.json
{
"mcpServers": {
"lockvet": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_TOKEN",
"-e",
"GITLAB_TOKEN",
"-e",
"BITBUCKET_TOKEN",
"-e",
"GITEA_TOKEN",
"-e",
"AZURE_DEVOPS_TOKEN",
"ghcr.io/matteo-sung/lockvet:0.6.20"
],
"env": {
"GITHUB_TOKEN": "<GITHUB_TOKEN>",
"GITLAB_TOKEN": "<GITLAB_TOKEN>",
"BITBUCKET_TOKEN": "<BITBUCKET_TOKEN>",
"GITEA_TOKEN": "<GITEA_TOKEN>",
"AZURE_DEVOPS_TOKEN": "<AZURE_DEVOPS_TOKEN>"
}
}
}
}.trae/mcp.json
{
"mcpServers": {
"lockvet": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"GITHUB_TOKEN",
"-e",
"GITLAB_TOKEN",
"-e",
"BITBUCKET_TOKEN",
"-e",
"GITEA_TOKEN",
"-e",
"AZURE_DEVOPS_TOKEN",
"ghcr.io/matteo-sung/lockvet:0.6.20"
],
"env": {
"GITHUB_TOKEN": "<GITHUB_TOKEN>",
"GITLAB_TOKEN": "<GITLAB_TOKEN>",
"BITBUCKET_TOKEN": "<BITBUCKET_TOKEN>",
"GITEA_TOKEN": "<GITEA_TOKEN>",
"AZURE_DEVOPS_TOKEN": "<AZURE_DEVOPS_TOKEN>"
}
}
}
}Environment variables
GITHUB_TOKENGITLAB_TOKENBITBUCKET_TOKENGITEA_TOKENAZURE_DEVOPS_TOKEN
Replace the placeholders with your own credentials and keep them out of version control.