1. Conduid
  2. Developer Tools
  3. Origin MCP
MCP server · Developer Tools

Origin MCP

通过配置MCP能够在opencode上调用origin进行画图

Unclaimed MIT devtools
34Low

Scored 11 days ago · breakdown

About Origin MCP

Origin MCP is an MCP server published by ZHANG-923-ZE in the Developer Tools category: 通过配置MCP能够在opencode上调用origin进行画图.

The repository has 8 stars and 1 forks, with the last commit 5 months ago. Recent commit activity is the strongest signal that reported issues will get attention.

Install

From source
git clone https://github.com/ZHANG-923-ZE/origin-MCP

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about Origin MCP

Powered by Claude · Grounded in docs

I know everything about Origin MCP. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

Static checks derived from the repository 6 days ago. Heuristics on the source, not an audit.

  • ✓README presentThe repository ships documentation.
  • ✓License declaredUsable under a stated license.
  • ✓Tests presentA test suite exists in the repository.
  • !Dependencies pinnedNo lockfile. Installs can pull different code over time.
  • ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.

1 check has not been run yet.

Releases

v0.1.0v0.1.0 — Initial Release · 31 May 2026Initial release of MCP OriginPro — MCP server for Origin 2025b scientific graphing via natural language. See README for full documentation.

README

MCP OriginPro — 自然语言驱动 Origin 2025b 科学绘图

MCP

MCP OriginPro 是一个 MCP (Model Context Protocol) 服务器,让 AI 编程助手(OpenCode、Claude Desktop 等)通过自然语言控制 Origin 2025b。你只需用中文或英文描述想要的图表,AI 就能自动创建、定制、分析和导出发表级科学图表 —— 全程无需触碰 Origin GUI。

26 个工具 · 52+ 种图表 · 曲线拟合(12 模型)· 统计分析 · 多格式导出


项目概述

在科研工作中,用 Origin 画图通常需要在 GUI 中反复点击菜单、调整参数。MCP OriginPro 将这个过程完全自动化:AI 助手理解你的自然语言指令,翻译成 originpro COM API 调用,直接在 Origin 中生成图表。

典型场景:

"帮我把 data.csv 导入 Origin,用第一列做 X 轴、第二列做 Y 轴画散点图,标题写'电压-电流关系曲线',坐标轴标注中文,线性拟合后导出 PNG。"


核心功能

类别 工具数 工具 功能
系统 1 ping 连接检测(必须先调用)
数据 4 create_worksheet set_column_data import_csv get_column_info 创建工作表、导入 CSV/TXT/DAT、设置列数据
绘图 5 create_plot create_multi_curve_plot create_grouped_plot create_multi_panel_plot add_plot_to_graph 统一绘图入口,支持 52+ 图表类型
定制 6 set_axis_format set_axis_labels set_graph_title set_plot_style set_legend add_text_annotation 坐标轴、标签、标题、样式、图例、文本注释
分析 4 fit_linear fit_nonlinear fit_peak compute_statistics 线性拟合、非线性拟合(12 模型)、寻峰、描述统计
导出 2 export_graph save_project 导出 PNG/SVG/PDF/EPS/EMF/JPG/TIF/BMP、保存 .opju
项目 3 list_graphs list_worksheets get_graph_snapshot 查看当前 Origin 会话中的图表和工作表

支持的绘图类型

2D 基础: line, scatter, line_symbol, column, bar, area, pie
2D 堆叠: stack_column, stack_bar, stack_area
2D 统计: box, histogram, error_bar, x_error_bar
2D 高级: bubble, color_bubble, float_bar, high_low_close, ohlc_candlestick, vector_xyxy, vector_xyam
2D 专题: polar, polar_xr_theta, ternary, smith_chart, windrose, dendrogram, waterfall_2d, double_y
3D: 3d_scatter, 3d_trajectory, 3d_surface, 3d_mesh, 3d_wireframe, 3d_bars, 3d_ribbons, 3d_walls, 3d_waterfall, 3d_vector, 3d_scatter_error
等高线/热图: contour, contour_filled, contour_line, contour_gray, heatmap, image, ternary_contour
多面板: multi_panel_2v, multi_panel_2h, multi_panel_4, multi_panel_9, multi_panel_stack

