Code V脚本与PDF处理服务器

用于处理Code V光学设计脚本和PDF文档的服务器,支持文件访问、分析和内容提取。

  • by eddie-rembrandt
  • JavaScript
  • 本地部署
  • 6 星标
  • 更新于
在 GitHub 查看 eddie-rembrandt/MCP-CodeV

使用说明

代码V MCP服务器

用于处理Code V光学设计脚本和PDF文档的模型上下文协议(MCP)服务器。此服务器允许Claude AI访问、分析和处理您的Code V文件和技术文档。

什么是代码V?

Code V是用于设计光学系统的光学设计和分析软件。此MCP服务器可帮助您处理Code V序列文件(.seq)和宏文件(.mac)以及相关的PDF文档。

特性

  • Code V脚本管理

    • 列出项目目录中的所有Code V文件
    • 读取并显示Code V脚本内容
    • 分析Code V语法和命令用法
    • 在所有文件中搜索特定命令
  • PDF处理

    • 列出PDF文档
    • 提取并阅读PDF文本内容
    • 访问技术文档
  • 资源访问

    • 将代码V文件作为MCP资源公开
    • 将PDF文件作为MCP资源公开

先决条件

  • Node.js 18或更高版本
  • npm或纱线
  • Ubuntu/Linux环境(或Windows上的WSL)

安装

1.克隆或创建项目

# If you have a git repository
git clone <your-repo-url>
cd codev-mcp-server

# Or if you're setting up locally
mkdir -p ~/codev-mcp-server
cd ~/codev-mcp-server

2.安装依赖项

npm install

3.建设项目

npm run build

4.设置您的目录

为您的Code V文件和PDF创建目录:

mkdir -p ~/codev-projects
mkdir -p ~/codev-pdfs

或者使用环境变量设置自定义路径(请参阅下面的配置)。

配置

服务器使用环境变量来定位您的文件:

  • CODEV_DIR:包含代码V文件的目录(默认: ~/codev-projects)
  • PDF_DIR:包含PDF文件的目录(默认: ~/codev-pdfs)

设置环境变量

添加到您的 ~/.bashrc 或 ~/.zshrc:

export CODEV_DIR="/path/to/your/codev/files"
export PDF_DIR="/path/to/your/pdf/files"

然后重新加载:

source ~/.bashrc

连接到克劳德桌面

1.安装克劳德桌面

从下载并安装Claude Desktop claude.ai

2.配置克劳德桌面

编辑Claude Desktop配置文件:

在Linux上:

nano ~/.config/Claude/claude_desktop_config.json

在macOS上:

nano ~/Library/Application\ Support/Claude/claude_desktop_config.json

在Windows上:

%APPDATA%\Claude\claude_desktop_config.json

3.添加MCP服务器配置

将您的服务器添加到配置中:

{
  "mcpServers": {
    "codev": {
      "command": "node",
      "args": ["/full/path/to/codev-mcp-server/build/index.js"],
      "env": {
        "CODEV_DIR": "/home/yourusername/codev-projects",
        "PDF_DIR": "/home/yourusername/codev-pdfs"
      }
    }
  }
}

重要提示: 使用绝对路径!

4.重新启动克劳德桌面

完全关闭并重新打开Claude Desktop以使更改生效。

使用示例

连接后,您可以问Claude:

代码V操作

"List all my Code V files"
"Read the lens_design.seq file"
"Analyze the syntax of my doublet.seq script"
"Search for all RD commands in my Code V files"
"What surfaces are defined in my zoom_lens.seq?"

PDF操作

"List all PDF files"
"Read the contents of optical_design_guide.pdf"
"Find information about aberrations in my PDF documentation"

综合分析

"Compare the lens design in doublet.seq with the theory in my optics_textbook.pdf"
"What Code V commands are used in my project and what do they do according to my documentation?"

可用工具

服务器为Claude提供了以下工具:

  1. list_codev_files -列出所有.seq和.mac文件
  2. read_codev_file -读取特定的Code V文件
  3. analyze_codev_syntax -分析命令和结构
  4. list_pdf_files -列出所有PDF文件
  5. read_pdf_content -从PDF中提取文本
  6. 搜索_开发_命令 -搜索特定命令

文件组织

按如下方式组织文件:

~/codev-projects/
├── lens_design.seq
├── doublet.seq
├── zoom_lens.seq
└── macros/
    └── optimization.mac

~/codev-pdfs/
├── codev_reference_manual.pdf
├── optical_design_textbook.pdf
└── project_specifications.pdf

故障排除

服务器未出现在Claude中

  1. 检查路径是否正确 claude_desktop_config.json 是绝对的
  2. 验证构建是否成功: npm run build
  3. 检查克劳德桌面日志:
    • Linux: ~/.config/Claude/logs/
    • macOS: ~/Library/Logs/Claude/
    • 窗户: %APPDATA%\Claude\logs\

未找到文件

  1. 验证目录是否存在: ls -la ~/codev-projects
  2. 检查环境变量: echo $CODEV_DIR
  3. 确保文件具有正确的扩展名(.seq、.mac、.pdf)
  4. 检查文件权限: chmod 644 ~/codev-projects/*

权限错误

chmod +x build/index.js
chmod -R 755 ~/codev-projects
chmod -R 755 ~/codev-pdfs

发展

观看模式

对于自动重建的开发:

npm run watch

本地测试

直接测试服务器:

npm start

然后键入stdin(每行后按Enter键):

{"jsonrpc": "2.0", "id": 1, "method": "tools/list"}

代码V语法参考

此服务器可以帮助执行以下常见代码V命令:

  • 研发 -曲率半径
  • 泰国 -厚度
  • GLA -玻璃材质
  • 先进光子源 -光圈停止
  • WL -波长
  • 方向包围盒 -物体距离
  • 不良反应 -自动化设计

扩展服务器

添加新工具

编辑 src/index.ts 并添加到 tools 数组in ListToolsRequestSchema:

{
  name: "your_tool_name",
  description: "What your tool does",
  inputSchema: {
    type: "object",
    properties: {
      // your parameters
    },
  },
}

然后在 CallToolRequestSchema switch语句。

添加更好的PDF处理

对于生产用途,考虑添加 pdf-parse:

npm install pdf-parse
npm install --save-dev @types/pdf-parse

然后更新 extractPdfText 函数使用正确的PDF解析。

安全说明

  • 服务器仅访问配置目录中的文件
  • 无需网络访问
  • 所有处理都在本地进行
  • 服务器从不修改文件

贡献

欢迎投稿!拜托:

  1. 复刻仓库
  2. 创建要素分支
  3. 进行更改
  4. 提交拉取请求

许可证

MIT许可证-有关详细信息,请参阅许可证文件

支持

对于问题或疑问:

  • 检查上面的故障排除部分
  • 审查MCP文件:https://modelcontextprotocol.io
  • 检查Claude Desktop日志中的错误消息

版本历史记录

  • 1.0.0 -首次发布
    • 代码V文件列表和读取
    • PDF文本提取
    • 命令搜索功能
    • 语法分析

致谢

  • 使用模型上下文协议SDK构建
  • 专为光学设计工作流程而设计
  • 支持Code V光学设计软件