Devici

Provides MCP endpoints to manage users, collections, threat models, components, threats, mitigations, teams, dashboard data, audits, and Codex data via the Devici API.
  • python

4

GitHub Stars

python

Language

6 months ago

First Indexed

2 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "sdelements-devici-mcp": {
      "command": "uvx",
      "args": [
        "git+https://github.com/geoffwhittington/devici-mcp.git"
      ],
      "env": {
        "DEVICI_CLIENT_ID": "your-client-id-here",
        "DEVICI_API_BASE_URL": "https://api.devici.com/v1",
        "DEVICI_CLIENT_SECRET": "your-client-secret-here"
      }
    }
  }
}

You run the Devici MCP Server to access a rich set of model context tools that integrate with the Devici API. This server exposes endpoints and MCP-compatible commands to manage users, collections, threat models, components, threats, mitigations, teams, dashboard data, audits, and Codex data, enabling you to build powerful AI-assisted workflows with secure, scalable access to your Devici data.

How to use

Connect with the MCP through an MCP client that supports the Model Context Protocol. You can run the server locally and point your client at the available endpoints, then issue tool calls that map to Devici data operations such as listing users, creating threat models, or fetching dashboard data. Use the client’s standard commands to start, authenticate, and send queries against the MCP server. All actions are designed to be performed by your MCP client in your chosen environment, following the authentication method shown here.

Practical usage patterns include: authenticate with your Devici credentials, browse and manage users and teams, create or inspect threat models and mitigations, query dashboard and report data, and pull Codex attributes, mitigations, and threats for advanced analysis. You can also search by fields, paginate results, and invite new users as needed.

How to install

Prerequisites you need before installing the MCP server: Python 3.10 or higher and uv installed.

Step 1: Install the MCP client tooling (example shown using uvx or pip-based commands as provided in guidance).

# From GitHub using uvx (recommended for local development)
uvx git+https://github.com/geoffwhittington/devici-mcp.git

# From PyPI (future option)
uvx devici-mcp-server

Configuration and startup

Configure the server by providing your Devici API credentials and base URL. The environment variables you need are shown below. You will use these values when starting the server to authenticate against the Devici API.

export DEVICI_API_BASE_URL="https://api.devici.com/v1"
export DEVICI_CLIENT_ID="your-client-id-here"
export DEVICI_CLIENT_SECRET="your-client-secret-here"
# Alternative using a .env file in your working directory
DEVICI_API_BASE_URL=https://api.devici.com/v1
DEVICI_CLIENT_ID=your-client-id-here
DEVICI_CLIENT_SECRET=your-client-secret-here

Starting in development mode

In development mode, start the MCP server using the following command pattern. This will launch the server so you can begin issuing MCP calls against your Devici data.

uv run python -m devici_mcp_server

Available tools

list_users

Retrieve a paginated list of users in your Devici account.

get_user

Fetch details for a specific user by ID.

search_users

Search users by a field and text.

invite_user

Invite a new user to your Devici workspace.

list_collections

Retrieve collections with pagination.

get_collection

Get a specific collection by ID.

create_collection

Create a new collection.

list_threat_models

Get all threat models with pagination.

get_threat_model

Get a threat model by ID.

get_threat_models_by_collection

Get threat models by collection ID.

create_threat_model

Create a new threat model.

list_components

Get components with pagination.

get_component

Get a specific component by ID.

get_components_by_canvas

Get components by canvas.

create_component

Create a new component.

list_threats

Get threats with pagination.

get_threat

Get a specific threat by ID.

get_threats_by_component

Get threats by component.

create_threat

Create a new threat.

list_mitigations

Get mitigations with pagination.

get_mitigation

Get a specific mitigation by ID.

get_mitigations_by_threat

Get mitigations by threat.

create_mitigation

Create a new mitigation.

list_teams

Get teams with pagination.

get_team

Get a specific team by ID.

get_team_users

Get users in a team.

create_team

Create a new team.

get_dashboard_data

Get dashboard data.

get_report_data

Get report data.

get_threat_model_stats

Get threat model statistics.

get_comments

Get comments with pagination.

get_comment

Get a specific comment by ID.

get_audit_logs

Get audit logs.

get_codex_attributes

Get codex attributes.

get_codex_mitigations

Get codex mitigations.

get_codex_threats

Get codex threats.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational