carey_mcp_video


Namecarey_mcp_video JSON
Version 0.1.2 PyPI version JSON
download
home_pageNone
SummaryAn MCP server that provides video processing services
upload_time2025-07-15 07:10:12
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseMIT
keywords concatenation frame-extraction mcp processing video
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Video Service MCP

An MCP server that provides video processing services.

## Features

- **Frame Extraction**: Extract frames from a video, ensuring the first and last frames are included.
- **Video Concatenation**: Concatenate multiple videos into a single video.

## Installation

```bash
pip install -e .
```

## Environment Variables

The following environment variables must be set for TOS (Tencent Object Storage) integration:

- `TOS_ACCESS_KEY`: Your TOS access key
- `TOS_SECRET_KEY`: Your TOS secret key
- `TOS_BUCKET_NAME`: Your TOS bucket name
- `TOS_ENDPOINT` (optional): TOS endpoint (default: "tos-cn-beijing.volces.com")
- `TOS_REGION` (optional): TOS region (default: "cn-beijing")

## Usage

### Starting the Server

```bash
carey_mcp_video --transport sse
```

### API

#### Extract Frames

Extracts frames from a video and uploads them to TOS.

```python
extract_frames(video_url: str, num_frames: int = 10)
```

**Parameters**:
- `video_url`: URL of the video to extract frames from.
- `num_frames`: Number of frames to extract (minimum 2 for first and last frames).

**Returns**:
- A dictionary containing:
  - `success`: Boolean indicating if the operation was successful
  - `message`: Human-readable message about the result
  - `frames`: List of frame URLs (on success)

#### Concatenate Videos

Concatenates multiple videos using FFmpeg and uploads the result to TOS.

```python
concatenate_videos(video_urls: List[str])
```

**Parameters**:
- `video_urls`: List of URLs of videos to concatenate.

**Returns**:
- A dictionary containing:
  - `success`: Boolean indicating if the operation was successful
  - `message`: Human-readable message about the result
  - `url`: URL of the concatenated video (on success)

## Dependencies

- fastmcp
- loguru
- requests
- opencv-python
- tos
- FFmpeg (system dependency)

## License

MIT
            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "carey_mcp_video",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "concatenation, frame-extraction, mcp, processing, video",
    "author": null,
    "author_email": "Carey <carey@example.com>",
    "download_url": "https://files.pythonhosted.org/packages/a3/b3/808636bf2e44d872ac3e632fb239d64452f5bc12e33ca77ec7300c704945/carey_mcp_video-0.1.2.tar.gz",
    "platform": null,
    "description": "# Video Service MCP\n\nAn MCP server that provides video processing services.\n\n## Features\n\n- **Frame Extraction**: Extract frames from a video, ensuring the first and last frames are included.\n- **Video Concatenation**: Concatenate multiple videos into a single video.\n\n## Installation\n\n```bash\npip install -e .\n```\n\n## Environment Variables\n\nThe following environment variables must be set for TOS (Tencent Object Storage) integration:\n\n- `TOS_ACCESS_KEY`: Your TOS access key\n- `TOS_SECRET_KEY`: Your TOS secret key\n- `TOS_BUCKET_NAME`: Your TOS bucket name\n- `TOS_ENDPOINT` (optional): TOS endpoint (default: \"tos-cn-beijing.volces.com\")\n- `TOS_REGION` (optional): TOS region (default: \"cn-beijing\")\n\n## Usage\n\n### Starting the Server\n\n```bash\ncarey_mcp_video --transport sse\n```\n\n### API\n\n#### Extract Frames\n\nExtracts frames from a video and uploads them to TOS.\n\n```python\nextract_frames(video_url: str, num_frames: int = 10)\n```\n\n**Parameters**:\n- `video_url`: URL of the video to extract frames from.\n- `num_frames`: Number of frames to extract (minimum 2 for first and last frames).\n\n**Returns**:\n- A dictionary containing:\n  - `success`: Boolean indicating if the operation was successful\n  - `message`: Human-readable message about the result\n  - `frames`: List of frame URLs (on success)\n\n#### Concatenate Videos\n\nConcatenates multiple videos using FFmpeg and uploads the result to TOS.\n\n```python\nconcatenate_videos(video_urls: List[str])\n```\n\n**Parameters**:\n- `video_urls`: List of URLs of videos to concatenate.\n\n**Returns**:\n- A dictionary containing:\n  - `success`: Boolean indicating if the operation was successful\n  - `message`: Human-readable message about the result\n  - `url`: URL of the concatenated video (on success)\n\n## Dependencies\n\n- fastmcp\n- loguru\n- requests\n- opencv-python\n- tos\n- FFmpeg (system dependency)\n\n## License\n\nMIT",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "An MCP server that provides video processing services",
    "version": "0.1.2",
    "project_urls": null,
    "split_keywords": [
        "concatenation",
        " frame-extraction",
        " mcp",
        " processing",
        " video"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "905b9f98171565788a2dfb1d82746c6e6b98e01f4409b1db1fea946198a5c6ec",
                "md5": "619cc6b1dc67cc7ba87ab73d2f22c748",
                "sha256": "2866c56d36018028e386f8c52a7f7efe736023631114af61a1281a37fa8ad963"
            },
            "downloads": -1,
            "filename": "carey_mcp_video-0.1.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "619cc6b1dc67cc7ba87ab73d2f22c748",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 7480,
            "upload_time": "2025-07-15T07:10:10",
            "upload_time_iso_8601": "2025-07-15T07:10:10.688242Z",
            "url": "https://files.pythonhosted.org/packages/90/5b/9f98171565788a2dfb1d82746c6e6b98e01f4409b1db1fea946198a5c6ec/carey_mcp_video-0.1.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "a3b3808636bf2e44d872ac3e632fb239d64452f5bc12e33ca77ec7300c704945",
                "md5": "2d63a8d7914972d6fbe9f98504bbf363",
                "sha256": "fbd9e6936b430f6488562ed433e0d7f6f5aa5d0636be0859b1bddc374b21b7ab"
            },
            "downloads": -1,
            "filename": "carey_mcp_video-0.1.2.tar.gz",
            "has_sig": false,
            "md5_digest": "2d63a8d7914972d6fbe9f98504bbf363",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 5825,
            "upload_time": "2025-07-15T07:10:12",
            "upload_time_iso_8601": "2025-07-15T07:10:12.560244Z",
            "url": "https://files.pythonhosted.org/packages/a3/b3/808636bf2e44d872ac3e632fb239d64452f5bc12e33ca77ec7300c704945/carey_mcp_video-0.1.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-15 07:10:12",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "carey_mcp_video"
}
        
Elapsed time: 0.43395s