# io.github.Oortonaut/mcacp (npm · mcacp)

MCP-to-ACP bridge — let any MCP client drive ACP coding agents

- Trust score: 70/100 (medium)
- Change this week: +17
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-03

## Components

- npm · `mcacp`: 70/100 (this document), [markdown](https://verifymcp.io/servers/oortonaut-mcacp/mcacp.md), [page](https://verifymcp.io/servers/oortonaut-mcacp/mcacp)

## Channel facts

- Registry: `npm`
- Package: `mcacp`
- Version: `0.1.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-08-03.

- **Supply Chain Security**: 87/100
  - No malware found by supply-chain analysis.
  - Only part of the dependency tree could be resolved (95 of 99), so this covers what we could see, not the whole tree.
  - No install/post-install scripts declared.
  - Only part of the dependency tree could be resolved (95 of 99), so this covers what we could see, not the whole tree.
- **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 183 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 82/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).
  - Tool/resource definitions use about 1139 tokens (~45/item across 25 items; 24 tools + 1 resources), lean.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 99/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 97% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add oortonaut-mcacp -- npx -y mcacp
```

### Codex

```bash
codex mcp add oortonaut-mcacp -- npx -y mcacp
```

### opencode

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

### OpenClaw

```bash
openclaw mcp add oortonaut-mcacp --command npx --arg -y --arg mcacp
```

### Hermes

```yaml
mcp_servers:
  oortonaut-mcacp:
    command: "npx"
    args: ["-y", "mcacp"]
```

### Other

```json
{
  "mcpServers": {
    "oortonaut-mcacp": {
      "command": "npx",
      "args": [
        "-y",
        "mcacp"
      ]
    }
  }
}
```

## 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-08-03 (score 70, +4)

- [functional improvement] Stability: unverified → 0.27

### 2026-08-02 (score 66, +40)

- [security regression] Provenance: unverified → fail
- [security improvement] Install scripts: unverified → pass
- [security improvement] Known CVEs: unverified → partial
- [security improvement] Malware scan: unverified → pass
- [security] Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window).
- [functional improvement] License: unverified → pass
- [functional improvement] Dependency health: unverified → partial
- [functional improvement] Maintenance: unverified → pass
- [functional improvement] MCP protocol: unverified → pass
- [functional improvement] Schema quality: unverified → good
- [functional] Licence: Apache-2.0

### 2026-08-01 (score 26, +21)

- [functional improvement] Tool coverage: unverified → 100
- [functional improvement] Schema quality: unverified → 100

### 2026-07-31 (score 5, −48)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-07-27 (score 53)

First indexed and scored.

## MCP tools (24)

### `list_installed_agents` (~27 tokens)

List all locally installed ACP agents with their id, name, version, and description.

### `registry_search` (~49 tokens)

Search configured ACP agent registries for available agents.

Input parameters:

- `query` (string): Search string to match against name, description, authors
- `showIncompatible` (boolean): Include platform-incompatible agents

### `agent_install` (~42 tokens)

Install an ACP agent from the registry.

Input parameters:

- `agentId` (string, required): Registry ID of the agent
- `version` (string): Specific version (default: latest)

### `agent_uninstall` (~30 tokens)

Remove a locally installed ACP agent.

Input parameters:

- `agentId` (string, required): ID of the agent to uninstall

### `agent_check_upgrades` (~19 tokens)

Check all installed agents for available version upgrades.

### `discover_agents` (~56 tokens)

Scan editor configs (Zed settings.json, JetBrains acp.json) for ACP agents. Returns agents with command/args/env and source. To import, add them to agent_servers in your mcacp.json and call reload_config.

### `reload_config` (~36 tokens)

Reload configuration from disk. Use after editing mcacp.json to pick up new agent_servers entries or changed settings. Returns the new config.

### `initialize` (~73 tokens)

Spawn an ACP agent process and perform the initialize handshake. Must be called before creating sessions.

Input parameters:

- `agentId` (string, required): ID of the installed agent to initialize
- `clientCapabilities` (object): Client capabilities
- `clientInfo` (object): Calling client info
- `protocolVersion` (number): Protocol version to negotiate

### `shutdown` (~35 tokens)

