Atlas / MCP servers / always-tinkering / Rhino

RhinoSAFE

mcp/always-tinkering/rhino-2

RhinoMCP connects Rhino to Claude AI through the Model Context Protocol (MCP), enabling AI-assisted 3D modeling and architectural design.

Verdict
SAFE
Grade
B
Trust score
89 /100
Exposed tools
7 2r · 4w · 1d
Transport
—
License
—
Stars
57
01

Overview

From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.

⚠️ UNDER CONSTRUCTION ⚠️ This project is currently under active development and is not yet in working order. The Rhino plugin is experiencing issues with creating objects. We are actively seeking support from the community to help resolve these issues. If you have experience with Rhino API development, C# plugins, or MCP integration, please consider contributing. Contact us by opening an issue on GitHub.

A Model Context Protocol (MCP) server implementation for Rhino 3D, allowing Claude to create and manipulate 3D objects.

Overview

This project implements an MCP server for Rhino 3D that enables AI assistants like Claude to interact with Rhino through the Model Context Protocol. The server allows for the creation and manipulation of 3D objects directly from the AI interface.

System Architecture

The system consists of Python components that implement the MCP server and C# components that integrate with Rhino. Here's an overview of how the system components interact:

graph TD
%% Client Applications
client[Client Applications] --> socketProxy

%% Socket Proxy
subgraph "Python Socket Proxy"
socketProxy[socket_proxy.py] --> daemonServer
end

%% Daemon Server
subgraph "Python Daemon Server"
daemonServer[daemon_mcp_server.py] --> combinedServer
end

%% Combined MCP Server
subgraph "Python Combined MCP Server"
combinedServer[combined_mcp_server.py]
mcp[FastMCP] --> tools
combinedServer --> mcp
combinedServer --> rhinoConn
subgraph "MCP Tools"
tools[MCP Tool Methods]
end
rhinoConn[RhinoConnection]
end

%% Rhino Plugin Components
subgraph "C# Rhino Plugin"
rhinoPlugin[RhinoMcpPlugin.cs]
socketServer[RhinoSocketServer.cs]
utilities[RhinoUtilities.cs]
commands[RhinoMcpCommand.cs]

rhinoPlugin --> socketServer
rhinoPlu
Read from source at commit 9e5cf5ef9f56OBSERVED · 2026-10-08
02

Exposed tools (7)

2 read · 4 write · 1 destructive. Blast radius: 1 tool can delete or overwrite — an agent that can be talked into calling a tool can be talked into calling this one.

ToolRiskDescription
clear_scenedestructive
create_boxwrite
create_cylinderwrite
create_layerwrite
create_spherewrite
get_scene_inforead
log_claude_messageread
03

Trust audit

SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.

LayerWhat it checksResult
L0Provenance & inventoryPASS
L1Static analysis of the codePASS
L2Instruction surface (what it tells the agent)PASS
L3Class-specific surfaceWARN
L4Behavioural (sandbox)SKIPPED

What the source does

Filesystem
declared (6 observation(s))
Network
none-observed
Shell
declared (1 observation(s))
Dependencies
pinned
Secrets in source
none-found

Findings (4)

MEDIUMFilesystem / path · mcp.destructive_tools · CWE-22, CWE-59
clear_scene
Why it matters. 1 tool(s) can delete or overwrite
Fix. prefer a read-only mode or scoped tokens; the page states the blast radius
LOWInventory / provenance · inv.no_license · CWE-1104
Why it matters. no LICENSE file and no repo licence
Fix. add a licence
INFOPrompt injection · prompt.credential_read · CWE-94, CWE-1427
mcpLLM.txt:3352
load_dotenv()  # load environment variables from .env
Why it matters. asks the agent to read credentials
INFOSupply chain · prompt.pipe_to_shell · CWE-829, CWE-1357
mcpLLM.txt:4333
curl -LsSf https://astral.sh/uv/install.sh | sh

Gates applied: no_behavioural_pass, no_license.

Audited 2026-10-08 · audit v0.4.1 · source sha 9e5cf5ef9f56full audit observations/trust-audit/mcp-server/always-tinkering__rhino-2.json · Report an issue / request a re-scan
04

Audit history

Every audit this server has had. A grade with a past is a grade somebody is still checking.

DateSourceVerdictGradeScoreChange
2026-10-089e5cf5ef9f56SAFEB89first audit
05

Questions

What is the Rhino MCP server?

RhinoMCP connects Rhino to Claude AI through the Model Context Protocol (MCP), enabling AI-assisted 3D modeling and architectural design.

What tools does Rhino expose?

7 in total: 2 read-only, 4 that write, and 1 that can delete or overwrite (clear_scene). Every one is listed on this page with its risk.

Is Rhino safe to connect to an agent?

The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean server reads B. Separately from the audit: 1 of its tools can destroy data, so scope the token you give it to what you actually need.

What credentials does Rhino need?

No credential environment variables were found in its source, so it appears to need none.

How current is this page?

The grade is for one exact copy of the source (9e5cf5ef9f56), read on 2026-10-08. The repository is watched and re-audited when it changes.

Advertisement