- Home
- MCP servers
- Devici
Devici
- 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.