Loom Video
MCP server for Loom video management
Installation
npx mcp-loom-videoAsk AI about Loom Video
Powered by Claude Β· Grounded in docs
I know everything about Loom Video. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
Loom Advisor
MCP server for Loom video management. Provides tools to list, retrieve, edit, and merge Loom screen recordings.
Features
- list_recorded_videos - Retrieve a list of recorded videos with pagination and folder filtering
- get_video - Get detailed information about a specific video
- edit_video - Edit videos by trimming or extracting clips
- merge_videos - Combine multiple videos into one
Installation
pip install m2ai-mcp-loom-advisor
Configuration
Required environment variables:
| Variable | Description |
|---|---|
LOOM_ACCESS_TOKEN | OAuth2 access token for Loom API |
Optional environment variables:
| Variable | Description | Default |
|---|---|---|
LOOM_BASE_URL | Loom API base URL | https://api.loom.com/v1 |
Getting an Access Token
Loom uses OAuth2 for authentication. To obtain an access token:
- Register your application in the Loom Developer Portal
- Implement the OAuth2 authorization flow
- Use the returned access token in your configuration
Note: Loom's public API access may be limited. Enterprise users may have additional API capabilities. Contact Loom for API access details.
Usage with Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"loom": {
"command": "loom-advisor",
"env": {
"LOOM_ACCESS_TOKEN": "your-access-token"
}
}
}
}
Or run directly with Python:
{
"mcpServers": {
"loom": {
"command": "python",
"args": ["-m", "loom_mcp.server"],
"env": {
"LOOM_ACCESS_TOKEN": "your-access-token"
}
}
}
}
Tools
list_recorded_videos
Retrieve a list of recorded videos from Loom.
Parameters:
limit(optional): Maximum number of videos to return (1-100, default 50)offset(optional): Pagination offset (default 0)folder_id(optional): Filter videos by folder ID
Example:
{
"limit": 10,
"offset": 0,
"folder_id": "folder-abc"
}
get_video
Retrieve detailed information about a specific video.
Parameters:
video_id(required): Unique identifier for the video
Example:
{
"video_id": "abc123"
}
edit_video
Edit a video by adding clips or trimming sections.
Parameters:
video_id(required): Unique identifier for the videoediting_details(required): Object containing edit instructionstrim_start: Start time in seconds to trim from beginningtrim_end: End time in seconds where video should endclips: List of clip objects withstartandendtimestitle: Optional new title for the edited videodescription: Optional new description
Example:
{
"video_id": "abc123",
"editing_details": {
"trim_start": 5,
"trim_end": 120,
"title": "Edited Demo"
}
}
merge_videos
Combine multiple videos into one merged video.
Parameters:
video_ids(required): List of video IDs to merge (minimum 2, in order)title(optional): Title for the merged video
Example:
{
"video_ids": ["video-1", "video-2", "video-3"],
"title": "Combined Demo"
}
Development
Running Tests
# Activate virtual environment
source venv/bin/activate
# Run tests
pytest
# Run with coverage
pytest --cov=loom_mcp --cov-report=term-missing
Code Quality
# Format and lint
ruff check src tests
ruff format src tests
# Type checking
mypy src
Project Structure
loom-mcp/
βββ src/
β βββ loom_mcp/
β βββ __init__.py
β βββ server.py # MCP server entry point
β βββ clients/
β β βββ __init__.py
β β βββ loom.py # Loom API client
β βββ tools/
β βββ __init__.py
β βββ list_recorded_videos.py
β βββ get_video.py
β βββ edit_video.py
β βββ merge_videos.py
βββ tests/
β βββ __init__.py
β βββ conftest.py
β βββ test_loom_client.py
β βββ test_tools.py
β βββ test_server.py
βββ pyproject.toml
βββ README.md
βββ .env.example
License
MIT
Generated by GRIMLOCK MCP Factory
