PP

pardovot/pixinsight-mcp

开发工具

本页由 AI 翻译,技术细节请以原文为准。 查看原文

4 stars 4 forks 质量 82 趋势 26MIT

MCP Server for controlling PixInsight astrophotography processing via AI assistants

概览

An MCP server that lets an AI assistant drive PixInsight: open images, measure them, run any installed process, read the results back. PixInsight stays responsive while it works, so you can watch and intervene. Cross-platform: Windows, macOS and Linux. Any MCP client works. This is a stock stdio server with no client-specific code. Claude Desktop, Cursor, Windsurf and anything else that takes an mcp.json: On Windows, if a client cannot resolve npx, use "command": "cmd" with "args": ["/c", "npx", "-y", "@pardovot/pixinsight-mcp"]. Build and sign it from source, see Building from source below. Process > Utilities > MCP Watcher > Start, then ask your assistant to list your open images. If it answers, you are connected. Requires PixInsight 1.9.4+ (V8 engine), Node 18+, and an MCP client.

README

以下为原文 README 节选,完整内容请查看原文。

PixInsight MCP

An MCP server that lets an AI assistant drive PixInsight: open images, measure them, run any installed process, read the results back. PixInsight stays responsive while it works, so you can watch and intervene.

Cross-platform: Windows, macOS and Linux.

Install

1. MCP server. Any MCP client works. This is a stock stdio server with no client-specific code.

Claude Code:

claude mcp add pixinsight -- npx -y @pardovot/pixinsight-mcp

Claude Desktop, Cursor, Windsurf and anything else that takes an mcp.json:

{
  "mcpServers": {
    "pixinsight": { "command": "npx", "args": ["-y", "@pardovot/pixinsight-mcp"] }
  }
}

Codex CLI, in ~/.codex/config.toml:

[mcp_servers.pixinsight]
command = "npx"
args = ["-y", "@pardovot/pixinsight-mcp"]

On Windows, if a client cannot resolve npx, use "command": "cmd" with "args": ["/c", "npx", "-y", "@pardovot/pixinsight-mcp"].

2. PixInsight module. Build and sign it from source, see Building from source below.

3. Start it. Process > Utilities > MCP Watcher > Start, then ask your assistant to list your open images. If it answers, you are connected.

Requires PixInsight 1.9.4+ (V8 engine), Node 18+, and an MCP client.

Tools

24 tools. Bold ones carry the work.

Category Tools
Execution run_process, get_process_parameters, run_recipe
Images list_open_images, open_image, save_image, close_image, get_image_statistics
Measurement get_noise, get_background_gradient, get_background_neutrality, get_star_metrics, get_structure_color
Rendering render_view, render_critic_pack
History get_history, get_full_history, undo, redo, snapshot, restore
Instances list_instances, use_instance
Export export_container

run_process runs any process by class name, including third-party ones you have installed, so nothing needs adding when you install a new tool.

Measurement tools exist so settings come from your frame instead of a tutorial. Two traps: get_noise returns an MRS estimate, stdDev is signal-dominated on astro frames and will lie to you. get_background_neutrality needs mode:'poststretch' after stretching, the sky-band metric is only valid pre-curve.

Definitions live in src/tools/*.ts. Verified gotchas: docs/facts.md.

How it works

  MCP client
    │  MCP (stdio)
  MCP server                    src/ (TypeScript)
    │  file bridge              ~/.pixinsight-mcp/bridge/{commands,results}
  MCPWatcher-pxm.dll            pcl::Timer on PixInsight's event loop
    │  MetaModule::EvaluateScript
  Embedded JS handlers          generated from pjsr/pixinsight-mcp-watcher.js
  PixInsight

PixInsight has no socket or HTTP API, so a file bridge is the only route in. Round trip is about one poll interval, 300 ms by default.

在 GitHub 查看完整 README

安装

npx -y @pardovot/pixinsight-mcp
新手?先看 mcpskill.org 教程 →

配置

{ "mcpServers": { "pixinsight": { "command": "npx", "args": ["-y", "@pardovot/pixinsight-mcp"] } } }