SceneView MCP
22 tools for 3D and AR development — generates correct, compilable SceneView code for Android (Jetpack Compose) and iOS (SwiftUI). 858 tests.
sceneview-mcp
Give any AI assistant expert-level knowledge of 3D and AR development.
The official Model Context Protocol server for SceneView -- the cross-platform 3D & AR SDK for Android (Jetpack Compose + Filament), iOS/macOS/visionOS (SwiftUI + RealityKit), and Web (Filament.js + WebXR).
Connect it to Claude, Cursor, Windsurf, or any MCP client. The assistant gets 22 specialized tools, 33 compilable code samples, a full API reference, and a code validator -- so it writes correct, working 3D/AR code on the first try.
Disclaimer: Generated code is provided "as is" without warranty. Always review before production use. See TERMS.md and PRIVACY.md.
🚀 Pro Products
| Product | Price | Description |
|---|---|---|
| MCP Creator Kit | €29 | Everything to create your own MCP server — template, CLI, docs, examples |
| SceneView Pro Starter Kit | €49 | Complete Android 3D + AR app template — 4 screens, ready to customize |
| SceneView MCP Pro | €9.99/mo | Premium MCP tools and priority support |
⭐ Sponsor on GitHub — Help us build the future of 3D/AR development
Quick start
One command -- no install required:
npx sceneview-mcp
Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"sceneview": {
"command": "npx",
"args": ["-y", "sceneview-mcp"]
}
}
}
Restart Claude Desktop after saving.
Claude Code
claude mcp add sceneview -- npx -y sceneview-mcp
Cursor
Open Settings > MCP, add a new server named sceneview with command npx -y sceneview-mcp. Or add to .cursor/mcp.json:
{
"mcpServers": {
"sceneview": {
"command": "npx",
"args": ["-y", "sceneview-mcp"]
}
}
}
Windsurf / Other MCP clients
Same JSON config as above. The server communicates via stdio using the standard MCP protocol.
What you get
22 tools
| Tool | What it does |
|---|---|
get_sample | Returns a complete, compilable code sample for any of 33 scenarios (Kotlin or Swift) |
list_samples | Browse all samples, filter by tag (ar, 3d, ios, animation, geometry, ...) |
validate_code | Checks generated code against 15+ rules before presenting it to the user |
get_node_reference | Full API reference for any of 26+ node types -- exact signatures, defaults, examples |
list_platforms | List all supported platforms with their status, renderer, and framework |
get_setup | Gradle + manifest setup for Android 3D or AR projects |
get_ios_setup | SPM dependency, Info.plist, and SwiftUI integration for iOS/macOS/visionOS |
get_web_setup | Kotlin/JS + Filament.js (WASM) setup for browser-based 3D |
get_ar_setup | Detailed AR config: permissions, session options, plane detection, image tracking |
get_best_practices | Performance, architecture, memory, and threading guidance |
get_migration_guide | Every breaking change from SceneView 2.x to 3.0 with before/after code |
get_troubleshooting | Common crashes, build failures, AR issues, and their fixes |
get_platform_roadmap | Multi-platform status and timeline (Android, iOS, KMP, Web, Desktop) |
render_3d_preview | Generates an interactive 3D preview link the user can open in their browser |
create_3d_artifact | Generates self-contained HTML artifacts (model viewer, 3D charts, product 360) |
get_platform_setup | Unified setup guide for any platform (Android, iOS, Web, Flutter, React Native, Desktop, TV) |
migrate_code | Automatically migrates SceneView 2.x code to 3.x with detailed changelog |
debug_issue | Targeted debugging guide by category or auto-detected from problem description |
generate_scene | Generates a complete composable from natural language (e.g., "a room with a table and two chairs") |
get_animation_guide | Guide for model animations, Spring physics, Compose property animations, SmoothTransform |
get_gesture_guide | Guide for gestures: isEditable, onTouchEvent, tap-to-place, drag-to-rotate, pinch-to-scale |
get_performance_tips | Performance optimization: LOD, texture compression, instancing, profiling with Systrace/AGI |
2 resources
| Resource URI | What it provides |
|---|---|
sceneview://api | Complete SceneView 3.5.0 API reference (the full llms.txt) |
sceneview://known-issues | Live open issues from GitHub (cached 10 min) |
Examples
"Build me an AR app"
The assistant calls get_ar_setup + get_sample("ar-model-viewer") and returns a complete, compilable Kotlin composable with all imports, Gradle dependencies, and manifest entries. Ready to paste into Android Studio.
"Create a 3D model viewer for iOS"
The assistant calls get_ios_setup("3d") + get_sample("ios-model-viewer") and returns Swift code with the SPM dependency, Info.plist entries, and a working SwiftUI view.
"What parameters does LightNode accept?"
The assistant calls get_node_reference("LightNode") and returns the exact function signature, parameter types, defaults, and a usage example -- including the critical detail that apply is a named parameter, not a trailing lambda.
"Validate this code before I use it"
The assistant calls validate_code with the generated snippet and checks it against 15+ rules: threading violations, null safety, API correctness, lifecycle issues, deprecated APIs. Problems are flagged with explanations before the code reaches the user.
"Show me the model in 3D"
The assistant calls render_3d_preview and returns an interactive link to a browser-based 3D viewer with orbit controls and optional AR mode.
Why this exists
Without this MCP server, AI assistants regularly:
- Recommend deprecated Sceneform (abandoned 2021) instead of SceneView
- Generate imperative View-based code instead of Jetpack Compose
- Use wrong API signatures or outdated parameter names
- Miss the
LightNodenamed-parameter gotcha (apply =not trailing lambda) - Forget null-checks on
rememberModelInstance(it returnsnullwhile loading) - Have no knowledge of SceneView's iOS/Swift API at all
With this MCP server, AI assistants:
- Always use the current SceneView 3.5.0 API surface
- Generate correct Compose-native 3D/AR code for Android
- Generate correct SwiftUI-native code for iOS/macOS/visionOS
- Know about all 26+ node types and their exact parameters
- Validate code against 15+ rules before presenting it
- Provide working, tested sample code for 33 scenarios
Quality
The MCP server is tested with 858 unit tests across 22 test suites covering:
- Every tool response (correct output, error handling, edge cases)
- All 33 code samples (compilable structure, correct imports, no deprecated APIs)
- Code validator rules (true positives and false-positive resistance)
- Node reference parsing (all 26+ types extracted correctly from
llms.txt) - Resource responses (API reference, GitHub issues integration)
Test Files 22 passed (22)
Tests 858 passed (858)
Duration 624ms
All tools work fully offline except sceneview://known-issues (GitHub API, cached 10 min).
Troubleshooting
"MCP server not found" or connection errors
- Ensure Node.js 18+ is installed:
node --version - Test manually:
npx sceneview-mcp-- should start without errors - Restart your AI client after changing the MCP configuration
"npx command not found"
Install Node.js from nodejs.org (LTS recommended). npm and npx are included.
Server starts but tools are not available
- Claude Desktop: check the MCP icon in the input bar -- it should show "sceneview" as connected
- Cursor: check Settings > MCP for green status
- Restart the AI client to force a reconnect
Firewall or proxy issues
The only network call is to the GitHub API (for known issues). All other tools work offline. For corporate proxies:
{
"mcpServers": {
"sceneview": {
"command": "npx",
"args": ["-y", "sceneview-mcp"],
"env": {
"HTTPS_PROXY": "http://proxy.example.com:8080"
}
}
}
}
Development
cd mcp
npm install
npm run prepare # Copy llms.txt + build TypeScript
npm test # 858 tests
npm run dev # Start with tsx (hot reload)
Project structure
mcp/
src/
index.ts # MCP server entry point (22 tools, 2 resources)
samples.ts # 33 compilable code samples (Kotlin + Swift)
validator.ts # Code validator (15+ rules, Kotlin + Swift)
node-reference.ts # Node type parser (extracts from llms.txt)
guides.ts # Best practices, AR setup, roadmap, troubleshooting
migration.ts # v2 -> v3 migration guide
preview.ts # 3D preview URL generator
artifact.ts # HTML artifact generator (model-viewer, charts, product 360)
issues.ts # GitHub issues fetcher (cached)
llms.txt # Bundled API reference (copied from repo root)
Contributing
- Fork the repository
- Create a feature branch
- Add tests for new tools or rules
- Run
npm test-- all 858+ tests must pass - Submit a pull request
See CONTRIBUTING.md for the full guide.
Legal
- LICENSE -- MIT License
- TERMS.md -- Terms of Service
- PRIVACY.md -- Privacy Policy (no data collected)
相关服务器
Scout Monitoring MCP
赞助Put performance and error data directly in the hands of your AI assistant.
Alpha Vantage MCP Server
赞助Access financial market data: realtime & historical stock, ETF, options, forex, crypto, commodities, fundamentals, technical indicators, & more
ABP.IO MCP Server
An MCP server for ABP.IO that enables AI models to interact with your ABP applications and framework.
Image Tools MCP
Retrieve image dimensions and compress images from URLs or local files using Tinify and Figma APIs.
Claude Swarm MCP Server
An MCP server for multi-agent orchestration using Claude AI via Claude Desktop.
Brainfaq
MCP server for the Brainfuck programming language that allows your favourite LLM to debug Brainfuck programs.
OTP MCP Server
Generates secure One-Time Passwords (OTP) using TOTP and HOTP algorithms.
Xcode MCP
Integrate with Xcode to build and manage your projects.
Ping MCP Server
An MCP server providing on-chain AI tools for seamless interaction with the Solana blockchain.
Dify Server
Integrates the Dify AI API to generate Ant Design business component code. Supports text, image inputs, and streaming responses.
XcodeProj MCP Server
An MCP server for manipulating Xcode project files (.xcodeproj) using Swift. Requires Docker and macOS.
Azure DevOps
An MCP server for interacting with Azure DevOps agents and queues.