MATLAB MCP桥接代理

一个通过SSH隧道连接Ubuntu上的Claude Code与Windows上的MATLAB MCP服务器的桥接代理服务,支持HTTP/SSE协议和模拟测试模式。

  • by gptcompany
  • JavaScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 gptprojectmanager/matlab-mcp-bridge

使用说明

MATLAB MCP桥

一个桥接代理,允许Claude Code(Ubuntu)通过SSH隧道访问Windows上的MATLAB MCP服务器。

建筑

Claude Code (Ubuntu) → MCP Bridge Proxy (Ubuntu:8085) → SSH Tunnel → MATLAB MCP (Windows)

当前状态

✅ 已执行 :

  • 在端口8085上运行的代理桥
  • MCP 协议的 HTTP/SSE 支持
  • 用于测试的模拟模式
  • 更新的 Claude Code 配置
  • 脚本测试

⏳ 待定 :

  • SSH 连接到 Windows <IP_ADDRESS> (需要配置)
  • 与 MATLAB 服务器实时集成

快速设置

1. 启动桥 (模拟模式)

cd <PROJECT_PATH>
./start.sh

2. 功能测试

npm test

3.验证克劳德码

桥梁已配置为 .claude.json:

"matlab-server": {
  "type": "sse",
  "url": "http://localhost:8085/sse"
}

设置Windows MATLAB服务器

Windows先决条件

  1. SSH服务器 安装和配置
  2. MATLAB语言 安装(例如: <MATLAB_DRIVE>:\MATLAB\bin\matlab.exe)
  3. MATLAB MCP服务器 安装在 C:\Users\%USERNAME%\matlab-mcp-server
  4. Node.js 已安装
  5. 防火墙 配置为允许SSH

启动 MATLAB Server(Windows)

高级PowerShell脚本(推荐)

⚠️ 需要管理员权限

# Setup completo con installazione automatica e servizio Windows
# Esegui PowerShell come Amministratore
.\start-matlab-server.ps1 -InstallService

# Setup manuale (senza servizio)
.\start-matlab-server.ps1

# Reinstallazione forzata
.\start-matlab-server.ps1 -ForceReinstall -InstallService

# Con percorso MATLAB personalizzato
.\start-matlab-server.ps1 -MatlabPath "<MATLAB_PATH>" -InstallService

# Rimozione servizio
.\start-matlab-server.ps1 -UninstallService

✨ 高级脚本功能:

  • 🔄 自动安装 Git,Node.js,MATLAB MCP服务器
  • 🔧 Windows服务 启动时自动启动
  • 🎯 自动检测 MATLAB 路径
  • ✅ 完整的管理 安装,启动,删除
  • 🛡️ 安全检查 管理员特权

Windows 服务 管理

# Comandi servizio Windows
Start-Service -Name "MatlabMCPServer"
Stop-Service -Name "MatlabMCPServer"  
Get-Service -Name "MatlabMCPServer"

手动选项

# Imposta variabile ambiente
set MATLAB_PATH=<MATLAB_DRIVE>:\MATLAB\bin\matlab.exe

# Naviga alla directory del server
cd C:\Users\%USERNAME%\matlab-mcp-server

# Avvia il server
node build\index.js

Windows SSH 配置

  1. 安装 OpenSSH 服务器:

    Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0
    
  2. 设置并启动SSH:

    Start-Service sshd
    Set-Service -Name sshd -StartupType 'Automatic'
    
  3. 配置防火墙 :

    netsh advfirewall firewall add rule name="OpenSSH Port 22" dir=in action=allow protocol=TCP localport=22
    
  4. 配置 SSH 密钥 :

    # Crea directory .ssh
    mkdir C:\Users\%USERNAME%\.ssh
    
    # Per utenti amministratori, usa:
    mkdir C:\ProgramData\ssh
    # E copia la chiave pubblica in:
    # C:\ProgramData\ssh\administrators_authorized_keys
    

连接测试(Ubuntu)

# Test connettività di base
./connect-matlab.sh

# Test SSH manuale
ssh -i ~/.ssh/matlab_key <USERNAME>@<WINDOWS_IP_ADDRESS> "echo 'Connected successfully'"

# Test tunnel SSH
ssh -L 8086:localhost:3000 <USERNAME>@<WINDOWS_IP_ADDRESS>

项目结构

/<PROJECT_PATH>/
├── server.js              # Bridge proxy principale
├── package.json            # Dipendenze Node.js
├── test.js                # Suite di test
├── start.sh               # Script di avvio
├── connect-matlab.sh      # Script connessione SSH
├── .env.example           # Configurazione esempio
├── bridge.log             # Log operativo
└── README.md              # Documentazione

配置

环境变量 (.env)

PORT=8085
MATLAB_HOST=<WINDOWS_IP_ADDRESS>
MATLAB_SSH_PORT=22
MATLAB_SSH_USER=<USERNAME>
MATLAB_SSH_PASSWORD=        # Optional
MATLAB_SSH_KEY_PATH=        # Preferito

MATLAB 工具 可用

桥接器显示以下 MATLAB 工具:

  1. matlabexecute 运行 MATLAB 代码
  2. matlab_script -MATLAB通用脚本
  3. 其他原始服务器特定工具

故障排除

Windows 无法访问

# Verifica connettività
ping <WINDOWS_IP_ADDRESS>

# Verifica porta SSH
nc -z <WINDOWS_IP_ADDRESS> 22

桥没有响应

# Verifica processo
ps aux | grep "node server.js"

# Verifica porta
ss -tulpn | grep :8095

# Restart bridge
pkill -f "node server.js"
./start.sh

Claude Code 不认识

  1. 重新启动 Claude Code
  2. 检查配置 .claude.json
  3. 控制日志桥

测试

自动测试

npm test

测试手册

# Health check
curl http://localhost:8085/health

# SSE endpoint
curl -N http://localhost:8085/sse

# MCP request
curl -X POST http://localhost:8085/mcp \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"tools/list","id":"test"}'

日志记录

日志可在:

  • bridge.log -日志桥代理
  • 控制台输出-实时记录

下一步

  1. 在 Windows 上配置 SSH 服务器
  2. 测试SSH隧道连接
  3. 更改桥梁以实现实时连接
  4. 高级错误处理
  5. 添加监控和自动重新启动

安全

  • 使用 SSH 密钥代替密码
  • 正确配置防火墙
  • 验证输入MCP
  • 访问监控

支持

有关问题或改进,请检查:

  1. 系统日志
  2. 网络连接
  3. SSH 配置
  4. MATLAB 进程状态