Model Context Protocol Server for N.I.N.A. astrophotography software using Advanced API
Project description
Nina_advanced_api_mcp
Interface for AI agents to use your astrophotography setup using N.I.N.A (Beta)
N.I.N.A Model Context Protocol Server for Advanced API Plugin v2 (MCP)
A powerful interface for controlling N.I.N.A. (Nighttime Imaging 'N' Astronomy) software through its Advanced API NINA Advanced API . This Model Context Protocol Server (MCP) enables AI agents to interact with NINA using tools, providing new way to interact with your setup. Usage with your own responsibility.
🌟 Features
-
Complete Equipment Control for AI agents
- Cameras (capture, cooling, settings, connecting ....)
- Mounts (slewing, parking, tracking...)
- Focusers (movement, temperature compensation ... )
- Filter Wheels (filter selection, info ...)
- Domes (rotation, shutter control ...)
- Rotators (movement, sync...)
- ...
-
AI Integration
- Natural language command processing
- Contextual help system
- Intelligent error responses
- Automated decision making
-
**Most of the NINA advanced API v2 api interface endpoints supported
🚀 Quick Start
Prerequisites
- Python 3.8 or higher
- NINA software with Advanced API plugin
uvpackage manager- AI agent with MCP support (e.g., Claude)
Installation
-
Install NINA Advanced API Plugin
# Install the plugins in NINA # Enable and configure in NINA settings
-
Clone Repository
git clone https://github.com/PaDev1/Nina_advanced_api_mcp.git cd nina-mcp
-
Set Environment Variables
# Create .env file NINA_HOST=your_nina_host NINA_PORT=1888 LOG_LEVEL=INFO IMAGE_SAVE_DIR=~/Desktop/NINA_Images
Configuration
MCP Server Setup
Add to your AI agent's MCP configuration:
{
"mcpServers": {
"nina_advanced_mcp_api": {
"command": "uv",
"args": [
"run",
"--with",
"fastmcp,fastapi,uvicorn,pydantic,aiohttp,requests,python-dotenv",
"fastmcp",
"run",
"path/nina_advanced_mcp.py"
],
"env": {
"NINA_HOST": "NINA_IP",
"NINA_PORT": "1888",
"LOG_LEVEL": "INFO",
"IMAGE_SAVE_DIR": "~/Desktop/NINA_Images"
}
}
}
}
📚 Usage
Basic AI Examples with Claude Destop
- Connect to nina
- read the setup
- connect my camera, mount, filter wheel and guider
- read the sequesces and let me select the sequence to start
AI Agent Commands
- "Take a 30-second exposure of M31"
- "Connect all equipment and start cooling the camera to -10°C"
- "Start a sequence targeting NGC 7000"
- "Get the current equipment status"
📖 API Documentation
Core Modules
Equipment Control
- Camera operations
- Mount control
- Focuser management
- Filter wheel control
- Dome automation
- Rotator functions
Imaging
- Capture configuration
- Image processing
- File management
- Statistics gathering
System
- Connection handling
- Status monitoring
- Error management
- Configuration
🤝 Contributing
Contributions are welcome! Please read our Contributing Guidelines first.
- Fork the repository
- Create your feature branch
- Commit your changes
- Push to the branch
- Create a Pull Request
🐛 Bug Reports
Found a bug? Please open an issue with:
- Detailed description
- Steps to reproduce
- Expected vs actual behavior
- System information
📜 License
This project is licensed under the MIT License - see the LICENSE file for details.
🙏 Acknowledgments
- NINA - The core astronomy software
- NINA Advanced API - API documentation
🔗 Related Projects
- Touch'N'Stars - WebApp for Mobile Control of NINA
- NINA Plugins - Official NINA plugin repository
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file iflow_mcp_padev1_nina_advanced_api_mcp-0.1.0.tar.gz.
File metadata
- Download URL: iflow_mcp_padev1_nina_advanced_api_mcp-0.1.0.tar.gz
- Upload date:
- Size: 701.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
fb3a16c642a6c11a59c4e460ce232ec83ad0529979beb4679ead0796ff6f9d86
|
|
| MD5 |
b22a964b817385cb83b14f53586842a2
|
|
| BLAKE2b-256 |
aeb187e59e38fbb67fe3c0844c3f6be8a778a8634bf12fd6f41f50947b11b611
|
File details
Details for the file iflow_mcp_padev1_nina_advanced_api_mcp-0.1.0-py3-none-any.whl.
File metadata
- Download URL: iflow_mcp_padev1_nina_advanced_api_mcp-0.1.0-py3-none-any.whl
- Upload date:
- Size: 709.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.10.0 {"installer":{"name":"uv","version":"0.10.0","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dce1edbf30716b7de520d11c8f1f1d6dac8a6509a2e839efe6ccc20e428d8ac7
|
|
| MD5 |
3b9cd0a71f1313ef1e47bbdfb38e2b4d
|
|
| BLAKE2b-256 |
42d443ade6a7103e02abf84f111814edf36523dfbd109989157fa37a304c7b39
|