# Phocinae MCP (pypi · phocinae-mcp)

Local Phocinae decision-engine MCP stdio server: fail-closed approval gate + classify/route/score.

- Trust score: 56/100 (low)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-10-18

## Components

- pypi · `phocinae-mcp`: 56/100 (this document), [markdown](https://verifymcp.io/servers/phocinae-phocinae-mcp/phocinae-mcp.md), [page](https://verifymcp.io/servers/phocinae-phocinae-mcp/phocinae-mcp)

## Channel facts

- Registry: `pypi`
- Package: `phocinae-mcp`
- Version: `0.2.6`
- 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-10-18.

- **Supply Chain Security**: 50/100
  - Malware scan not yet available for this package.
  - No known CVEs affecting this package version or its production dependencies.
  - Runs setuptools.build_meta at install time, a recognised build step with no custom scripting around it.
  - No production dependencies, so there is no dependency health to assess.
- **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 (Apache-2.0).
  - Actively maintained (last published 5 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 76/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (good).
  - Context-footprint check failed: tool/resource definitions use about 1026 tokens (~205/item across 5 items; 4 tools + 1 resources), over budget; trim descriptions and params.
  - 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**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 4 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 6 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a current MCP spec version (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 Phocinae MCP server?

Phocinae MCP runs locally as a PyPI package, launched with uvx phocinae-mcp. 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 phocinae-phocinae-mcp -- uvx phocinae-mcp
```

### Cursor

```json
{
  "mcpServers": {
    "phocinae-phocinae-mcp": {
      "command": "uvx",
      "args": [
        "phocinae-mcp"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "phocinae-phocinae-mcp": {
      "command": "uvx",
      "args": [
        "phocinae-mcp"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add phocinae-phocinae-mcp -- uvx phocinae-mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "phocinae-phocinae-mcp": {
      "type": "local",
      "command": [
        "uvx",
        "phocinae-mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add phocinae-phocinae-mcp --command uvx --arg phocinae-mcp
```

### Hermes

```yaml
mcp_servers:
  phocinae-phocinae-mcp:
    command: "uvx"
    args: ["phocinae-mcp"]
```

### Netclaw

```json
{
  "McpServers": {
    "phocinae-phocinae-mcp": {
      "Transport": "stdio",
      "Command": "uvx",
      "Arguments": [
        "phocinae-mcp"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add phocinae-phocinae-mcp -t stdio -c uvx -a phocinae-mcp
```

### Other

```json
{
  "mcpServers": {
    "phocinae-phocinae-mcp": {
      "command": "uvx",
      "args": [
        "phocinae-mcp"
      ]
    }
  }
}
```

## 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-10-18 (score 56, −15)

- [security regression] Malware scan: pass → unverified

### 2026-10-16 (score 71, +15)

- [security improvement] Malware scan: unverified → pass

### 2026-10-15 (score 56, −15)

- [security regression] Malware scan: pass → unverified

### 2026-10-14 (score 71, +32)

- [security improvement] Injection markers: unverified → pass
- [security] First check of Judged manipulation: pass
- [security] Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window).
- [functional improvement] MCP protocol: unverified → pass
- [functional improvement] Tool coverage: unverified → 100
- [functional improvement] Schema quality: unverified → 100
- [functional] First check of Schema quality: fail
- [functional] First check of Destructive annotations: pass
- [functional] First check of Schema quality: fail
- [functional] First check of Schema quality: good
- [functional] First check of Tool coverage: 100
- [functional] First check of Tool coverage: 100

### 2026-10-12 (score 39)

First indexed and scored.

## MCP tools (4)

### `gate` (~245 tokens)

命令审批门

何时使用：需要判定一条 shell 命令能否执行时——代码代理要跑命令、批处理要校验、人工要复核灰区命令，都用 gate 逐条判定。何时不使用：不要用它判定非 shell 操作（文件读写、HTTP 调用）；不要把多条命令拼成一条字符串绕过判定；宿主已有内置审批机制时不要重复叠加。返回 decision ∈ allow|deny|ask 与 layer/reason；ask 时结果携带人工确认交互（MCP 2026-07-28 elicitation）或明示需人工复核；服务不可用 fail-closed 返回 deny。

Input parameters:

- `command` (string, required): 待判定的 shell 命令（必填；上限 20000 字符）
- `cwd` (string): 命令执行工作目录（可选；默认服务器进程当前目录）
- `server` (string): 可选：覆盖服务地址（http://host:port，等价于 --server；上限 2048 字符）

Output parameters:

- `command` (string)
- `confidence` (number|null)
- `cwd` (string)
- `decision` (string)
- `engine` (string)
- `error` (string)
- `fail_closed` (string)
- `human_action` (string)
- `layer` (string)
- `model` (string|null)
- `noul` (number|null)
- `noul_state` (string)
- `reason` (string)
- `score` (number|null)
- `server` (string)
- `status` (string)
- `tool` (string)

### `classify` (~193 tokens)

分类

何时使用：需要把一段状态/上下文归入若干已知标签之一（意图分类、类型识别）时。何时不使用：标签未知或不固定时（改走 route 或让模型自由作答）；需要对同一对象打多重分数时（用 score）。返回 choice=选项下标（0 起）、label、置信度；服务不可用返回明确错误。

Input parameters:

- `labels` (array, required): 候选标签列表（必填；1–100 个非空字符串，单项上限 2000 字符）
- `server` (string): 可选：覆盖服务地址（http://host:port，等价于 --server；上限 2048 字符）
- `state` (string, required): 待分类的上下文/状态描述（必填；上限 20000 字符）

Output parameters:

- `choice` (integer)
- `confidence` (number|null)
- `label` (string)
- `labels` (array)
- `model` (string|null)
- `question` (string)
- `server` (string)
- `state` (string)
- `usage` (object|null)

### `route` (~200 tokens)

工具路由

何时使用：有确定的候选工具/处理器清单、需要从中挑出最合适的一个来服务请求时。何时不使用：候选清单不固定或用户已直接指定工具时（尊重用户指定，不重复路由）；要评估每个候选的质量而非挑选时（用 score 逐个打分）。返回 choice=下标、tool=选中的工具名；服务不可用返回明确错误。

Input parameters:

- `server` (string): 可选：覆盖服务地址（http://host:port，等价于 --server；上限 2048 字符）
- `state` (string, required): 请求/上下文描述（必填；上限 20000 字符）
- `tools` (array, required): 候选工具名列表（必填；1–100 个非空字符串，单项上限 2000 字符）

Output parameters:

- `choice` (integer)
- `confidence` (number|null)
- `model` (string|null)
- `question` (string)
- `server` (string)
- `state` (string)
- `tool` (string)
- `tools` (array)
- `usage` (object|null)

### `score` (~188 tokens)

打分

何时使用：需要按 criteria 给 state 打 2–10 分（风险、质量、适配度等）时。何时不使用：需要分类（用 classify）、多选一（用 route 或 gate）、或分数语义与 2–10 量纲不符时。返回 score ∈ [2, 10] 与 range；服务不可用或应答越界返回明确错误。

Input parameters:

- `criteria` (array, required): 打分标准列表（必填；1–100 个非空字符串，单项上限 2000 字符）
- `server` (string): 可选：覆盖服务地址（http://host:port，等价于 --server；上限 2048 字符）
- `state` (string, required): 待打分对象的状态描述（必填；上限 20000 字符）

Output parameters:

- `confidence` (number|null)
- `criteria` (array)
- `model` (string|null)
- `question` (string)
- `range` (array)
- `score` (number)
- `server` (string)
- `state` (string)
- `usage` (object|null)

## Diagnostics

Captured diagnostic sections: Provenance, Install scripts, Dependencies. The full working is on the page: https://verifymcp.io/servers/phocinae-phocinae-mcp/phocinae-mcp#diagnostics

## Score history

- 2026-10-18: 56
- 2026-10-17: 71
- 2026-10-16: 71
- 2026-10-15: 56
- 2026-10-14: 71
- 2026-10-13: 39
- 2026-10-12: 39

## Common questions

### What is the Phocinae MCP server?

Phocinae MCP is listed in the public MCP registry as io.github.Phocinae/phocinae-mcp. Local Phocinae decision-engine MCP stdio server: fail-closed approval gate + classify/route/score. This page covers its PyPI package (phocinae-mcp).

### Is the Phocinae MCP server safe to use?

Phocinae MCP scores 56 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 18 October 2026. 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 Phocinae MCP server expose?

Phocinae MCP exposes 4 tools: gate, classify, route, score. Their descriptions and schemas cost roughly 826 tokens of context every time the server is loaded.

### Is the Phocinae MCP server still maintained?

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

Phocinae MCP declares the Apache-2.0 licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

## Links

- PyPI project: https://pypi.org/project/phocinae-mcp/
- Socket report: https://socket.dev/pypi/package/phocinae-mcp
- Repository: https://github.com/Phocinae/phocinae-mcp
- Changelog RSS feed: https://verifymcp.io/servers/phocinae-phocinae-mcp/phocinae-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/phocinae-phocinae-mcp/phocinae-mcp.json
- HTML version of this page: https://verifymcp.io/servers/phocinae-phocinae-mcp/phocinae-mcp
