mcpField
A
aris-kg

aris-kg

Local
youraris.comSecurity0Updated 6d ago

About aris-kg

aris-kg connects coding agents and developers to a daily refreshed knowledge graph with security advisories, CVEs, framework releases and reference code. It offers an MCP server, a lockfile-auditing CLI and a GitHub Action for dependency checks.

Key features

  1. 01Dependency checks against known CVEs
  2. 02Search for CVEs and security advisories
  3. 03Current framework knowledge and mitigations
  4. 04Reference code search
  5. 05Lockfile audit CLI
  6. 06GitHub Action for vulnerable dependencies

Use cases

  1. 01Check pinned dependencies for vulnerabilities
  2. 02Look up a CVE or advisory while coding
  3. 03Find current framework versions and setup guidance
  4. 04Fail pull requests that add vulnerable packages

MCP support

The MCP server exposes five tools for dependency checks and searches across CVEs, knowledge, code and the web. Coding agents can use them before adding dependencies or writing security-sensitive code.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"kennysarnoski-jarvis-aris-kg": {
"command": "npx",
"args": [
"-y",
"aris-kg"
],
"env": {
"ARIS_API_KEY": "<ARIS_API_KEY>"
}
}
}
}
Run commandnpx -y aris-kg
Environment variables to set
ARIS_API_KEYSecretYour API key from youraris.com/account. Calls are billed to your Aris credits.

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmaris-kg0.2.0

Tools

5

Saved tool list · updated 6d ago

ParameterTypeRequiredDescription
limitintegerNoDefault 10.
querystringYes

Details

From the project README

aris-kg

Coding agents answer from training data that stops months before you use them. aris-kg connects them to the Aris knowledge graph instead: more than 15 million concepts, refreshed daily from NVD, OSV, GitHub security advisories, MITRE ATT&CK, OWASP and framework releases.

It comes three ways:

  • An MCP server for Claude Code, Cursor, Codex, Windsurf and any other MCP client.
  • A CLI that checks every pinned version in your lockfiles against known CVEs.
  • A GitHub Action that fails a pull request when it adds a vulnerable dependency.

The code is open source (MIT). The graph is a paid API: you need a key from youraris.com/account, and each call is billed to your Aris credits.

CallPrice
CVE, knowledge or code search1¢
Dependency check1¢ per package
Web search2¢

Every account is limited to 120 calls a minute.

MCP server

The server gives your agent five tools, and tells it to use them without being asked: before adding a dependency, for any CVE, when picking a library version, and before writing auth, crypto, SQL or file-path code.

ToolWhat it does
aris_check_dependenciesChecks exact package versions: CVE ids, severity, CVSS, affected and fixed versions, and whether a CVE is exploited in the wild
aris_search_cveFinds CVEs and GitHub advisories by id or description
aris_search_knowledgeCurrent major versions and setup patterns, attack techniques, mitigations and known pitfalls
aris_search_codeReference code from published packages
aris_web_searchAnything newer than the graph, with source URLs
Claude Code
claude mcp add aris -e ARIS_API_KEY=your-key -- npx -y aris-kg mcp
Cursor, Windsurf and other JSON-configured clients
{
  "mcpServers": {
    "aris": {
      "command": "npx",
      "args": ["-y", "aris-kg", "mcp"],
      "env": { "ARIS_API_KEY": "your-key" }
    }
  }
}
Codex

In ~/.codex/config.toml:

[mcp_servers.aris]
command = "npx"
args = ["-y", "aris-kg", "mcp"]
env = { ARIS_API_KEY = "your-key" }

CLI

export ARIS_API_KEY=your-key

npx aris-kg audit                   # lockfiles in the current folder
npx aris-kg audit ./service --fail-on critical
npx aris-kg audit --json > report.json
npx aris-kg search cve CVE-2024-3094

audit reads these lockfiles. It only checks exact versions, so use a lockfile rather than a manifest with ranges.

EcosystemLockfiles
npmpackage-lock.json, pnpm-lock.yaml, yarn.lock
Pythonpoetry.lock, uv.lock, Pipfile.lock, requirements.txt (pinned == lines)
RustCargo.lock
Gogo.mod
Java and Kotlin (Maven)gradle.lockfile
RubyGemfile.lock
PHPcomposer.lock
.NETpackages.lock.json
Elixirmix.lock
Dart and Flutterpubspec.lock
SwiftPackage.resolved

aris_check_dependencies and the API take any of these ecosystems: npm, pypi, crates, go, maven, rubygems, packagist, nuget, hex, pub and swift. The graph also covers OSV's Hackage, CRAN, ConanCenter, Linux kernel and GitHub Actions advisories, searchable with aris_search_cve.

It exits with 1 when a vulnerability is at or above --fail-on (default high), or is exploited in the wild at any severity. --fail-on none never fails. Errors exit with 2.

GitHub Action

name: Dependency audit
on: [pull_request]
jobs:
  aris:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: kennysarnoski-jarvis/aris-kg@v0
        with:
          api-key: ${{ secrets.ARIS_API_KEY }}
          fail-on: high

As a library

import { ArisClient } from "aris-kg";

const aris = new ArisClient({ apiKey: process.env.ARIS_API_KEY! });
const report = await aris.checkDependencies([{ name: "lodash", version: "4.17.20", ecosystem: "npm" }]);

Development

npm install
npm test
npm run build
node dist/bin.js --help

Set ARIS_BASE_URL to point the client at another server.

License

MIT

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.