Gracefully shut down a running ACP agent, closing all sessions.

Input parameters:

- `agentId` (string, required): ID of the agent to shut down

### `new_session` (~89 tokens)

Create a new ACP session on an initialized agent. Returns the agent's session ID.

Input parameters:

- `agentId` (string, required): ID of the initialized agent
- `cwd` (string, required): Working directory for the session
- `mcpServers` (array): MCP servers to make available to the agent
- `permissionPolicy` (string): Permission policy: elicit, allow_all, deny_all, or operator

### `load_session` (~63 tokens)

Resume a previously created session. Agent must support session loading.

Input parameters:

- `agentId` (string, required): ID of the initialized agent
- `cwd` (string, required): Working directory
- `mcpServers` (array)
- `sessionId` (string, required): Session ID to resume

### `list_sessions` (~35 tokens)

List stored sessions. Does not require the agent to be running.

Input parameters:

- `agentId` (string, required): Agent ID to list sessions for

### `close_session` (~33 tokens)

Close an active session. Session file preserved for future load_session.

Input parameters:

- `sessionId` (string, required): Session ID to close

### `prompt_start` (~58 tokens)

Send a prompt to an active ACP session. Returns immediately with { status: "prompted" }. Use prompt or prompt_events to consume events.

Input parameters:

- `prompt` (required): Prompt text or content blocks
- `sessionId` (string, required): Active session ID

### `prompt_events` (~48 tokens)

Non-blocking poll for prompt events. Returns all queued events (updates, permission requests, completion). May return empty array if no new events.

Input parameters:

- `sessionId` (string, required): Active session ID

### `prompt` (~53 tokens)

Block until at least one prompt event is available. Returns queued events including updates (with full ACP metadata), permission requests, and completion. The default way to consume prompt results.

Input parameters:

- `sessionId` (string, required): Active session ID

### `events` (~88 tokens)

Block until any prompted session produces events. Returns events stamped with sessionId and agentId. Supports optional Nagle-style coalescing to batch events across sessions.

Input parameters:

- `nagleMs` (number): Coalescing window in ms. Batches events arriving within this window. Default: 0 (immediate).
- `timeoutMs` (number): Max wait time in ms. Returns empty on timeout.

### `grant_permission` (~67 tokens)

Respond to a pending permission request (operator policy). The agent resumes; new events flow to the queue.

Input parameters:

- `optionId` (string, required): Permission option to select
- `sessionId` (string, required): Session with pending permission
- `toolCallId` (string, required): Tool call ID requesting permission

### `request_permission` (~62 tokens)

Send an MCP elicitation to the outer host asking for a permission decision. Does not require a running agent or session.

Input parameters:

- `options` (array): Permission choices (defaults to Allow / Reject)
- `title` (string, required): Human-readable description of the action requesting permission

### `cancel` (~24 tokens)

Cancel an in-progress prompt.

Input parameters:

- `sessionId` (string, required): Session to cancel

### `set_mode` (~38 tokens)

Switch the operating mode of a session.

Input parameters:

- `modeId` (string, required): Mode to switch to
- `sessionId` (string, required): Session ID

### `list_running_agents` (~24 tokens)

List all spawned ACP agent processes with status, heartbeat, and active sessions.

### `get_agent_status` (~29 tokens)

Get detailed status of a running ACP agent.

Input parameters:

- `agentId` (string, required): Agent to query

### `set_agent_status` (~38 tokens)

Set an explicit status text for a running agent.

Input parameters:

- `agentId` (string, required): Agent ID
- `status` (string, required): Status text

## Diagnostics

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

## Score history

- 2026-08-03: 70
- 2026-08-02: 66
- 2026-08-01: 26
- 2026-07-31: 5
- 2026-07-30: 53
- 2026-07-28: 53
- 2026-07-27: 53

## Links

- npm package: https://www.npmjs.com/package/mcacp
- Socket report: https://socket.dev/npm/package/mcacp
- Repository: https://github.com/Oortonaut/mcacp
- Changelog RSS feed: https://verifymcp.io/servers/oortonaut-mcacp/mcacp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/oortonaut-mcacp/mcacp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/oortonaut-mcacp/mcacp
