# three.ws Assistant Widget (npm · @three-ws/assistant-mcp)

Generate a paste-ready embed for a floating 3D avatar chatbot on any website.

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

## Components

- npm · `@three-ws/assistant-mcp`: 60/100 (this document), [markdown](https://verifymcp.io/servers/nirholas-assistant-widget/three-ws-assistant-mcp.md), [page](https://verifymcp.io/servers/nirholas-assistant-widget/three-ws-assistant-mcp)

## Channel facts

- Registry: `npm`
- Package: `@three-ws/assistant-mcp`
- Version: `0.1.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-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**: 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 (SEE LICENSE IN LICENSE) isn't a recognized OSI-approved license.
  - Actively maintained (last published 15 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 60/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 763 tokens (~381/item across 2 items; 2 tools + 0 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.
- **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

### Claude

```bash
claude mcp add nirholas-assistant-widget -- npx -y @three-ws/assistant-mcp
```

### Codex

```bash
codex mcp add nirholas-assistant-widget -- npx -y @three-ws/assistant-mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "nirholas-assistant-widget": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@three-ws/assistant-mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add nirholas-assistant-widget --command npx --arg -y --arg @three-ws/assistant-mcp
```

### Hermes

```yaml
mcp_servers:
  nirholas-assistant-widget:
    command: "npx"
    args: ["-y", "@three-ws/assistant-mcp"]
```

### Other

```json
{
  "mcpServers": {
    "nirholas-assistant-widget": {
      "command": "npx",
      "args": [
        "-y",
        "@three-ws/assistant-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-08-02 (score 60, +54)

- [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 regression] License: unverified → fail
- [functional regression] Dependency health: partial → unverified
- [functional improvement] Schema quality: unverified → excellent
- [functional improvement] Maintenance: unverified → pass
- [functional improvement] MCP protocol: unverified → pass
- [functional improvement] Tool coverage: unverified → 100
- [functional] Licence: SEE LICENSE IN LICENSE

### 2026-08-01 (score 6, −11)

- [functional regression] Tool coverage: 100 → unverified
- [functional improvement] Dependency health: unverified → partial
- [functional] First check of Schema quality: unverified

### 2026-07-31 (score 17, −25)

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

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

First indexed and scored.

## MCP tools (2)

### `build_assistant_widget` (~462 tokens)

Build a paste-ready three.ws assistant widget embed

Turn a config into a ready-to-embed three.ws assistant widget, a floating 3D avatar chatbot you can drop onto any website. Returns a paste-ready <script> tag (with only the non-default settings as data-* attributes), a standalone frame URL for <iframe> embedding, an equivalent ThreeAssistant.init({...}) JavaScript-API snippet, the visual builder link, and the fully-normalized config. Pure and offline: every field is validated and clamped locally, so a bad value falls back to a safe default and the generated HTML is always well-formed. Call list_assistant_options first to see every avatar, background, mode and attribute you can set.

Input parameters:

- `accent` (string): Accent "#hex" color for the widget UI. Default "#f97316". Non-hex values fall back to the default.
- `agent` (string): A three.ws agent id to drive the assistant, as an alternative to picking an avatar directly.
- `avatar` (string): Which avatar to show: a three.ws avatar id, a "/avatars/*.glb" path (e.g. "/avatars/selfie-girl.glb"), or a full GLB URL. Omit for the default mannequin.
- `background` (string): Backdrop behind the avatar: "transparent" (default), a "#hex" color, a preset (ember, ocean, violet, forest, dusk, slate), or "gradient:#aabbcc,#112233,160". Anything else falls back to transparent.
- `badge` (boolean): Show the small "three.ws" attribution badge. Defaults to on.
- `context` (string): What the assistant should know about the site (used as its grounding context in chat).
- `greeting` (string): Opening line the assistant shows on load.
- `mode` (string): Interaction mode: "chat" (text only), "speak" (voice only), or "both" (default).
- `name` (string): Display name for the assistant / widget header.
- `position` (string): Which corner the launcher sits in: "right" (default) or "left".
- `voice` (boolean): Start with voice on (true) or off (false). Defaults to on.

### `list_assistant_options` (~90 tokens)

List every three.ws assistant widget option

List everything you can configure on the three.ws assistant widget: the built-in avatars, background presets and grammar, interaction modes, chat lanes (free vs bring-your-own-key), and the full data-* attribute reference table. Call this before build_assistant_widget to know the vocabulary. Read-only and offline.

Input parameters:

- `filter` (string): Optionally return just one section. Omit to get everything.

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/nirholas-assistant-widget/three-ws-assistant-mcp#diagnostics

## Score history

- 2026-08-03: 60
- 2026-08-02: 60
- 2026-08-01: 6
- 2026-07-31: 17
- 2026-07-30: 42
- 2026-07-28: 42
- 2026-07-27: 42

## Links

- npm package: https://www.npmjs.com/package/@three-ws/assistant-mcp
- Socket report: https://socket.dev/npm/package/@three-ws/assistant-mcp
- Repository: https://github.com/nirholas/three.ws
- Website: https://three.ws/assistant
- Changelog RSS feed: https://verifymcp.io/servers/nirholas-assistant-widget/three-ws-assistant-mcp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/nirholas-assistant-widget/three-ws-assistant-mcp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/nirholas-assistant-widget/three-ws-assistant-mcp
