# clavis

**Category:** 📊 Monitoring  
**Repository:** https://github.com/KN0WBOT/clavis-mcp  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/clavis

## Description
Encrypted credential vault for AI agents — auto OAuth refresh, rate limiting, audit logging.

## Claude Desktop Quick Installation
Heuristic fallback — verify the package name and runner against the repository README before running it. Uses `npx` (confidence: low):

```json
"mcpServers": {
  "clavis": {
    "command": "npx",
    "args": ["-y","clavis"]
  }
}
```

## Documentation & README

# Clavis MCP Server

Secure credential management for Claude Desktop and MCP servers.

## Features

- 🔐 Encrypted credential storage (AES-128-CBC + HMAC-SHA256, via Fernet)
- 🛡️ Server-side credential injection — the raw key never enters the conversation
- 🔄 Automatic OAuth token refresh
- 📡 Thin forwarding layer — rate limiting, audit logging, and usage tracking are all handled by the Clavis server

## Installation

```bash
npx @clavisagent/mcp-server
```

Or install globally:

```bash
npm install -g @clavisagent/mcp-server
```

## Usage with Claude Desktop

Add the following to your Claude Desktop configuration file (`claude_desktop_config.json`):

```json
{
  "mcpServers": {
    "clavis": {
      "command": "npx",
      "args": ["-y", "@clavisagent/mcp-server"],
      "env": {
        "CLAVIS_API_KEY": "eyJ..."
      }
    }
  }
}
```

## Usage with Claude Code

```bash
claude mcp add clavis -- npx -y @clavisagent/mcp-server
```

## Configuration

| Variable | Required | Default | Description |
|---|---|---|---|
| `CLAVIS_API_KEY` | yes | — | Your Clavis JWT, from `POST /v1/auth/login`. Not the `cla_…` key shown at sign-up. |
| `CLAVIS_API_URL` | no | `https://clavisagent.com` | Base URL of your Clavis instance. Set this for self-hosted deployments. |

## Available Tools

| Tool | Description |
|---|---|
| `call_service` | **Recommended.** Make an API call with server-side credential injection — the credential is injected into the upstream request server-side, so the raw key never enters the conversation. |
| `get_credentials` | Legacy. Returns the raw access token or API key for a named service. Prefer `call_service`. |
| `list_services` | List all services with stored credentials |
| `check_credential_status` | Check the status and expiry of credentials for a service |

### Security note

Prefer `call_service` over `get_credentials`. `call_service` keeps the secret
server-side, so a prompt injection has no credential in context to exfiltrate.
`get_credentials` places the raw key in the conversation and exists only for
callers that must hold the token themselves.

## License

MIT