曲线拟合与统计

分析功能:

  • 线性回归(支持固定斜率/截距、置信带、预测带)
  • 非线性拟合(Gauss, Lorentz, Boltzmann, ExpDecay, Poly, Sine 等 12 种模型)
  • 多峰拟合(自动寻峰 + Gauss/Lorentz 拟合)
  • 描述统计(均值、标准差、最小值、最大值、中位数、总和、偏度、峰度)

前置要求

要求 说明
Windows 10 / 11 Origin 2025b 仅支持 Windows
Origin 2025b 必须安装(Origin 2024 部分兼容)
COM 自动化 在 Origin 中:工具 → 系统变量 → 找到 opj_allow_automation → 设为 1 → 重启 Origin
Python 3.10+ 运行服务器所需
uv(推荐) 快速 Python 包管理工具;也可用 pip

关键步骤: COM 自动化默认关闭。不启用则所有工具都会报 origin_not_running。

验证 COM 是否正常:

python -c "import originpro; print('originpro OK')"

安装与部署

1. 克隆项目

git clone https://github.com/ZHANG-923-ZE/origin-MCP.git
cd origin-MCP

2. 安装依赖

uv pip install -e .          # 基础安装
uv pip install -e ".[dev]"   # 含开发工具 (pytest, ruff, pyright)

originpro 随 Origin 2025b 安装提供,不在 PyPI 上。确保 Origin 已安装且其 Python 目录在 sys.path 中。

3. 验证服务器

uv run python -c "from mcp_origin.server import mcp; print('Server:', mcp.name)"
# 输出: Server: OriginPro

4. 配置 OpenCode

编辑 .opencode/opencode.json(项目根目录或全局 ~/.config/opencode/opencode.json):

{
  "mcpServers": {
    "originpro": {
      "command": "uv",
      "args": ["run", "--directory", "F:/LearnFILE/MCP", "mcp", "dev", "server.py"]
    }
  }
}

5. 配置 Claude Desktop

编辑 Claude Desktop 配置文件:

{
  "mcpServers": {
    "originpro": {
      "command": "uv",
      "args": ["run", "--directory", "C:/path/to/origin-MCP", "mcp", "run", "server.py"]
    }
  }
}

6. 启动 Origin 2025b

在使用任何绘图工具前,确保 Origin 2025b 已启动。MCP 服务器通过 COM 协议与 Origin 通信,Origin 必须处于运行状态。


工作原理

整体架构

AI 助手 (自然语言)
    │
    ▼
FastMCP Server (server.py)     ← MCP 协议层
    │
    ├── tools/data.py           ← 数据准备
    ├── tools/plot.py           ← 统一绘图引擎 (create_plot)
    ├── tools/customize.py      ← 图表定制
    ├── tools/analysis.py       ← 曲线拟合 & 统计
    ├── tools/export.py         ← 导出 & 保存
    ├── tools/project.py        ← 项目管理
    │
    ├── core/connection.py      ← COM 连接管理 (惰性加载)
    ├── core/errors.py          ← 异常体系 (4 类)
    └── core/constants.py       ← 绘图类型映射 (PLOT_TYPE_MAP)
    │
    ▼
Origin 2025b COM API            ← originpro 包

分层设计

server.py (FastMCP 包装器)  ← 依赖 tools 和 core
    │
