README.md•3.22 kB
# Infinigen MCP Server
A Model Context Protocol (MCP) server for [Infinigen](https://github.com/princeton-vl/infinigen) - enabling AI assistants to generate photorealistic 3D scenes procedurally.
## Overview
This MCP server provides a bridge between AI assistants (like Claude) and Infinigen, a powerful procedural 3D scene generator developed by Princeton Vision & Learning Lab. Through this server, AI assistants can:
- Generate photorealistic natural scenes (terrain, vegetation, weather)
- Create detailed indoor environments (rooms, furniture, decorations)
- Produce 3D assets with various export formats (OBJ, OpenUSD, etc.)
- Generate annotated data for computer vision tasks (depth maps, segmentation, etc.)
## Features
- 🌲 **Nature Scene Generation**: Create outdoor environments with realistic terrain and vegetation
- 🏠 **Indoor Scene Generation**: Generate furnished interior spaces
- 🎨 **Asset Creation**: Produce individual 3D objects and elements
- 📊 **Batch Processing**: Generate multiple scenes with different configurations
- 🔧 **Configurable**: Full control over scene parameters through Infinigen's config system
## Prerequisites
- Node.js >= 18.0.0
- Python 3.10+ with Infinigen installed
- Blender (required by Infinigen)
## Installation
```bash
# Clone the repository
git clone <repository-url>
cd infinigen-mcp
# Install dependencies
npm install
# Build the project
npm run build
```
## Configuration
Ensure Infinigen is properly installed and accessible in your Python environment. See [Infinigen's installation guide](https://github.com/princeton-vl/infinigen) for details.
## Usage
### Running the Server
```bash
npm start
```
### Connecting with Claude Desktop
Add to your Claude Desktop configuration (`claude_desktop_config.json`):
```json
{
"mcpServers": {
"infinigen": {
"command": "node",
"args": ["/path/to/infinigen-mcp/dist/index.js"]
}
}
}
```
## Development
```bash
# Watch mode for development
npm run watch
# Run in development mode
npm run dev
```
## Architecture
This MCP server acts as a wrapper around Infinigen's command-line interface, providing:
1. **Tool Interface**: MCP tools for scene generation operations
2. **Process Management**: Handles Infinigen subprocess execution
3. **Output Handling**: Manages generated files and provides access to results
4. **Configuration Management**: Simplifies Infinigen's configuration system
## Available Tools
(To be implemented)
- `generate_nature_scene`: Generate outdoor natural environments
- `generate_indoor_scene`: Create interior spaces
- `generate_asset`: Produce individual 3D objects
- `list_outputs`: View generated scene files
- `configure_scene`: Set scene parameters
## Contributing
Contributions are welcome! This is an open-source project aimed at making Infinigen more accessible through AI assistants.
## License
MIT
## Acknowledgments
- [Infinigen](https://github.com/princeton-vl/infinigen) by Princeton Vision & Learning Lab
- [Model Context Protocol](https://github.com/modelcontextprotocol) by Anthropic
## Related Links
- [Infinigen Documentation](https://infinigen.org)
- [MCP Documentation](https://modelcontextprotocol.io)