Operate PixInsight from any MCP agent. Community project, not affiliated with Pleiades Astrophoto
Runs on your machine from its package; the steps are below.
At most: moves money, runs code or commands, deletes data, or sends messages for you.
Odel charges nothing per call. The publisher may charge for its own service.
Runs locally over stdio
This server isn't hosted — your MCP client launches it from a package registry. Use one of the commands below, or drop the config into your client (e.g. Claude Desktop).
Run
npx -y pixinsight-connector
MCP client config
{
"mcpServers": {
"pixinsight-connector": {
"command": "npx",
"args": [
"-y",
"pixinsight-connector"
]
}
}
}An MCP connector that lets any AI agent operate PixInsight: about 80 PixInsight operations as tools, for chat sessions and the skills that guide them. New here? Start with the Quick start.
Community project, not affiliated with or endorsed by Pleiades Astrophoto. PixInsight® is a registered trademark of Pleiades Astrophoto S.L.
The connector knows how to operate PixInsight, never what makes a good picture. No pipeline, no ordering, no recommended values, no verdicts: every tool takes the values that shape the image as inputs, and every measurement returns numbers. The knowledge (which tools, in what order, with which values, what counts as good enough) lives in skills: markdown in your own repositories, public or private.
%%{init: {'theme': 'base', 'flowchart': {'wrappingWidth': 400, 'curve': 'basis', 'padding': 18}, 'themeVariables': {'fontFamily': "-apple-system, BlinkMacSystemFont, 'Segoe UI', Inter, Helvetica, Arial, sans-serif", 'lineColor': '#94a3b8', 'textColor': '#334155', 'edgeLabelBackground': '#e2e8f0'}}}%%
flowchart TB
classDef know fill:#0f766e,stroke:#115e59,color:#f0fdfa,stroke-width:1px,rx:12,ry:12
classDef harness fill:#475569,stroke:#334155,color:#f8fafc,stroke-width:1px,rx:12,ry:12
classDef tool fill:#1e293b,stroke:#64748b,color:#f8fafc,stroke-width:1px,rx:12,ry:12
classDef app fill:#e2e8f0,stroke:#94a3b8,color:#0f172a,stroke-width:1px
You(["You, in a chat session"]):::know
Skills("<b>The knowledge · yours</b><br/>your skills: order, values, quality gates<br/>kept in your own repositories"):::know
Harness("<b>Any MCP agent harness</b><br/>Claude Code · Codex · Cursor · Gemini CLI · …"):::harness
Tools("<b>The toolbox · this connector</b><br/>~80 PixInsight operations as MCP tools<br/>measurements return numbers, never verdicts"):::tool
Bridge("<b>File bridge + watcher script</b><br/>starts PixInsight on the first call"):::tool
PI(["PixInsight 1.9.5+"]):::app
You --> Harness
Skills -. guides .-> Harness
Harness -- MCP tool calls --> Tools
Tools --> Bridge
Bridge <--> PI
linkStyle default stroke:#8b949e,stroke-width:1.5px
Needs Node 22+ and PixInsight 1.9.5+. The same three steps work whether you or your agent runs them.
1. Install the connector from npm:
npm install -g pixinsight-connector
2. Register it with your agent harness as the MCP server pixinsight. Claude Code:
claude mcp add -s user pixinsight -- pixinsight-connector
Any harness configured with an mcpServers JSON file (Cursor, Windsurf, Gemini CLI, Claude Desktop, Cline, Kiro):
{ "mcpServers": { "pixinsight": { "command": "pixinsight-connector" } } }
Codex, OpenCode, VS Code and Zed use other shapes; each one, and where its file lives: docs/setup.md.
3. Check the machine:
pixinsight-connector doctor
PixInsight and its watcher script start on the first tool call; there is nothing else to launch. Upgrade with
npm install -g pixinsight-connector@latest. Without installing, register npx -y pixinsight-connector as the
command instead (npx fetches it from npm, so the first start needs the network). From pixinsight-mcp 1.x: point
your pixinsight entry at pixinsight-connector (not a second server) and npm uninstall -g pixinsight-mcp.
The tools work in a target folder: the one set_workspace names, else PIXINSIGHT_CONNECTOR_WORKSPACE, else the
folder the harness started in. The connector writes only <target>/agentic/ (scratch, the bridge, call logs) and
<target>/output/, never your home folder. Details and every environment variable: docs/setup.md.
PIXINSIGHT_CONNECTOR_PACKS. A pack is
arbitrary code running with your privileges; only packs you configure load. See
CONTRIBUTING.md.A PixInsight capability with no tool yet is one module in src/tools/, no registry: CONTRIBUTING.md.
Humans and agents are both welcome; npm test needs no PixInsight.
macOS, Windows and Linux are all first-class, for running this connector and for developing it. A change that works on one OS and breaks another is a bug, not a limitation.
ps, grep, awk, wc, df or && in src/ or in npm scripts.
OS-specific behaviour goes behind src/platform.mjs (paths) or src/process-probe.mjs (process
inspection), one implementation per OS.path.join. Use forward slashes only when handing a path to
PixInsight, which accepts them everywhere.PIXINSIGHT_BIN for the executable, PIXINSIGHT_DIR for the install root.Tests need no PixInsight and no astronomy software, so you can develop on any of the three.
Run pixinsight-connector doctor first. Common symptoms and fixes: docs/troubleshooting.md.
This project began as aescaffre/pixinsight-mcp by Alain Escaffre; parts of the original file bridge and watcher script remain. MIT licensed: see LICENSE.