Skip to main content
Glama
README.md
# Sisif AI Video Generation MCP Server

[![PyPI version](https://badge.fury.io/py/sisif-mcp-server.svg)](https://badge.fury.io/py/sisif-mcp-server)
[![Python 3.8+](https://img.shields.io/badge/python-3.8+-blue.svg)](https://www.python.org/downloads/)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![CI](https://github.com/vtemian/sisif-ai-mcp/workflows/CI/badge.svg)](https://github.com/vtemian/sisif-ai-mcp/actions)

A Model Context Protocol (MCP) server that provides tools for generating AI videos using the [Sisif AI Video API](https://sisif.ai). Seamlessly integrate AI video generation into Claude Desktop, IDEs, and other MCP-compatible clients.

## 🎥 Features

- **🎬 Video Generation**: Create AI-generated videos from text prompts
- **📊 Status Monitoring**: Track video generation progress with visual indicators  
- **🗂️ Video Management**: List, search, and organize your generated videos
- **🔄 Smart Retry Logic**: Automatic error handling with exponential backoff
- **🎨 Rich Formatting**: Beautiful markdown output with emojis and status indicators
- **⚡ High Performance**: Async/await architecture for optimal speed
- **🔒 Type Safe**: Full Pydantic type validation and safety

## 🚀 Quick Start

### 1. Installation

```bash
pip install sisif-mcp-server
```

### 2. Get Your API Key

1. Sign up at [sisif.ai](https://sisif.ai)
2. Go to [API Keys](https://sisif.ai/users/api-keys/) 
3. Create a new API key

### 3. Set Environment Variables

```bash
export SISIF_API_KEY="sk_live_your_api_key_here"
```

### 4. Configure Your MCP Client

#### For Claude Desktop

Add to your configuration file:

**macOS**: `~/Library/Application Support/Claude/claude_desktop_config.json`  
**Windows**: `%APPDATA%\Claude\claude_desktop_config.json`

```json
{
  "mcpServers": {
    "sisif": {
      "command": "sisif-mcp-server",
      "env": {
        "SISIF_API_KEY": "sk_live_your_api_key_here"
      }
    }
  }
}
```

#### For Other MCP Clients

The server works with any MCP-compatible client. Just use the `sisif-mcp-server` command with your API key in the environment.

## 📖 Usage Examples

Once configured, you can interact with the server naturally through your MCP client:

### Generate a Video
```
Generate a 10-second video of "A majestic eagle soaring over snow-capped mountains at sunset" in high resolution
```

### Check Video Status  
```
What's the status of video 12345?
```

### List Your Videos
```
Show me my recent videos
```

### Monitor API Health
```
Is the Sisif API working properly?
```

### Available Tools

#### 1. `generate_video`
Generate a new AI video from a text prompt.

**Parameters:**
- `prompt` (string, required): Text description of the video content
- `duration` (integer, optional): Video duration in seconds (5-60, default: 5)
- `resolution` (string, optional): Video resolution ("low", "medium", "high", default: "low")

**Example:**
```json
{
  "name": "generate_video",
  "arguments": {
    "prompt": "A beautiful sunset over the ocean with waves gently crashing",
    "duration": 10,
    "resolution": "medium"
  }
}
```

#### 2. `check_video_status`
Check the generation status of a video.

**Parameters:**
- `video_id` (integer, required): The ID of the video to check

**Example:**
```json
{
  "name": "check_video_status", 
  "arguments": {
    "video_id": 123
  }
}
```

#### 3. `get_video_details`
Get detailed information about a specific video.

**Parameters:**
- `video_id` (integer, required): The ID of the video

#### 4. `list_videos`
List all videos for the authenticated user.

**Parameters:**
- `limit` (integer, optional): Maximum number of videos to return (default: 10)
- `offset` (integer, optional): Number of videos to skip (default: 0)

#### 5. `get_api_health`
Check the health status of the Sisif API.

## Configuration

The server can be configured using environment variables:

- `SISIF_API_KEY`: Your Sisif API key (required)
- `SISIF_API_URL`: Base URL for the Sisif API (default: "https://sisif.ai/api")
- `SISIF_TIMEOUT`: Request timeout in seconds (default: 30)
- `SISIF_MAX_RETRIES`: Maximum number of retries for failed requests (default: 3)

## Development

1. Install development dependencies:
```bash
pip install -e ".[dev]"
```

2. Run tests:
```bash
pytest
```

3. Format code:
```bash
black .
```

4. Type checking:
```bash
mypy .
```

## API Documentation

For complete API documentation, visit: https://sisif.ai/api/

## 🔧 Development

### Setup Development Environment

```bash
git clone https://github.com/vtemian/sisif-ai-mcp.git
cd mcp-server
pip install -e ".[dev]"
```

### Run Tests

```bash
make test
# or
pytest
```

### Code Formatting

```bash
make format
# or  
black sisif_mcp_server/ tests/
```

### Type Checking

```bash
make lint
# or
mypy sisif_mcp_server/
```

## 🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.

1. Fork the repository
2. Create your feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add some amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request

## 📝 Changelog

See [CHANGELOG.md](CHANGELOG.md) for a list of changes and versions.

## 🆘 Support

For support and questions:

- **Email**: hello@sisif.ai
- **GitHub Issues**: [Create an issue](https://github.com/vtemian/sisif-ai-mcp/issues)
- **Documentation**: [Sisif API Docs](https://sisif.ai/api/)
- **Community**: [Join our Discord](https://discord.gg/sisif-ai)

## 📄 License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## 🙏 Acknowledgments

- Built with [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) by Anthropic
- Powered by [Sisif AI Video API](https://sisif.ai)
- Thanks to all contributors and the open-source community

---

Made with ❤️ by [Sisif AI](https://sisif.ai)