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

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

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

## Components

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

## Channel facts

- Registry: `npm`
- Package: `sceneview-mcp`
- Version: `3.4.2`
- 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**: 86/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 1686 tokens (~120/item across 14 items; 12 tools + 2 resources), over budget; trim descriptions and params.
  - 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**: 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 thomasgorisse-sceneview -- npx -y sceneview-mcp
```

### Codex

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

### opencode

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

### OpenClaw

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

### Hermes

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

### Other

```json
{
  "mcpServers": {
    "thomasgorisse-sceneview": {
      "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 71, +4)

- [functional improvement] Stability: unverified → 0.27

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

- [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] 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 improvement] Schema quality: unverified → 100
- [functional improvement] Tool coverage: unverified → 100
- [functional] Licence: MIT

### 2026-08-01 (score 5, −21)

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

### 2026-07-31 (score 26, +20)

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

### 2026-07-30 (score 6, −46)

- [security regression] Malware scan: pass → unverified
- [functional regression] Tool coverage: 100 → unverified
- [functional regression] Schema quality: 100 → unverified

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

First indexed and scored.

## MCP tools (12)

### `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.

## Diagnostics

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

## Score history

- 2026-08-03: 71
- 2026-08-02: 67
- 2026-08-01: 5
- 2026-07-31: 26
- 2026-07-30: 6
- 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/thomasgorisse-sceneview/sceneview-mcp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/thomasgorisse-sceneview/sceneview-mcp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/thomasgorisse-sceneview/sceneview-mcp
