# Yeastar P-Series PBX (oci · ghcr.io/wyre-ai/yeastar-mcp:v1.0.0)

MCP server for Yeastar P-Series PBX System API (read-only).

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

## Components

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

## Channel facts

- Registry: `oci`
- Package: `ghcr.io/wyre-ai/yeastar-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-21.

- **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**: 84/100
  - AI-judged instruction clarity (excellent).
  - Tool/resource definitions use about 1906 tokens (~73/item across 26 items; 26 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**: 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.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 26 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 26 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 Yeastar P-Series PBX MCP server?

Yeastar P-Series PBX runs locally as a container image, launched with docker run --rm -i ghcr.io/wyre-ai/yeastar-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-yeastar-mcp -- docker run --rm -i ghcr.io/wyre-ai/yeastar-mcp:v1.0.0
```

### Cursor

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

### VS Code

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

### Codex

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

### opencode

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

### Hermes

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

### Netclaw

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

### Other

```json
{
  "mcpServers": {
    "wyre-ai-yeastar-mcp": {
      "command": "docker",
      "args": [
        "run",
        "--rm",
        "-i",
        "ghcr.io/wyre-ai/yeastar-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 40)

First indexed and scored.

## MCP tools (26)

### `yeastar_get_system_information` (~39 tokens)

Get this PBX appliance's own identity: model, firmware version, hostname. Useful to confirm which appliance a set of credentials points at.

### `yeastar_get_system_capacity` (~28 tokens)

Get current extension/trunk/concurrent-call usage against this appliance's licensed capacity limits.

### `yeastar_list_extensions` (~165 tokens)

List extensions with basic info: number, caller ID name, email, mobile number, presence status, and per-device online status (FXS, SIP, Linkus desktop/mobile/web). For full per-extension detail (call forwarding rules, voicemail settings, permissions), use yeastar_get_extension. Does NOT include the extension's SIP/portal password - that field is never exposed by this connector.

Input parameters:

- `order_by` (string): Sort direction.
- `page` (number): Page number (1-based). Defaults to 1.
- `page_size` (number): Items per page. Defaults to the PBX's own default page size.
- `sort_by` (string): Field to sort by (field names vary by endpoint - see the PBX field list in the response).

### `yeastar_get_extension` (~53 tokens)

Get full detail for a single extension (call forwarding, voicemail, permissions, device bindings). Requires an extension ID from yeastar_list_extensions.

Input parameters:

- `id` (string, required): Object ID, from the corresponding list tool.

### `yeastar_list_extension_groups` (~54 tokens)

List extension groups.

Input parameters:

- `page` (number): Page number (1-based). Defaults to 1.
- `page_size` (number): Items per page. Defaults to the PBX's own default page size.

### `yeastar_get_extension_group` (~49 tokens)

Get full detail (member extensions) for a single extension group. Requires an ID from yeastar_list_extension_groups.

Input parameters:

- `id` (string, required): Object ID, from the corresponding list tool.

### `yeastar_list_trunks` (~67 tokens)

List trunks (VoIP/ITSP/FXO) configured on this appliance.

Input parameters:

- `page` (number): Page number (1-based). Defaults to 1.
- `page_size` (number): Items per page. Defaults to the PBX's own default page size.

### `yeastar_get_trunk` (~73 tokens)

Get full detail for a single trunk. Requires an ID from yeastar_list_trunks. Any field that looks like a SIP registration secret or password is stripped from the response before it reaches you - this connector never returns trunk auth credentials.

Input parameters:

- `id` (string, required): Object ID, from the corresponding list tool.

### `yeastar_list_itsp_trunks` (~86 tokens)

List ITSP (VoIP provider) templates available on this appliance for trunk creation - not this appliance's own configured trunks (use yeastar_list_trunks for those).

Input parameters:

- `page` (number): Page number (1-based). Defaults to 1.
- `page_size` (number): Items per page. Defaults to the PBX's own default page size.

### `yeastar_list_inbound_routes` (~78 tokens)

List inbound call routes (which DID/pattern sends calls to which destination - extension, ring group, IVR, queue, etc).

Input parameters:

- `page` (number): Page number (1-based). Defaults to 1.
- `page_size` (number): Items per page. Defaults to the PBX's own default page size.

### `yeastar_get_inbound_route` (~47 tokens)

Get full detail for a single inbound route. Requires an ID from yeastar_list_inbound_routes.

Input parameters:

- `id` (string, required): Object ID, from the corresponding list tool.

### `yeastar_list_outbound_routes` (~65 tokens)

List outbound call routes (which trunk handles calls matching which dial pattern).

Input parameters:

- `page` (number): Page number (1-based). Defaults to 1.
- `page_size` (number): Items per page. Defaults to the PBX's own default page size.

### `yeastar_get_outbound_route` (~47 tokens)

Get full detail for a single outbound route. Requires an ID from yeastar_list_outbound_routes.

Input parameters:

- `id` (string, required): Object ID, from the corresponding list tool.

### `yeastar_list_ivrs` (~60 tokens)

List IVR (auto-attendant) menus.

Input parameters:

- `page` (number): Page number (1-based). Defaults to 1.
- `page_size` (number): Items per page. Defaults to the PBX's own default page size.

### `yeastar_get_ivr` (~55 tokens)

Get full detail (key press mapping, prompts, timeout destination) for a single IVR. Requires an ID from yeastar_list_ivrs.

Input parameters:

- `id` (string, required): Object ID, from the corresponding list tool.

### `yeastar_list_ring_groups` (~66 tokens)

List ring groups (a set of extensions that ring together on an incoming call).

Input parameters:

- `page` (number): Page number (1-based). Defaults to 1.
- `page_size` (number): Items per page. Defaults to the PBX's own default page size.

### `yeastar_get_ring_group` (~55 tokens)

Get full detail (member extensions, ring strategy, timeout destination) for a single ring group. Requires an ID from yeastar_list_ring_groups.

Input parameters:

- `id` (string, required): Object ID, from the corresponding list tool.

### `yeastar_list_queues` (~54 tokens)

List call queues.

Input parameters:

- `page` (number): Page number (1-based). Defaults to 1.
- `page_size` (number): Items per page. Defaults to the PBX's own default page size.

### `yeastar_get_queue` (~51 tokens)

Get full configuration (strategy, timeout, member agents) for a single queue. Requires an ID from yeastar_list_queues.

Input parameters:

- `id` (string, required): Object ID, from the corresponding list tool.

### `yeastar_get_queue_call_status` (~75 tokens)

Get the current live call state of a queue: calls waiting, calls in progress, wait times. A read of current state - does not join, transfer, or otherwise touch any call. Requires an ID from yeastar_list_queues.

Input parameters:

- `id` (string, required): Object ID, from the corresponding list tool.

### `yeastar_get_queue_agent_status` (~74 tokens)

Get the current login/pause/busy state of each agent in a queue. A read of current state - does not log an agent in, out, or change their pause state. Requires an ID from yeastar_list_queues.

Input parameters:

- `id` (string, required): Object ID, from the corresponding list tool.

### `yeastar_list_company_contacts` (~81 tokens)

List the company-wide contact directory (shared contacts visible to all extensions - distinct from any individual extension's personal phonebook, which this connector does not expose).

Input parameters:

- `page` (number): Page number (1-based). Defaults to 1.
- `page_size` (number): Items per page. Defaults to the PBX's own default page size.

### `yeastar_list_cdr` (~162 tokens)

List call detail records (CDR): who called whom, when, duration, disposition. Optionally bound by start_time/end_time. Uses the openapi/v1.0 CDR surface - this connector does not target the separate v2.0 CDR API. Does not include recording audio (recording endpoints are not implemented by this connector).

Input parameters:

- `end_time` (string): Inclusive upper bound, format YYYY-MM-DD HH:MM:SS.
- `page` (number): Page number (1-based). Defaults to 1.
- `page_size` (number): Items per page. Defaults to the PBX's own default page size.
- `start_time` (string): Inclusive lower bound, format YYYY-MM-DD HH:MM:SS.

### `yeastar_list_call_reports` (~127 tokens)

List aggregated call reports (summary call statistics), optionally bound by start_time/end_time. Distinct from yeastar_list_cdr, which returns individual call records rather than aggregates.

Input parameters:

- `end_time` (string): Inclusive upper bound, format YYYY-MM-DD HH:MM:SS.
- `page` (number): Page number (1-based). Defaults to 1.
- `page_size` (number): Items per page. Defaults to the PBX's own default page size.
- `start_time` (string): Inclusive lower bound, format YYYY-MM-DD HH:MM:SS.

### `yeastar_list_backups` (~108 tokens)

List configuration backup metadata for this appliance (name, created time, size) - for monitoring backup health (e.g. "when did the last backup run"). Does not return the backup file contents; backup/download is never implemented by this connector, since a backup file can embed configuration secrets.

Input parameters:

- `page` (number): Page number (1-based). Defaults to 1.
- `page_size` (number): Items per page. Defaults to the PBX's own default page size.

### `yeastar_list_certificates` (~87 tokens)

List TLS certificate metadata for this appliance (name, domain, expiry date) - for monitoring certificate expiry. Does not return private key material; certificate/get is never implemented by this connector.

Input parameters:

- `page` (number): Page number (1-based). Defaults to 1.
- `page_size` (number): Items per page. Defaults to the PBX's own default page size.

## Diagnostics

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

## Score history

- 2026-09-21: 40
- 2026-09-20: 40

## Common questions

### What is the Yeastar P-Series PBX MCP server?

Yeastar P-Series PBX is an MCP server listed in the public MCP registry as io.github.WYRE-AI/yeastar-mcp. MCP server for Yeastar P-Series PBX System API (read-only). This page covers its container image (ghcr.io/wyre-ai/yeastar-mcp:v1.0.0).

### Is the Yeastar P-Series PBX MCP server safe to use?

Yeastar P-Series PBX scores 40 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 Yeastar P-Series PBX MCP server expose?

Yeastar P-Series PBX exposes 26 tools: yeastar_get_system_information, yeastar_get_system_capacity, yeastar_list_extensions, yeastar_get_extension, yeastar_list_extension_groups, and 21 more. Their descriptions and schemas cost roughly 1,906 tokens of context every time the server is loaded.

### Is the Yeastar P-Series PBX MCP server still maintained?

Yeastar P-Series PBX is still listed as active in the MCP registry. We last reached this channel on 21 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 Yeastar P-Series PBX MCP server under?

Yeastar P-Series PBX 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/yeastar-mcp
- Changelog RSS feed: https://verifymcp.io/servers/wyre-ai-yeastar-mcp/ghcr-io-wyre-ai-yeastar-mcp-v1-0-0.xml
- Changelog JSON feed: https://verifymcp.io/servers/wyre-ai-yeastar-mcp/ghcr-io-wyre-ai-yeastar-mcp-v1-0-0.json
- HTML version of this page: https://verifymcp.io/servers/wyre-ai-yeastar-mcp/ghcr-io-wyre-ai-yeastar-mcp-v1-0-0
