Skip to main content

MCP server for the Vijil AI trust platform CLI

Project description

vijil-mcp

MCP (Model Context Protocol) server for the Vijil AI trust platform. Lets Claude Code interact with Vijil Console APIs through typed tools — using the CLI under the hood.

How it works

Claude Code  ←── stdio ──→  vijil-mcp (local process)  ─── vijil CLI ──→  Vijil Console API

The MCP server is a local process on your machine — not a deployed server. Claude Code spawns it as a subprocess, discovers its tools automatically, and calls them during conversations. Each tool runs a vijil CLI command and returns JSON output.

Prerequisites

  • Python 3.10+
  • A Vijil Console account with API access
  • Claude Code (CLI, desktop app, or VS Code extension)

Install

pip install vijil-mcp
# or isolated:
pipx install vijil-mcp

This automatically installs vijil-console (the CLI) as a dependency.

Connecting to a deployed environment

The MCP server uses the CLI for all API communication. Configure the CLI once and the MCP server inherits the connection.

1. Find your Console API URL

If you have kubectl access to the EKS cluster:

kubectl get svc vijil-console-nginx -n vijil-console \
  -o jsonpath='{.status.loadBalancer.ingress[0].hostname}'

This gives you the raw ELB hostname. If a DNS record exists (e.g., console-api.dev05.vijil.ai), use that instead.

2. Initialize the CLI

vijil auth init --url https://console-api.example.com

Or run vijil auth init without arguments to be prompted for the URL. The CLI verifies connectivity before saving.

3. Authenticate

vijil auth login

You will be prompted for your email and password. If you belong to multiple teams, select one:

vijil team list
vijil team use <team_id>

4. Add MCP config

Create a .mcp.json file in your project root:

{
  "mcpServers": {
    "vijil": {
      "type": "stdio",
      "command": "vijil-mcp"
    }
  }
}

Alternative locations:

  • Project-level (shared via git): .mcp.json in project root
  • User-level (all projects): ~/.claude.json
  • Local-only (not committed): .claude/mcp.json in project root

5. Use with Claude Code

Start Claude Code in a directory with .mcp.json. The Vijil tools appear automatically. Ask Claude things like:

  • "List my agents"
  • "Run a safety evaluation on agent X"
  • "Show the latest evaluation results"
  • "Create a red team campaign against my agent"
  • "What's on my trust dashboard?"

Available tools

All CLI commands are exposed as MCP tools (116 total). Tool names follow the pattern {group}_{command}:

Group Example tools Description
agent agent_list, agent_create, agent_get, agent_update, agent_import Manage AI agents
eval eval_run, eval_status, eval_list, eval_results_detail, eval_report Run and manage evaluations
harness harness_list, harness_custom_create, harness_custom_list Manage test harnesses
dome dome_config_list, dome_config_create, dome_detect Guardrail configuration and detection
redteam redteam_run, redteam_list, redteam_results, redteam_tools Red team attack campaigns
persona persona_list, persona_create, persona_from_preset Manage test personas
policy policy_list, policy_create, policy_activate, policy_add_rule Compliance policies and rules
telemetry telemetry_logs, telemetry_traces, telemetry_metric_total Query observability data
evolution evolution_run, evolution_status Darwin evolution engine
proposal proposal_list, proposal_approve, proposal_reject Manage mutation proposals
genome genome_list, genome_get, genome_create, genome_extract Manage agent genomes
demographics demographics_list, demographics_create, demographics_values Demographic dimensions
dimensions dimensions_list, dimensions_create, dimensions_values Evaluation dimensions
dashboard dashboard_show Trust dashboard
team team_list, team_use Switch team context
vijil_status vijil_status Check CLI configuration

Async operations

Some tools support a wait parameter (eval_run, redteam_run, evolution_run). When wait=True, the tool polls until the operation completes (up to 10 minutes).

Configuration

All connection state is managed by the CLI and stored in ~/.vijil/config.yaml:

console_url: https://console-api.example.com
auth_token: eyJhbG...
refresh_token: ...
default_team_id: c58aea71-3861-4f28-b8c4-20832a2f22ee

Token refresh is automatic — if a request returns 401, the CLI attempts a refresh before failing.

Troubleshooting

Error Fix
"vijil CLI not found in PATH" Run pip install vijil-console
"Vijil CLI not configured" Run vijil auth init --url <your-url>
"Session expired" Run vijil auth login
"No team selected" Run vijil team use <team_id>
Tools don't appear in Claude Code Check .mcp.json is in the project root and restart Claude Code

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vijil_mcp-0.1.17.tar.gz (22.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vijil_mcp-0.1.17-py3-none-any.whl (39.3 kB view details)

Uploaded Python 3

File details

Details for the file vijil_mcp-0.1.17.tar.gz.

File metadata

  • Download URL: vijil_mcp-0.1.17.tar.gz
  • Upload date:
  • Size: 22.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.4.0 CPython/3.12.13 Linux/6.17.0-1010-azure

File hashes

Hashes for vijil_mcp-0.1.17.tar.gz
Algorithm Hash digest
SHA256 5197c8987c36e78ccf52bc79d57e694034daaf04b8c268c25ff4d4318936bb93
MD5 9d2ea59b2a99a07594dbd22cb9a6e28f
BLAKE2b-256 536f57a166379247e13ba0bdb66080c1429313668046f6291942a42776a9dcdb

See more details on using hashes here.

File details

Details for the file vijil_mcp-0.1.17-py3-none-any.whl.

File metadata

  • Download URL: vijil_mcp-0.1.17-py3-none-any.whl
  • Upload date:
  • Size: 39.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.4.0 CPython/3.12.13 Linux/6.17.0-1010-azure

File hashes

Hashes for vijil_mcp-0.1.17-py3-none-any.whl
Algorithm Hash digest
SHA256 9cef828f551a978d2498d8b2170a99028b3097ef0268f4336407740df80768db
MD5 216f2ca162bcf1c7c04d86387cc991a5
BLAKE2b-256 757e14373dbfd8fdf3278ebcb315823bc294f4d906aed38adf5b6cff25940296

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page