Atlas / MCP servers / flatmarstheory / orange3-mcp

orange3-mcpSAFE

mcp/flatmarstheory/orange3-mcp

Tools for building and configuring Orange3 data-mining workflows and managing Orange3 add-ons, in two forms sharing the same core logic.

Verdict
SAFE
Grade
B
Trust score
89 /100
Exposed tools
16 6r · 7w · 3d
Transport
—
License
—
Stars
0
01

Overview

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

Tools for building and configuring Orange3 data-mining workflows and managing Orange3 add-ons, in two forms sharing the same core logic (src/orange3_mcp/workflow.py, widgets.py, addons.py):

  • MCP server (below) — for MCP clients like Claude Desktop/Code.
  • Web app — a self-contained Docker Compose deployment with a

browser GUI, for running on your own machine.

MCP server

An MCP server driven from any MCP client (e.g. Claude Desktop, Claude Code).

It does not require Orange3 itself to be installed: workflows are created and edited as in-memory graphs and serialized directly to Orange's .ows scheme XML format, so it works headless. Add-on management shells out to pip in whatever Python environment the server runs in — install Orange3 there if you want to open/run the workflows it produces.

What it does

  • Workflows: create a scheme, add widget nodes, connect their input/output channels, set

widget properties, and save/load .ows files.

  • Widget catalog: a curated set of ~50 core Orange3 widgets (Data, Visualize, Model, Evaluate,

Unsupervised) with their qualified class names and channel names. It's best-effort — verify by opening a saved workflow in Orange Canvas — and it's extensible (see below).

  • Add-ons: list installed Orange3 add-ons, browse known community add-ons, and install/remove

them via pip. Install/uninstall ask for confirmation through the MCP client's own UI (MCP "elicitation") before touching the environment.

Install

pip install -e .

Requires Python 3.10+.

Run

As a standalone process (stdio transport):

orange3-mcp

Claude Desktop / Claude Code configuration

Add to your MCP client's server config (e.g. claude_desktop_config.json):

{
"mcpServers": {
"orange3": {
"command
Read from source at commit b838fc909e64OBSERVED · 2026-10-12
02

Connect

Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.

claude-code
claude mcp add orange3-mcp --env OPENAI_API_KEY=${OPENAI_API_KEY} -- uvx orange3-mcp
claude-desktop
{
  "mcpServers": {
    "orange3-mcp": {
      "command": "uvx",
      "args": [
        "orange3-mcp"
      ],
      "env": {
        "OPENAI_API_KEY": "${OPENAI_API_KEY}"
      }
    }
  }
}
03

Exposed tools (16)

6 read · 7 write · 3 destructive. Blast radius: 3 tools can delete or overwrite — an agent that can be talked into calling a tool can be talked into calling this one.

ToolRiskDescription
add_nodewriteAdd a widget node to a workflow. `widget` may be a catalog id (e.g.
connect_nodesreadConnect an output channel of one node to an input channel of another.
create_workflowwriteCreate a new, empty Orange3 workflow and return its id.
describe_workflowreadReturn the full current state (nodes, links) of a workflow.
export_workflowreadReturn a workflow as .ows XML content for a client-side file/download.
install_addonwriteInstall (or upgrade) an Orange3 add-on via pip, after user confirmation.
list_installed_addonswriteList Orange3 add-ons currently installed in this Python environment.
list_widgetsreadList known Orange3 widgets, optionally filtered by category
list_workflowsreadList all persisted workflows known to this server.
load_workflowreadLoad an existing .ows file into a new in-memory workflow session.
remove_linkdestructiveRemove a link between two nodes.
remove_nodedestructiveRemove a node (and any links attached to it) from a workflow.
save_workflowwriteWrite an .ows file on the server and return its XML content for download.
search_addonswriteSearch known Orange3 add-ons (community plugins) by name/description substring.
set_node_propertieswriteMerge widget-specific configuration properties into a node (e.g. a file path
uninstall_addondestructiveUninstall an Orange3 add-on via pip, after user confirmation.
04

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 (1 observation(s))
Network
declared (1 observation(s))
Shell
none-observed
Dependencies
pinned
Secrets in source
none-found

Findings (2)

MEDIUMFilesystem / path · mcp.destructive_tools · CWE-22, CWE-59
remove_link, remove_node, uninstall_addon
Why it matters. 3 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

Gates applied: no_behavioural_pass, no_license.

Audited 2026-10-12 · audit v0.4.1 · source sha b838fc909e64full audit observations/trust-audit/mcp-server/flatmarstheory__orange3-mcp.json · Report an issue / request a re-scan
05

Audit history

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

DateSourceVerdictGradeScoreChange
2026-10-12b838fc909e64SAFEB89first audit
06

Questions

What is the orange3-mcp MCP server?

Tools for building and configuring Orange3 data-mining workflows and managing Orange3 add-ons, in two forms sharing the same core logic.

What tools does orange3-mcp expose?

16 in total: 6 read-only, 7 that write, and 3 that can delete or overwrite (remove_link, remove_node, uninstall_addon). Every one is listed on this page with its risk.

Is orange3-mcp 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: 3 of its tools can destroy data, so scope the token you give it to what you actually need.

What credentials does orange3-mcp need?

It reads OPENAI_API_KEY from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.

How current is this page?

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

Advertisement