# Cisco Umbrella (oci · ghcr.io/wyre-ai/cisco-umbrella-mcp:v1.0.0)

MCP server for Cisco Umbrella's deployment, admin, policy, reporting, and investigate APIs.

- Trust score: 37/100 (low)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-09-20

## Components

- oci · `ghcr.io/wyre-ai/cisco-umbrella-mcp:v1.0.0`: 37/100 (this document), [markdown](https://verifymcp.io/servers/wyre-ai-cisco-umbrella-mcp/ghcr-io-wyre-ai-cisco-umbrella-mcp-v1-0-0.md), [page](https://verifymcp.io/servers/wyre-ai-cisco-umbrella-mcp/ghcr-io-wyre-ai-cisco-umbrella-mcp-v1-0-0)

## Channel facts

- Registry: `oci`
- Package: `ghcr.io/wyre-ai/cisco-umbrella-mcp:v1.0.0`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-09-20.

- **Supply Chain Security**: 0/100
  - Malware scan not yet available for this package.
  - Known CVEs could not be checked: this artifact ships no SBOM, so there is no dependency list to read. Publishing one would let us assess it.
  - Install-script risk not yet assessed.
  - Dependency health could not be checked: this artifact ships no SBOM, so there is no dependency list to read. Publishing one would let us assess it.
- **Provenance & Transparency**: 32/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - License check failed: the license (NOASSERTION) isn't a recognized OSI-approved license.
  - Actively maintained (last published 0 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 74/100
  - AI-judged instruction clarity (good).
  - Tool/resource definitions use about 2393 tokens (~77/item across 31 items; 31 tools + 0 resources), lean.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 97/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 92% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 31 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 31 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

**Unverified: 2 categories.** Categories scored 0 because we could not verify them: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

## Install

### How do I install the Cisco Umbrella MCP server?

Cisco Umbrella runs locally as a container image, launched with docker run --rm -i ghcr.io/wyre-ai/cisco-umbrella-mcp:v1.0.0. Ready-made configuration for Claude, Cursor, VS Code, Codex and 3 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add wyre-ai-cisco-umbrella-mcp -- docker run --rm -i ghcr.io/wyre-ai/cisco-umbrella-mcp:v1.0.0
```

### Cursor

```json
{
  "mcpServers": {
    "wyre-ai-cisco-umbrella-mcp": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "ghcr.io/wyre-ai/cisco-umbrella-mcp:v1.0.0"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "wyre-ai-cisco-umbrella-mcp": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "ghcr.io/wyre-ai/cisco-umbrella-mcp:v1.0.0"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add wyre-ai-cisco-umbrella-mcp -- docker run --rm -i ghcr.io/wyre-ai/cisco-umbrella-mcp:v1.0.0
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "wyre-ai-cisco-umbrella-mcp": {
      "type": "local",
      "command": [
        "docker",
        "run",
        "--rm",
        "-i",
        "ghcr.io/wyre-ai/cisco-umbrella-mcp:v1.0.0"
      ],
      "enabled": true
    }
  }
}
```

### Hermes

```yaml
mcp_servers:
  wyre-ai-cisco-umbrella-mcp:
    command: "docker"
    args: ["run", "--rm", "-i", "ghcr.io/wyre-ai/cisco-umbrella-mcp:v1.0.0"]
```

### Netclaw

```json
{
  "McpServers": {
    "wyre-ai-cisco-umbrella-mcp": {
      "Transport": "stdio",
      "Command": "docker",
      "Arguments": [
        "run",
        "--rm",
        "-i",
        "ghcr.io/wyre-ai/cisco-umbrella-mcp:v1.0.0"
      ]
    }
  }
}
```

### Other

```json
{
  "mcpServers": {
    "wyre-ai-cisco-umbrella-mcp": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "ghcr.io/wyre-ai/cisco-umbrella-mcp:v1.0.0"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-09-20 (score 37)

First indexed and scored.

## MCP tools (31)

### `umbrella_list_networks` (~100 tokens)

List Cisco Umbrella networks (public IP identities) registered to this organization.

Input parameters:

- `additionalParams` (object): Escape hatch for any documented Cisco Reports/Investigate query parameter not modeled explicitly above (e.g. categories, identityids, verdict, domains), passed through verbatim as query string key/va…
- `limit` (number): Maximum number of records to return.
- `offset` (number): Number of records to skip, for paging.

### `umbrella_list_internal_networks` (~100 tokens)

List internal (RFC1918) networks registered for internal-network identities.

Input parameters:

- `additionalParams` (object): Escape hatch for any documented Cisco Reports/Investigate query parameter not modeled explicitly above (e.g. categories, identityids, verdict, domains), passed through verbatim as query string key/va…
- `limit` (number): Maximum number of records to return.
- `offset` (number): Number of records to skip, for paging.

### `umbrella_list_sites` (~98 tokens)

List Umbrella sites (logical groupings of virtual appliances/internal networks).

Input parameters:

- `additionalParams` (object): Escape hatch for any documented Cisco Reports/Investigate query parameter not modeled explicitly above (e.g. categories, identityids, verdict, domains), passed through verbatim as query string key/va…
- `limit` (number): Maximum number of records to return.
- `offset` (number): Number of records to skip, for paging.

### `umbrella_list_virtual_appliances` (~103 tokens)

List all Umbrella virtual appliances (on-prem DNS forwarders) and their status.

Input parameters:

- `additionalParams` (object): Escape hatch for any documented Cisco Reports/Investigate query parameter not modeled explicitly above (e.g. categories, identityids, verdict, domains), passed through verbatim as query string key/va…
- `limit` (number): Maximum number of records to return.
- `offset` (number): Number of records to skip, for paging.

### `umbrella_list_roaming_computers` (~100 tokens)

List all roaming computers enrolled via the Umbrella roaming client.

Input parameters:

- `additionalParams` (object): Escape hatch for any documented Cisco Reports/Investigate query parameter not modeled explicitly above (e.g. categories, identityids, verdict, domains), passed through verbatim as query string key/va…
- `limit` (number): Maximum number of records to return.
- `offset` (number): Number of records to skip, for paging.

### `umbrella_get_internal_domains` (~97 tokens)

Get all internal domains configured to bypass Umbrella DNS resolution.

Input parameters:

- `additionalParams` (object): Escape hatch for any documented Cisco Reports/Investigate query parameter not modeled explicitly above (e.g. categories, identityids, verdict, domains), passed through verbatim as query string key/va…
- `limit` (number): Maximum number of records to return.
- `offset` (number): Number of records to skip, for paging.

### `umbrella_list_roles` (~20 tokens)

List all administrative roles available in this Umbrella organization.

### `umbrella_list_users` (~95 tokens)

List all admin console users for this Umbrella organization.

Input parameters:

- `additionalParams` (object): Escape hatch for any documented Cisco Reports/Investigate query parameter not modeled explicitly above (e.g. categories, identityids, verdict, domains), passed through verbatim as query string key/va…
- `limit` (number): Maximum number of records to return.
- `offset` (number): Number of records to skip, for paging.

### `umbrella_get_user` (~33 tokens)

Get a specific Umbrella admin console user by user ID.

Input parameters:

- `userId` (string, required): Umbrella user ID.

### `umbrella_list_api_keys` (~21 tokens)

List all API keys configured for this Umbrella organization.

### `umbrella_list_destination_lists` (~101 tokens)

List all destination lists (allow/block lists) configured for this Umbrella organization.

Input parameters:

- `additionalParams` (object): Escape hatch for any documented Cisco Reports/Investigate query parameter not modeled explicitly above (e.g. categories, identityids, verdict, domains), passed through verbatim as query string key/va…
- `limit` (number): Maximum number of records to return.
- `offset` (number): Number of records to skip, for paging.

### `umbrella_list_destinations` (~116 tokens)

List the destinations (domains/URLs/IPs) contained in a specific destination list.

Input parameters:

- `additionalParams` (object): Escape hatch for any documented Cisco Reports/Investigate query parameter not modeled explicitly above (e.g. categories, identityids, verdict, domains), passed through verbatim as query string key/va…
- `destinationListId` (string, required): ID of the destination list.
- `limit` (number): Maximum number of records to return.
- `offset` (number): Number of records to skip, for paging.

### `umbrella_top_destinations` (~153 tokens)

Report of the most-requested destinations (domains) over a time range, optionally broken down by traffic type.

Input parameters:

- `additionalParams` (object): Escape hatch for any documented Cisco Reports/Investigate query parameter not modeled explicitly above (e.g. categories, identityids, verdict, domains), passed through verbatim as query string key/va…
- `from` (number, required): Range start, epoch milliseconds.
- `limit` (number): Maximum number of records to return.
- `offset` (number): Number of records to skip, for paging.
- `to` (number, required): Range end, epoch milliseconds.
- `trafficType` (string): Optional traffic-type breakdown. Omit for the all-traffic-types view.

### `umbrella_total_requests` (~150 tokens)

Total DNS/proxy/firewall request counts over a time range, optionally broken down by traffic type.

Input parameters:

- `additionalParams` (object): Escape hatch for any documented Cisco Reports/Investigate query parameter not modeled explicitly above (e.g. categories, identityids, verdict, domains), passed through verbatim as query string key/va…
- `from` (number, required): Range start, epoch milliseconds.
- `limit` (number): Maximum number of records to return.
- `offset` (number): Number of records to skip, for paging.
- `to` (number, required): Range end, epoch milliseconds.
- `trafficType` (string): Optional traffic-type breakdown. Omit for the all-traffic-types view.

### `umbrella_top_categories` (~122 tokens)

Report of the most-requested content/security categories over a time range.

Input parameters:

- `additionalParams` (object): Escape hatch for any documented Cisco Reports/Investigate query parameter not modeled explicitly above (e.g. categories, identityids, verdict, domains), passed through verbatim as query string key/va…
- `from` (number, required): Range start, epoch milliseconds.
- `limit` (number): Maximum number of records to return.
- `offset` (number): Number of records to skip, for paging.
- `to` (number, required): Range end, epoch milliseconds.

### `umbrella_activity` (~148 tokens)

Raw activity (request-level) log over a time range, optionally broken down by traffic type.

Input parameters:

- `additionalParams` (object): Escape hatch for any documented Cisco Reports/Investigate query parameter not modeled explicitly above (e.g. categories, identityids, verdict, domains), passed through verbatim as query string key/va…
- `from` (number, required): Range start, epoch milliseconds.
- `limit` (number): Maximum number of records to return.
- `offset` (number): Number of records to skip, for paging.
- `to` (number, required): Range end, epoch milliseconds.
- `trafficType` (string): Optional traffic-type breakdown. Omit for the all-traffic-types view.

### `umbrella_identities` (~155 tokens)

List identities (roaming computers, networks, mobile devices, AD users) with traffic summaries, filtered by one or more identity types.

Input parameters:

- `additionalParams` (object): Escape hatch for any documented Cisco Reports/Investigate query parameter not modeled explicitly above (e.g. categories, identityids, verdict, domains), passed through verbatim as query string key/va…
- `identityTypes` (array, required): Identity type(s) to filter by, e.g. ['roaming'], ['network'], ['mobile_device','android'], ['directory_user'] - per Cisco's documented identitytypes values.
- `limit` (number): Maximum number of records to return.
- `offset` (number): Number of records to skip, for paging.

### `umbrella_appdiscovery_applications` (~99 tokens)

List cloud applications discovered in this organization's traffic (App Discovery).

Input parameters:

- `additionalParams` (object): Escape hatch for any documented Cisco Reports/Investigate query parameter not modeled explicitly above (e.g. categories, identityids, verdict, domains), passed through verbatim as query string key/va…
- `limit` (number): Maximum number of records to return.
- `offset` (number): Number of records to skip, for paging.

### `umbrella_appdiscovery_app_identities` (~115 tokens)

List the identities (users/devices) observed using a specific discovered application.

Input parameters:

- `additionalParams` (object): Escape hatch for any documented Cisco Reports/Investigate query parameter not modeled explicitly above (e.g. categories, identityids, verdict, domains), passed through verbatim as query string key/va…
- `appId` (string, required): Discovered application ID.
- `limit` (number): Maximum number of records to return.
- `offset` (number): Number of records to skip, for paging.

### `umbrella_appdiscovery_app_risk` (~62 tokens)

Get risk details for a specific discovered application. Cisco's own Postman collection lists this endpoint under both "App Details" and "App Risk Details" - they are the same URL.

Input parameters:

- `appId` (string, required): Discovered application ID.

### `umbrella_api_usage_summary` (~49 tokens)

Summary of this organization's Umbrella API usage over a date range.

Input parameters:

- `from` (string, required): Range start, YYYY-MM-DD.
- `to` (string, required): Range end, YYYY-MM-DD.

### `umbrella_api_usage_requests` (~45 tokens)

Detailed API request log over a date range.

Input parameters:

- `from` (string, required): Range start, YYYY-MM-DD.
- `to` (string, required): Range end, YYYY-MM-DD.

### `umbrella_api_usage_responses` (~46 tokens)

Detailed API response log over a date range.

Input parameters:

- `from` (string, required): Range start, YYYY-MM-DD.
- `to` (string, required): Range end, YYYY-MM-DD.

### `umbrella_api_usage_keys` (~48 tokens)

API usage broken down by API key over a date range.

Input parameters:

- `from` (string, required): Range start, YYYY-MM-DD.
- `to` (string, required): Range end, YYYY-MM-DD.

### `umbrella_domain_categorization` (~28 tokens)

Get the content/security categorization for a domain.

Input parameters:

- `domain` (string, required)

### `umbrella_domain_risk_score` (~32 tokens)

Get Cisco's risk score for a domain (higher = riskier).

Input parameters:

- `domain` (string, required)

### `umbrella_domain_security_score` (~40 tokens)

Get detailed security scoring signals for a domain (DGA score, perplexity, entropy, Secure Rank, etc).

Input parameters:

- `domain` (string, required)

### `umbrella_top_most_seen_domains` (~26 tokens)

Get Cisco's list of the top million most globally-popular domains.

### `umbrella_get_samples` (~33 tokens)

Get malware/file samples associated with a domain, IP, or URL.

Input parameters:

- `domainIpOrUrl` (string, required)

### `umbrella_domain_volume` (~26 tokens)

Get DNS query volume over time for a domain.

Input parameters:

- `domain` (string, required)

### `umbrella_domain_resource_records` (~32 tokens)

Get passive DNS resource records (historical DNS resolutions) for a domain.

Input parameters:

- `domain` (string, required)

## Diagnostics

Captured diagnostic sections: Provenance. The full working is on the page: https://verifymcp.io/servers/wyre-ai-cisco-umbrella-mcp/ghcr-io-wyre-ai-cisco-umbrella-mcp-v1-0-0#diagnostics

## Score history

- 2026-09-20: 37

## Common questions

### What is the Cisco Umbrella MCP server?

Cisco Umbrella is an MCP server listed in the public MCP registry as io.github.WYRE-AI/cisco-umbrella-mcp. MCP server for Cisco Umbrella's deployment, admin, policy, reporting, and investigate APIs. This page covers its container image (ghcr.io/wyre-ai/cisco-umbrella-mcp:v1.0.0).

### Is the Cisco Umbrella MCP server safe to use?

Cisco Umbrella scores 37 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Cisco Umbrella MCP server expose?

Cisco Umbrella exposes 31 tools: umbrella_list_networks, umbrella_list_internal_networks, umbrella_list_sites, umbrella_list_virtual_appliances, umbrella_list_roaming_computers, and 26 more. Their descriptions and schemas cost roughly 2,393 tokens of context every time the server is loaded.

### Is the Cisco Umbrella MCP server still maintained?

Cisco Umbrella is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What licence is the Cisco Umbrella MCP server under?

Cisco Umbrella declares the NOASSERTION licence, which is not on the OSI-approved list. Read the terms before using it at work, and note this covers the source only, not the cost of any service it calls.

## Links

- Repository: https://github.com/WYRE-AI/cisco-umbrella-mcp
- Changelog RSS feed: https://verifymcp.io/servers/wyre-ai-cisco-umbrella-mcp/ghcr-io-wyre-ai-cisco-umbrella-mcp-v1-0-0.xml
- Changelog JSON feed: https://verifymcp.io/servers/wyre-ai-cisco-umbrella-mcp/ghcr-io-wyre-ai-cisco-umbrella-mcp-v1-0-0.json
- HTML version of this page: https://verifymcp.io/servers/wyre-ai-cisco-umbrella-mcp/ghcr-io-wyre-ai-cisco-umbrella-mcp-v1-0-0
