MCP server for Cisco Duo's identity/MFA administration API.
Connect Runs on your machine
claude mcp add cisco-duo-mcp -e DUO_IKEY=<DUO_IKEY> -e DUO_SKEY=<DUO_SKEY> -e DUO_API_HOST=<DUO_API_HOST> -e MCP_TRANSPORT=<MCP_TRANSPORT> -e AUTH_MODE=<AUTH_MODE> -e LOG_LEVEL=<LOG_LEVEL> -- docker run -i --rm ghcr.io/wyre-ai/cisco-duo-mcp:v1.0.1
{
"mcpServers": {
"cisco-duo-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-ai/cisco-duo-mcp:v1.0.1"
],
"env": {
"DUO_IKEY": "<DUO_IKEY>",
"DUO_SKEY": "<DUO_SKEY>",
"DUO_API_HOST": "<DUO_API_HOST>",
"MCP_TRANSPORT": "<MCP_TRANSPORT>",
"AUTH_MODE": "<AUTH_MODE>",
"LOG_LEVEL": "<LOG_LEVEL>"
}
}
}
}
{
"mcpServers": {
"cisco-duo-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-ai/cisco-duo-mcp:v1.0.1"
],
"env": {
"DUO_IKEY": "<DUO_IKEY>",
"DUO_SKEY": "<DUO_SKEY>",
"DUO_API_HOST": "<DUO_API_HOST>",
"MCP_TRANSPORT": "<MCP_TRANSPORT>",
"AUTH_MODE": "<AUTH_MODE>",
"LOG_LEVEL": "<LOG_LEVEL>"
}
}
}
}
{
"servers": {
"cisco-duo-mcp": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wyre-ai/cisco-duo-mcp:v1.0.1"
],
"env": {
"DUO_IKEY": "<DUO_IKEY>",
"DUO_SKEY": "<DUO_SKEY>",
"DUO_API_HOST": "<DUO_API_HOST>",
"MCP_TRANSPORT": "<MCP_TRANSPORT>",
"AUTH_MODE": "<AUTH_MODE>",
"LOG_LEVEL": "<LOG_LEVEL>"
}
}
}
}
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools
This server runs locally, so its tools are listed by your MCP client once it starts.
Environment variables
| Name | Description |
|---|---|
DUO_IKEYRequired | Duo integration key (Basic-auth username for the v5 signed-request scheme). Not secret on its own, but paired with DUO_SKEY it authenticates as this integration. |
DUO_SKEYRequired, secret | Duo secret key - HMAC-SHA512 signing key for every request. Bearer-equivalent for this integration's admin scope. |
DUO_API_HOSTRequired | This account's Duo API hostname, e.g. api-xxxxxxxx.duosecurity.com. |
MCP_TRANSPORTOptional | Transport mode for the server. Set to 'stdio' for local CLI use; the image defaults to 'http' for gateway hosting. |
AUTH_MODEOptional | Credential source: 'env' reads vars locally, 'gateway' expects header injection from the WYRE MCP Gateway. |
LOG_LEVELOptional | Log verbosity: debug, info, warn, error |
Details
| Package | ghcr.io/wyre-ai/cisco-duo-mcp:v1.0.1 (OCI, stdio) |
| First published | 3 Nov 2026 |
| Last updated | 3 Nov 2026 |
| Registry name | io.github.WYRE-AI/cisco-duo-mcp |
More security servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
