Infinigen MCP Server
# 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)
TDQS
Scored across 3 tools
Each tool has a clearly distinct purpose: one checks installation status, one generates indoor scenes, and one generates outdoor scenes. There is no overlap or ambiguity between these functions, making tool selection straightforward for an agent.
All tool names follow a consistent verb_noun pattern (check_infinigen, generate_indoor_scene, generate_nature_scene). The naming is uniform and predictable, using snake_case throughout without any deviations.
With only 3 tools, the server feels thin for a domain like scene generation, which might benefit from more operations (e.g., editing scenes, listing generated assets, or configuring parameters). However, it covers basic functionality without being excessive.
The tools cover installation checks and two core generation tasks (indoor and outdoor scenes), but there are notable gaps. Missing operations include scene editing, asset management, or parameter tuning, which could limit agent workflows in more complex scenarios.