tools/*.py (纯函数)          ← 依赖 core 和 utils
    │
core/ (不导入 MCP)            ← 不依赖任何内部模块
  • server.py 负责 MCP 协议层的 @mcp.tool() 注册,将 AI 调用转发给 tools 层
  • tools/*.py 实现具体的业务逻辑,每个函数遵循 ensure_origin() → validate → operate → format_response() 模式
  • core/connection.py 管理 Origin COM 连接,采用惰性加载策略(首次调用时才导入 originpro)
  • core/errors.py 定义 4 类结构化异常,每类异常都携带 hint 字段供 AI 自动修正

异常处理

所有错误继承自 OriginProError,返回结构化 JSON(success, error, hint, details)。AI 可根据 hint 字段自动修正参数重试:

异常类型 触发条件 hint 示例
OriginNotRunningError COM 不可用 "请启动 Origin 2025b"
ToolExecutionError COM API 调用失败 具体 API 错误信息
ValidationError 参数无效 有效值列表或修正建议

统一绘图入口

create_plot(plot_type="scatter", ...) 是核心绘图工具。只需传入 plot_type 字符串,其余参数均有默认值。支持的绘图类型定义在 core/constants.py 的 PLOT_TYPE_MAP 中(48+ 条目)。


项目结构

origin-MCP/
├── server.py                  # MCP 服务器入口 (thin wrapper)
├── run_server.py              # 独立运行脚本
├── pyproject.toml             # 项目配置 (hatchling)
├── LICENSE                    # MIT 许可证
├── README.md                  # 本文件
├── AGENTS.md                  # AI 代理开发指南
├── sample.csv                 # 示例数据文件
├── src/mcp_origin/
│   ├── __init__.py            # __version__ = "0.1.0"
│   ├── server.py              # FastMCP 实例 + @mcp.tool() 注册
│   ├── utils.py               # parse_color, safe_path, format_response
│   ├── core/
│   │   ├── connection.py      # Origin COM 连接管理
│   │   ├── errors.py          # 异常层级 (4 类)
│   │   └── constants.py       # PLOT_TYPE_MAP, 颜色/符号/线型常量
│   └── tools/
│       ├── data.py            # 数据准备工具 (4)
│       ├── plot.py            # 绘图工具 (5) — 统一 create_plot 引擎
│       ├── customize.py       # 定制工具 (6)
│       ├── analysis.py        # 分析工具 (4)
│       ├── export.py          # 导出工具 (2)
│       └── project.py         # 项目管理工具 (3)
└── tests/                     # 测试目录
    ├── __init__.py
    └── conftest.py

使用示例

典型工作流

ping                          → 检查连接
import_csv("data.csv")        → 导入数据
create_plot(                  → 创建图表
  plot_type="scatter",
  x_col=0, y_col=1
)
set_axis_labels(              → 设置坐标轴标签
  x_label="时间 (s)",
  y_label="电压 (V)"
)
set_graph_title(              → 设置标题
  title="电压-时间曲线"
)
fit_linear()                  → 线性拟合
export_graph(                 → 导出图片
  file_path="./output.png"
)

自然语言示例

对 AI 助手说:

散点图 + 线性拟合:

"导入 data.csv,以 col(A) 为 X、col(B) 为 Y 画散点图,标题'电压-电流特性曲线',线性拟合并显示 R²,导出为 PNG"

多曲线对比图:

"用多曲线图对比三组实验数据,X 轴用 col(A),Y 轴用 col(B)/col(C)/col(D),分别标注为'对照组'、'实验组1'、'实验组2'"

3D 曲面图:

"画 3D 曲面图,X=col(A) Y=col(B) Z=col(C),用 Jet 色图,标题'温度场分布'"


常见问题

问题 原因 解决方法
ping 返回 origin_not_running Origin 2025b 未启动 启动 Origin 2025b
ping 返回 originpro_not_installed originpro 不在 Python 路径 安装 Origin 2025b 或添加其 Python 目录到 PYTHONPATH
"No active worksheet" 未创建数据容器 先调用 create_worksheet
"Column index out of range" 列号超出范围 调用 get_column_info 检查列布局
修改了错误的工作表 未指定 worksheet_name 总是显式传入 worksheet_name
数据点超出坐标轴范围 axis.scale 操作问题 create_plot 已自动处理;直接调用 originpro 时注意 gl.rescale()
中文参数报错 参数名必须用英文 只有 title、x_label、y_label 和文本注释支持中文
调用工具前未 ping 不知道 Origin 是否在线 总是先 ping,检查 success 字段

许可证

MIT License — Copyright (c) 2026 ZHANG-923-ZE

详见 LICENSE 文件。

README fetched from the repository 6 days ago. The original is authoritative.

Questions

About Origin MCP

How do I install Origin MCP?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Origin MCP safe to use with an AI agent?

Its trust score is 34 out of 100 (low). It passes 4 of the 5 static security checks run so far; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Origin MCP still maintained?

Yes — the latest release is v0.1.0 (31 May 2026), and the last commit was 5 months ago. The repository has 8 stars.