Devici MCP Server
Manage threat models, components, and security data on the Devici platform.
Devici MCP Server
A Model Context Protocol (MCP) server for interacting with the Devici API. This server provides LLM tools to manage users, collections, threat models, components, threats, mitigations, teams, and dashboard data through the Devici platform.
Features
The Devici MCP Server provides tools for:
User Management
- Get users with pagination
- Get specific user by ID
- Search users by field and text
- Invite new users
Collections Management
- Get collections with pagination
- Get specific collection by ID
- Create new collections
Threat Models Management
- Get all threat models with pagination
- Get threat models by collection
- Get specific threat model by ID
- Create new threat models
Components Management
- Get components with pagination
- Get specific component by ID
- Get components by canvas
- Create new components
Threats Management
- Get threats with pagination
- Get specific threat by ID
- Get threats by component
- Create new threats
Mitigations Management
- Get mitigations with pagination
- Get specific mitigation by ID
- Get mitigations by threat
- Create new mitigations
Teams Management
- Get teams with pagination
- Get specific team by ID
- Get team users
- Create new teams
Dashboard & Reports
- Get dashboard data
- Get report data
- Get threat model statistics
Comments & Audit
- Get comments with pagination
- Get specific comment by ID
- Get audit logs
Codex Integration
- Get codex attributes
- Get codex mitigations
- Get codex threats
Quick Start
Using uvx (recommended)
Option 1: From GitHub (Current)
uvx git+https://github.com/geoffwhittington/devici-mcp.git
Option 2: From PyPI (Future - when published)
uvx devici-mcp-server
Using uv
Install from GitHub
uv pip install git+https://github.com/geoffwhittington/devici-mcp.git
devici-mcp-server
Install from PyPI (when available)
uv pip install devici-mcp-server
devici-mcp-server
Using pip
Install from GitHub
pip install git+https://github.com/geoffwhittington/devici-mcp.git
devici-mcp-server
Install from PyPI (when available)
pip install devici-mcp-server
devici-mcp-server
Configuration
The server requires three environment variables:
DEVICI_API_BASE_URL: Your Devici instance URL (e.g.,https://api.devici.com/v1)DEVICI_CLIENT_ID: Your Devici client IDDEVICI_CLIENT_SECRET: Your Devici client secret
Setting Environment Variables
Option 1: Environment Variables
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"
Option 2: .env File
Create 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
Getting Your API Credentials
- Log into your Devici instance
- Go to Settings > API Access
- Generate a new client ID and secret
- Copy the values for use as
DEVICI_CLIENT_IDandDEVICI_CLIENT_SECRET
MCP Client Configuration
Claude Desktop
Add this to your Claude Desktop configuration file:
Option 1: From GitHub (Current)
{
"mcpServers": {
"devici": {
"command": "uvx",
"args": ["git+https://github.com/geoffwhittington/devici-mcp.git"],
"env": {
"DEVICI_API_BASE_URL": "https://api.devici.com/v1",
"DEVICI_CLIENT_ID": "your-client-id-here",
"DEVICI_CLIENT_SECRET": "your-client-secret-here"
}
}
}
}
Option 2: From PyPI (Future)
{
"mcpServers": {
"devici": {
"command": "uvx",
"args": ["devici-mcp-server"],
"env": {
"DEVICI_API_BASE_URL": "https://api.devici.com/v1",
"DEVICI_CLIENT_ID": "your-client-id-here",
"DEVICI_CLIENT_SECRET": "your-client-secret-here"
}
}
}
}
Cline
Add this to your Cline MCP settings:
From GitHub (Current)
{
"mcpServers": {
"devici": {
"command": "uvx",
"args": ["git+https://github.com/geoffwhittington/devici-mcp.git"],
"env": {
"DEVICI_API_BASE_URL": "https://api.devici.com/v1",
"DEVICI_CLIENT_ID": "your-client-id-here",
"DEVICI_CLIENT_SECRET": "your-client-secret-here"
}
}
}
}
Continue
Add this to your Continue configuration:
From GitHub (Current)
{
"mcpServers": {
"devici": {
"command": "uvx",
"args": ["git+https://github.com/geoffwhittington/devici-mcp.git"],
"env": {
"DEVICI_API_BASE_URL": "https://api.devici.com/api/v1",
"DEVICI_CLIENT_ID": "your-client-id-here",
"DEVICI_CLIENT_SECRET": "your-client-secret-here"
}
}
}
}
Cursor
Add this to your Cursor configuration file:
Option 1: From GitHub (Current)
{
"mcpServers": {
"devici": {
"command": "uvx",
"args": ["git+https://github.com/geoffwhittington/devici-mcp.git"],
"env": {
"DEVICI_API_BASE_URL": "https://api.devici.com/api/v1",
"DEVICI_CLIENT_ID": "your-client-id-here",
"DEVICI_CLIENT_SECRET": "your-client-secret-here"
}
}
}
}
Option 2: Using local installation
If you have the package installed locally:
{
"mcpServers": {
"devici": {
"command": "devici-mcp-server",
"env": {
"DEVICI_API_BASE_URL": "https://api.devici.com/api/v1",
"DEVICI_CLIENT_ID": "your-client-id-here",
"DEVICI_CLIENT_SECRET": "your-client-secret-here"
}
}
}
}
Option 3: Using Python module directly
{
"mcpServers": {
"devici": {
"command": "python",
"args": ["-m", "devici_mcp_server"],
"env": {
"DEVICI_API_BASE_URL": "https://api.devici.com/api/v1",
"DEVICI_CLIENT_ID": "your-client-id-here",
"DEVICI_CLIENT_SECRET": "your-client-secret-here"
}
}
}
}
Development
Prerequisites
- uv installed
- Python 3.10 or higher
Setup
# Clone the repository
git clone <repository-url>
cd devici-mcp
# Create virtual environment and install dependencies
uv sync
# Run in development mode
uv run python -m devici_mcp_server
Testing
# Run the import test
uv run python test_basic.py
# Test with environment variables
DEVICI_API_BASE_URL=https://api.devici.com/api/v1 DEVICI_CLIENT_ID=test DEVICI_CLIENT_SECRET=test uv run python -m devici_mcp_server
Building
# Build the package
uv build
# Install locally for testing
uv pip install dist/*.whl
Features
- Full API Coverage: Supports all major Devici API endpoints
- Authentication: Secure client ID/secret-based authentication
- Error Handling: Comprehensive error handling and validation
- Environment Configuration: Flexible configuration via environment variables
- Modern Python: Built with modern Python packaging (uv, pyproject.toml)
- MCP Compliant: Fully compatible with the Model Context Protocol
API Coverage
This server provides access to:
- Users and Teams
- Collections and Threat Models
- Components and Threats
- Mitigations and Comments
- Dashboard Data and Reports
- Audit Logs and Codex Integration
- Search and Bulk Operations
License
This project is licensed under the MIT License - see the LICENSE file for details.
Contributing
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Support
For issues and questions:
- Check the Issues page
- Review the Devici API documentation
- Ensure your API credentials have proper permissions
Note: This is an unofficial MCP server for Devici. For official Devici support, please contact the Devici team.
Related Servers
Scout Monitoring MCP
sponsorPut performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
sponsorAccess financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
Kubernetes
Kubernetes MCP server with the top30 tools
Feishu OAuth MCP Server
An MCP server with built-in Feishu OAuth authentication, deployable on Cloudflare Workers.
Raygun
Interact with your crash reporting and real using monitoring data on your Raygun account
Language Server
MCP Language Server gives MCP enabled clients access to semantic tools like get definition, references, rename, and diagnostics.
FastMCP-Scala
A Scala 3 library for building Model Context Protocol (MCP) servers.
SVG to PNG MCP Server
A server that converts SVG code to PNG images using the cairosvg library.
Elementor MCP Server
Perform CRUD operations on Elementor page data for a target WordPress website.
Instant Meshes MCP
A 3D model processing server for automatic retopology, simplification, and quality analysis of OBJ/GLB models.
ApostropheCMS
Interact with ApostropheCMS, a Node.js-based content management system, to manage content snippets.
PyAutoGUI Server
An MCP server for PyAutoGUI that enables automated GUI testing and control, including mouse and keyboard actions, screenshots, and screen information.