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.13.tar.gz (22.2 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.13-py3-none-any.whl (39.1 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for vijil_mcp-0.1.13.tar.gz
Algorithm Hash digest
SHA256 130fdca008c26acff70e8b8311bf35599dcd707ba34db3b8d5ade685bfe8c874
MD5 9fe12d090dae03fbfd00578388d6ed63
BLAKE2b-256 bff631b09063383ca51814fdcee11ef2e3b5eecc47c085fcc3d3797118f2107a

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for vijil_mcp-0.1.13-py3-none-any.whl
Algorithm Hash digest
SHA256 dbf3d1e547dc50d0573c9655c9812bda1c0d16e6d94b9464d1b18a4c0db48a62
MD5 9f21493da993a16477aca37bcfaa66e2
BLAKE2b-256 18b5e11db51a885279894d6c7651373885699b0865d160f895f3df3c5c9f05e4

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