mcpField
V
Vigía

Vigía

Remote
vigia.coredls.cloudDeveloper Tools1Updated 6d ago

About Vigía

Vigía is an open data service and MCP server for developers and coding agents that need current package and software lifecycle facts. It reports upgrade impact, API status, compatibility, vulnerabilities, and end-of-life information, with verification dates and sources.

Key features

  1. 01Analyze package upgrade impact
  2. 02Check API symbols and signatures
  3. 03Find versions compatible with runtimes
  4. 04Check version vulnerabilities and status
  5. 05Report product end-of-life dates
  6. 06Inspect dependency manifests

Use cases

  1. 01Assess breaking changes before upgrading
  2. 02Verify an API exists in a package version
  3. 03Find a dependency version compatible with a runtime
  4. 04Check project dependencies for vulnerabilities or outdated packages

MCP support

Vigía exposes package, version, compatibility, upgrade, dependency-check, and end-of-life tools to MCP clients. Responses include verification timing and data sources.

Configuration

Remote servers need no local install. Pick your client, then copy the config or install in one click.

Endpointhttps://vigia.coredls.cloud/mcp
Copy install command
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.

Tools

12
ParameterTypeRequiredDescription
namestringYesExact package name as published (case-insensitive), e.g. "next", "@types/node" (npm scopes allowed), "requests", "serde", "laravel/framework". Partial names are not accepted; use find_package when unsure
ecosystemenumYesRegistry to query: "npm" (JavaScript/TypeScript), "pypi" (Python), "crates" (Rust, crates.io) or "packagist" (PHP, Composer; names have the form "vendor/package")npm | pypi | crates | packagist

Details

From the project README

Vigia — what breaks when you upgrade, before your agent writes the code

Vigia is a free, open data service (REST API + MCP server) that gives AI coding agents and developers verified, dated facts about the state of npm, PyPI and Rust (crates.io) packages — the things language models get wrong because their training data is out of date.

🌐 https://vigia.coredls.cloud · MCP: https://vigia.coredls.cloud/mcp · Registry: cloud.coredls.vigia/vigia

claude mcp add --transport http vigia https://vigia.coredls.cloud/mcp

Or install it as a Claude Code plugin, which bundles the MCP server and a skill that tells the agent when to use it:

/plugin marketplace add MatiasDelosSantos/vigia
/plugin install vigia@vigia

Other agents can use the skill directly: skills/vigia/SKILL.md (also served at https://vigia.coredls.cloud/skill.md).

One-click install: Cursor · VS Code

Why

Models freeze at their training cutoff; ecosystems ship thousands of releases a day. Agents confidently write code against APIs that changed. Example — Next.js 14 → 15, detected automatically from the packages' TypeScript types:

GET /v1/packages/npm/next/upgrade?from=14&to=15

next/headers · cookies   (): ReadonlyRequestCookies   →   (): Promise<ReadonlyRequestCookies>
next/headers · headers   (): ReadonlyHeaders          →   (): Promise<ReadonlyHeaders>
+ new module: next/form
summary: 4 removed exports · 10 changed signatures · 16 changed/removed members · 5 new deprecations

What it answers (that nothing else does in one call)

QuestionRESTMCP tool
What breaks if I upgrade X from A to B? Removed exports and import paths, changed signatures and class members, new @deprecated, engines/peerDependencies changes, changelog in betweenGET /v1/packages/npm/{name}/upgrade?from=14&to=15upgrade_impact
Does this API exist in this version? Exact signature, import path, deprecation message, "did you mean"GET /v1/packages/npm/{name}/symbols/{symbol}?version=15symbol_status
Newest version that works with Node 18 / React 18 / Python 3.8? Uses the requirements declared by each versionGET /v1/packages/{npm|pypi}/{name}/compatible?with=node@18,react@18find_compatible_version
Is my exact version vulnerable? Nearest fixed version? (OSV)GET /v1/packages/{eco}/{name}/versions/{version}version_status
Latest version, deprecation, runtime requirements, peers, licenseGET /v1/packages/{eco}/{name}package_status
Check a whole package.json / requirements.txtPOST /v1/checkcheck_dependencies
Is this Python / Node / PHP / Java / Django / Ubuntu... version still supported? When does it reach end of life? (~480 products)GET /v1/eol/{product}/{version}eol_status
What changed since my training cutoff? New major versions, runtime releases and AI models after a dateGET /v1/since?cutoff=2025-06changes_since_cutoff
AI model prices, context windows, retirement datesGET /v1/modelsmodel_status

Every response includes when it was verified and where the data came from. Full spec: /openapi.json · Docs in 18 languages: /docs.

Project context for agents (no MCP needed)

Agents read AGENTS.md / CLAUDE.md by themselves. Generate a block with the facts about your dependencies (end-of-life runtimes, vulnerabilities, deprecated packages, what breaks in the major versions you are behind on):

  • Web: https://vigia.coredls.cloud/context (paste your package.json or requirements.txt)
  • Script (zero dependencies, Node 18+; read it first): curl -fsSL https://vigia.coredls.cloud/context.mjs -o vigia-context.mjs && node vigia-context.mjs
  • API: POST /v1/context

Claude Code: automatic. The plugin includes hooks that give the agent these facts at session start and re-check whenever it edits package.json or requirements.txt (so it learns that Node 18 is end of life, or that lodash has known vulnerabilities, without calling any tool). The manifest is sent to Vigia and not stored; set VIGIA_DISABLE=1 to turn the hooks off. Without the plugin, copy examples/claude-code-settings.json into .claude/settings.json and point it at hooks/vigia-hook.mjs.

Per-month pages of what changed after a training cutoff: https://vigia.coredls.cloud/since

GitHub Action

Flags outdated, deprecated and vulnerable dependencies on every pull request:

name: dependencies
on: pull_request
permissions:
  contents: read
  pull-requests: write
jobs:
  vigia:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: MatiasDelosSantos/vigia@v1
        with:
          fail-on: vulnerable                        # optional: vulnerable, deprecated, major, outdated
          github-token: ${{ secrets.GITHUB_TOKEN }}  # optional: comment on the PR

Badges

[![version](https://vigia.coredls.cloud/badge/npm/react/version.svg)](https://vigia.coredls.cloud/npm/react)
[![maintained](https://vigia.coredls.cloud/badge/npm/react/maintained.svg)](https://vigia.coredls.cloud/npm/react)

How it works

  • Registries are the source of truth. npm, PyPI and crates.io metadata with ETags, publish dates and per-version requirements (engines, Requires-Python, rust-version); deps.dev for npm history; OSV for vulnerabilities; OpenRouter for AI models.
  • API surface analysis never executes package code. Tarballs are downloaded, only .d.ts, package.json and changelogs are extracted, and the TypeScript compiler API reads the exported declarations in an isolated worker thread with memory and time limits. Packages without bundled types fall back to @types/*.
  • Facts are never overwritten. Each change closes the previous value (bitemporal history), so ?as_of= can answer "what did Vigia say on date X".
  • Self-updating. A worker tracks ~34,000 popular packages (npm every 15 min–2 h; PyPI via its update feed; the top 3,000 Rust crates from crates.io), resolves unknown packages on first request, and pre-computes upgrade reports for the 300 most popular npm packages.

Stack: TypeScript, Node 22, Hono, PostgreSQL 17, MCP SDK, Docker.

Run it yourself

cp .env.example .env          # set POSTGRES_PASSWORD and PUBLIC_URL
docker compose up -d          # vigia-db, vigia-api (:3005), vigia-worker
npm install && npm test       # 70 unit tests

Data license & privacy

Vigia's compiled data is CC-BY-4.0 (attribute "Vigia"); upstream data keeps each source's terms. Manifests sent to /v1/check are not stored; no cookies or trackers. See terms and privacy.

License

Code: AGPL-3.0. Operations notes (Spanish): docs/OPERACION.es.md.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.