# io.github.sceneview/mcp (npm · sceneview-mcp)

3D & AR SDK for Android, iOS, Web — API docs, samples, validation, and code generation.

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

## Components

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

## Channel facts

- Registry: `npm`
- Package: `sceneview-mcp`
- Version: `3.4.7`
- 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**: 86/100
  - No malware found by supply-chain analysis.
  - Only part of the dependency tree could be resolved (94 of 98), 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 (94 of 98), 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 (MIT).
  - Actively maintained (last published 12 days ago).
  - Disclosure check failed: no security disclosure policy was found in the source repository.
- **Schema Quality & AI Usability**: 85/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 1935 tokens (~129/item across 15 items; 13 tools + 2 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 23/100
  - Stability observed for 7 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **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.

## Install

### Claude

```bash
claude mcp add sceneview-mcp-2 -- npx -y sceneview-mcp
```

### Codex

```bash
codex mcp add sceneview-mcp-2 -- npx -y sceneview-mcp
```

### opencode

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

### OpenClaw

```bash
openclaw mcp add sceneview-mcp-2 --command npx --arg -y --arg sceneview-mcp
```

### Hermes

```yaml
mcp_servers:
  sceneview-mcp-2:
    command: "npx"
    args: ["-y", "sceneview-mcp"]
```

### Other

```json
{
  "mcpServers": {
    "sceneview-mcp-2": {
      "command": "npx",
      "args": [
        "-y",
        "sceneview-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-03 (score 70, +3)

- [functional improvement] Stability: unverified → 0.23

### 2026-08-02 (score 67, +42)

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

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

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

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

First indexed and scored.

## MCP tools (13)

### `get_sample` (~673 tokens)

Returns a complete, compilable Kotlin sample for a given SceneView scenario. Use this to get a working starting point before customising. Call `list_samples` first if you are unsure which scenario fits.

Input parameters:

- `scenario` (string, required): The scenario to fetch: - "model-viewer": Full-screen 3D scene with a GLB model, HDR environment, orbit camera, and animation controls - "ar-model-viewer": AR scene with plane detection. Tap a surface…

### `list_samples` (~98 tokens)

Lists all available SceneView code samples with their IDs, descriptions, and tags. Use this to find the right sample before calling `get_sample`, or to show the user what SceneView can do.

Input parameters:

- `tag` (string): Optional tag to filter by (e.g. "ar", "3d", "ios", "swift", "anchor", "geometry", "animation", "video", "lighting"). Omit to list all samples.

### `get_setup` (~56 tokens)

Returns the Gradle dependency and AndroidManifest snippet required to use SceneView in an Android project.

Input parameters:

- `type` (string, required): "3d" for 3D-only scenes. "ar" for augmented reality (includes 3D).

### `validate_code` (~121 tokens)

Checks a Kotlin or Swift SceneView snippet for common mistakes. For Kotlin: threading violations, wrong destroy order, missing null-checks, LightNode trailing-lambda bug, deprecated 2.x APIs. For Swift: missing @MainActor, async/await patterns, missing imports, RealityKit mistakes. Language is auto-detected. Always call this before presenting generated SceneView code to the user.

Input parameters:

- `code` (string, required): The Kotlin or Swift source code to validate (composable function, SwiftUI view, class, or file). Language is auto-detected.

### `get_migration_guide` (~54 tokens)

Returns the full SceneView 2.x → 3.0 migration guide. Use this when a user reports code that worked in 2.x but breaks in 3.0, or when helping someone upgrade.

### `get_node_reference` (~125 tokens)

Returns the full API reference for a specific SceneView node type or composable — parameters, types, and a usage example — parsed directly from the official llms.txt. Use this when you need the exact signature or options for a node (e.g. ModelNode, LightNode, ARScene). If the requested type is not found, the response lists all available types.

Input parameters:

- `nodeType` (string, required): The node type or composable name to look up, e.g. "ModelNode", "LightNode", "ARScene", "AnchorNode". Case-insensitive.

### `get_platform_roadmap` (~58 tokens)

Returns the SceneView multi-platform roadmap — current Android support status, planned iOS/KMP/web targets, and timeline. Use this when the user asks about cross-platform support, iOS, Kotlin Multiplatform, or future plans.

### `get_best_practices` (~81 tokens)

Returns SceneView performance and architecture best practices — memory management, model optimization, threading rules, Compose integration patterns, and common anti-patterns. Use this when the user asks about performance, optimization, best practices, or architecture.

Input parameters:

- `category` (string): Category to filter by. "all" returns everything. Defaults to "all" if omitted.

### `get_ar_setup` (~68 tokens)

Returns detailed AR setup instructions — AndroidManifest permissions and features, Gradle dependencies, ARCore session configuration options (depth, light estimation, instant placement, plane detection, image tracking, cloud anchors), and a complete working AR starter template. More detailed than `get_setup` for AR-specific configuration.

### `get_troubleshooting` (~65 tokens)

Returns the SceneView troubleshooting guide — common crashes (SIGABRT, model not showing), build failures, AR issues (drift, overexposure, image detection), and performance problems. Use this when a user reports something not working, a crash, or unexpected behavior.

### `get_ios_setup` (~110 tokens)

Returns the complete iOS setup guide for SceneViewSwift — SPM dependency, Package.swift example, minimum platform versions, Info.plist entries for AR (camera permission), and basic SwiftUI integration code. Use this when a user wants to set up SceneView for iOS, macOS, or visionOS.

Input parameters:

- `type` (string, required): "3d" for 3D-only scenes. "ar" for augmented reality (requires iOS, not macOS/visionOS via this path).

### `get_web_setup` (~74 tokens)

Returns the complete Web setup guide for SceneView Web — npm install, Kotlin/JS Gradle config, HTML canvas setup, and basic Filament.js integration code. SceneView Web uses the same Filament rendering engine as Android, compiled to WebAssembly. Use this when a user wants to set up SceneView for browsers.

### `render_3d_preview` (~249 tokens)

Generates an interactive 3D preview link. Accepts a model URL, a SceneView code snippet, or both. Returns a URL to sceneview.github.io/preview that renders the model in the browser with orbit controls, AR support, and sharing. For model URLs: embeds a model-viewer link directly. For code snippets: shows the 3D preview with the code in a companion panel. Use this when you want to show a 3D model to the user — paste the link in your response and they can click to see it live.

Input parameters:

- `ar` (boolean): Enable AR mode on supported devices (default: true).
- `autoRotate` (boolean): Auto-rotate the model (default: true).
- `codeSnippet` (string): SceneView code snippet (Kotlin or Swift) to display alongside the 3D preview in a companion panel. Useful when showing generated code together with a live preview.
- `modelUrl` (string): Public URL to a .glb or .gltf model file. Must be HTTPS and CORS-enabled. If omitted, a default model is used.
- `title` (string): Custom title shown above the preview.

## Diagnostics

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

## Score history

- 2026-08-03: 70
- 2026-08-02: 67
- 2026-08-01: 25
- 2026-07-31: 25
- 2026-07-30: 52
- 2026-07-28: 52
- 2026-07-27: 52

## Links

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