# Octri CLI (npm · @octri/cli)

Push OpenAPI specs, build SDKs in ten languages, publish API docs, and triage production SDK errors.

- Trust score: 69/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-09-26

## Components

- npm · `@octri/cli`: 69/100 (this document), [markdown](https://verifymcp.io/servers/dev-octri-cli/octri-cli.md), [page](https://verifymcp.io/servers/dev-octri-cli/octri-cli)

## Channel facts

- Registry: `npm`
- Package: `@octri/cli`
- Version: `1.0.3`
- 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-26.

- **Supply Chain Security**: 98/100
  - No malware found by supply-chain analysis.
  - No known CVEs affecting this package version or its production dependencies.
  - No install/post-install scripts declared.
  - 31 of 95 dependencies flagged as unhealthy.
- **Provenance & Transparency**: 45/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - Clear OSI-approved license (MIT).
  - 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 2080 tokens (~67/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**: 86/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 59% 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: 1 category.** A category scored 0 because we could not verify it: 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 Octri CLI MCP server?

Octri CLI runs locally as an npm package, launched with npx -y @octri/cli. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add dev-octri-cli -- npx -y @octri/cli
```

### Cursor

```json
{
  "mcpServers": {
    "dev-octri-cli": {
      "command": "npx",
      "args": [
        "-y",
        "@octri/cli"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "dev-octri-cli": {
      "command": "npx",
      "args": [
        "-y",
        "@octri/cli"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add dev-octri-cli -- npx -y @octri/cli
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "dev-octri-cli": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@octri/cli"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add dev-octri-cli --command npx --arg -y --arg @octri/cli
```

### Hermes

```yaml
mcp_servers:
  dev-octri-cli:
    command: "npx"
    args: ["-y", "@octri/cli"]
```

### Netclaw

```json
{
  "McpServers": {
    "dev-octri-cli": {
      "Transport": "stdio",
      "Command": "npx",
      "Arguments": [
        "-y",
        "@octri/cli"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add dev-octri-cli -t stdio -c npx -a -y @octri/cli
```

### Other

```json
{
  "mcpServers": {
    "dev-octri-cli": {
      "command": "npx",
      "args": [
        "-y",
        "@octri/cli"
      ]
    }
  }
}
```

## 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-25 (score 69)

First indexed and scored.

## MCP tools (31)

### `octri_whoami` (~61 tokens)

The signed-in user, org, plan, API URL and currently selected project. Call this first to confirm which environment the session is pointed at.

Input parameters:

- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_list_projects` (~40 tokens)

All projects in the organisation, with ids.

Input parameters:

- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_list_specs` (~42 tokens)

OpenAPI specs uploaded to a project, newest first.

Input parameters:

- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_push_spec` (~64 tokens)

Upload OpenAPI spec text (JSON or YAML) as the project's new current spec. Returns the created spec id.

Input parameters:

- `content` (string, required): Raw spec text.
- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_import_spec_url` (~49 tokens)

Import an OpenAPI spec from a public URL.

Input parameters:

- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.
- `url` (string, required)

### `octri_list_languages` (~45 tokens)

The SDK generator's language catalogue and the preference keys each language accepts.

Input parameters:

- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_list_operations` (~59 tokens)

Every operation the parser found in the current spec, with method, path, operationId and deprecation, the list the SDK Studio renders.

Input parameters:

- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_get_sdk_settings` (~60 tokens)

The project's persisted SDK Studio settings, per-endpoint overrides, revision, and last published release. The revision is required to write settings back.

Input parameters:

- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_set_sdk_settings` (~116 tokens)

Write SDK Studio settings. Pass a full settings object (read it first with octri_get_sdk_settings and modify), plus the revision you read. A stale revision is rejected.

Input parameters:

- `changelog` (string)
- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.
- `revision` (number, required): Revision from octri_get_sdk_settings.
- `settings` (object, required): Complete sdkSettings object. Replaces the stored one.
- `version` (string): Optional release version.

### `octri_validate_spec` (~51 tokens)

Run the generator's validator against the project's current spec. Cheap; do this before spending a build.

Input parameters:

- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_preview_sdk` (~114 tokens)

Generate one language WITHOUT spending a build, and return the emitted file paths (and optionally contents). This is the fast loop for generator changes.

Input parameters:

- `include_content` (boolean): Include file contents. Defaults to false (paths only) to keep the response small.
- `language` (string, required): Language id, e.g. `go`.
- `path_filter` (string): Only return files whose path contains this substring.
- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_trigger_build` (~87 tokens)

Queue an SDK build for one or more languages. Returns a build id immediately; poll with octri_get_build or block with octri_wait_for_build.

Input parameters:

- `languages` (array, required): Language ids, e.g. ["go","rust"].
- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.
- `version` (string)

### `octri_list_builds` (~47 tokens)

Recent SDK builds with per-language status.

Input parameters:

- `page` (number)
- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_get_build` (~56 tokens)

One build's current state, including each language's lifecycle phase and any failure message.

Input parameters:

- `build_id` (string, required)
- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_wait_for_build` (~83 tokens)

Block until every language of a build reaches a terminal state, then return the final per-language result. Use after octri_trigger_build.

Input parameters:

- `build_id` (string, required)
- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.
- `timeout_seconds` (number): Defaults to 1800 (30 minutes).

### `octri_retry_build` (~73 tokens)

Re-run only the named languages of an existing build, in place. Omit `languages` to retry exactly the ones that failed.

Input parameters:

- `build_id` (string, required)
- `languages` (array)
- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_fetch_artifacts` (~77 tokens)

Download and extract a build's artifacts into the local cache so their files can be listed and read. Returns per-language file counts and a content fingerprint.

Input parameters:

- `build_id` (string, required)
- `languages` (array)
- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_list_generated_files` (~69 tokens)

List the files of a previously fetched build+language, with sizes. Call octri_fetch_artifacts first.

Input parameters:

- `build_id` (string, required)
- `language` (string, required)
- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_read_generated_file` (~94 tokens)

Read one generated file from a fetched build. This is how to inspect what the generator actually emitted.

Input parameters:

- `build_id` (string, required)
- `language` (string, required)
- `max_bytes` (number): Defaults to 200000.
- `path` (string, required): Path within the language's output tree.
- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_diff_builds` (~86 tokens)

Compare two fetched builds file-by-file per language: which emitted files were added, removed or changed. The primary way to judge a generator change.

Input parameters:

- `from_build_id` (string, required)
- `language` (string)
- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.
- `to_build_id` (string, required)

### `octri_list_doc_pages` (~39 tokens)

Documentation pages generated for the project.

Input parameters:

- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_get_doc_page` (~45 tokens)

One documentation page by slug.

Input parameters:

- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.
- `slug` (string, required)

### `octri_list_mcp_tools` (~51 tokens)

The MCP tool catalogue this project publishes to its own customers, derived from its SDK config.

Input parameters:

- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_list_sdk_repos` (~45 tokens)

Per-language GitHub repositories linked to the project's SDKs.

Input parameters:

- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_monitoring_summary` (~85 tokens)

Production health for the project: event count, error count, error rate and distinct issues over a window. Call this before reading issues. It tells you whether there is anything to look at.

Input parameters:

- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.
- `range` (string): Time window. Defaults to 24h.

### `octri_list_issues` (~80 tokens)

Grouped production errors, newest first. Each issue has an id usable with octri_get_issue.

Input parameters:

- `level` (string)
- `limit` (number)
- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.
- `range` (string)
- `status` (string)

### `octri_get_issue` (~77 tokens)

One issue with its stack frames and recent events. A frame with resolved=true was de-minified against an uploaded source map; if none are, the symbols for that release were never uploaded.

Input parameters:

- `issue_id` (string, required)
- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.

### `octri_set_issue_status` (~68 tokens)

Triage an issue: resolve it, ignore it, or reopen it (status `unresolved`).

Input parameters:

- `issue_id` (string, required)
- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.
- `status` (string, required)

### `octri_query_logs` (~94 tokens)

Raw production events, unaggregated. Use when an issue's grouped view is not enough, e.g. to see every occurrence across releases.

Input parameters:

- `level` (string)
- `limit` (number)
- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.
- `query` (string): Free-text match on the message.
- `range` (string)

### `octri_monitoring_releases` (~63 tokens)

Error rate, new issues and regressions per release. This is how you tell whether a deploy made things worse.

Input parameters:

- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.
- `range` (string)

### `octri_monitoring_performance` (~60 tokens)

Slowest transactions (p50/p95) and suspected N+1 query patterns for the project.

Input parameters:

- `project_id` (string): Project id. Optional, falls back to the CLI's selected project.
- `range` (string)

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/dev-octri-cli/octri-cli#diagnostics

## Score history

- 2026-09-26: 69
- 2026-09-25: 69

## Common questions

### What is the Octri CLI MCP server?

Octri CLI is an MCP server listed in the public MCP registry as dev.octri/cli. Push OpenAPI specs, build SDKs in ten languages, publish API docs, and triage production SDK errors. This page covers its npm package (@octri/cli).

### Is the Octri CLI MCP server safe to use?

Octri CLI scores 69 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 26 September 2026. It declares no install or post-install scripts. 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 Octri CLI MCP server expose?

Octri CLI exposes 31 tools: octri_whoami, octri_list_projects, octri_list_specs, octri_push_spec, octri_import_spec_url, and 26 more. Their descriptions and schemas cost roughly 2,080 tokens of context every time the server is loaded.

### Is the Octri CLI MCP server still maintained?

Octri CLI is still listed as active in the MCP registry. We last reached this channel on 26 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 Octri CLI MCP server under?

Octri CLI declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

## Links

- npm package: https://www.npmjs.com/package/@octri/cli
- Socket report: https://socket.dev/npm/package/@octri/cli
- Repository: https://github.com/octridev/octri-cli
- Website: https://octri.dev/
- Changelog RSS feed: https://verifymcp.io/servers/dev-octri-cli/octri-cli.xml
- Changelog JSON feed: https://verifymcp.io/servers/dev-octri-cli/octri-cli.json
- HTML version of this page: https://verifymcp.io/servers/dev-octri-cli/octri-cli
