origin-MCP
Provides tools for creating, customizing, and exporting scientific plots and performing data analysis using Origin 2025b, controlled via natural language.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@origin-MCPImport data.csv, plot scatter with linear fit, export PNG"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP OriginPro — 自然语言驱动 Origin 2025b 科学绘图
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。"
Related MCP server: origin-mcp
核心功能
类别 | 工具数 | 工具 | 功能 |
系统 | 1 |
| 连接检测(必须先调用) |
数据 | 4 |
| 创建工作表、导入 CSV/TXT/DAT、设置列数据 |
绘图 | 5 |
| 统一绘图入口,支持 52+ 图表类型 |
定制 | 6 |
| 坐标轴、标签、标题、样式、图例、文本注释 |
分析 | 4 |
| 线性拟合、非线性拟合(12 模型)、寻峰、描述统计 |
导出 | 2 |
| 导出 PNG/SVG/PDF/EPS/EMF/JPG/TIF/BMP、保存 .opju |
项目 | 3 |
| 查看当前 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 中:工具 → 系统变量 → 找到 |
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-MCP2. 安装依赖
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: OriginPro4. 配置 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 示例 |
| COM 不可用 | "请启动 Origin 2025b" |
| COM API 调用失败 | 具体 API 错误信息 |
| 参数无效 | 有效值列表或修正建议 |
统一绘图入口
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 色图,标题'温度场分布'"
常见问题
问题 | 原因 | 解决方法 |
| Origin 2025b 未启动 | 启动 Origin 2025b |
| originpro 不在 Python 路径 | 安装 Origin 2025b 或添加其 Python 目录到 |
"No active worksheet" | 未创建数据容器 | 先调用 |
"Column index out of range" | 列号超出范围 | 调用 |
修改了错误的工作表 | 未指定 | 总是显式传入 |
数据点超出坐标轴范围 |
|
|
中文参数报错 | 参数名必须用英文 | 只有 |
调用工具前未 | 不知道 Origin 是否在线 | 总是先 |
许可证
MIT License — Copyright (c) 2026 ZHANG-923-ZE
详见 LICENSE 文件。
This server cannot be deployed
Maintenance
Related MCP Connectors
AI access to Quadratic spreadsheets: open files, run Python/SQL, query connected databases.
The statistical analyst in your AI chat — validated, citable, re-runnable analysis of your data.
Renders interactive Chart.js charts and dashboards inline in AI conversations.
- mcpOAuthio.scispot
Turn any LLM into your lab assistant: search samples, track experiments, analyze data with AI.
Related MCP Servers
- AlicenseAqualityDmaintenanceProvides machine learning researchers with tools for creating publication-quality scientific visualizations, statistical plots, and 2D data representations. It streamlines the research workflow by enabling AI assistants to generate complex figures from CSV, JSON, or direct data inputs.89MIT
- AlicenseAqualityAmaintenanceEnables AI assistants to control Origin/OriginPro on Windows, including data import, worksheet editing, graphing, analysis, and figure export.25139 PyPI101MIT
- AlicenseNot gradedqualityCmaintenanceBridge between AI assistants and OriginLab, enabling data import, plotting, analysis, and export through natural language commands.80MIT
- AlicenseAqualityBmaintenanceEnables AI assistants to control OriginLab Origin Pro via COM automation for data analysis, graphing, and styling, with real-time GUI updates.56101 PyPI41MIT