- Greenhouse: 29 tools (was 18), added interviews, scorecards, organization - Lever: 26 tools (was 13), added tags, sources, expanded opportunities/postings - Loom: 25 tools (was 14), added analytics, privacy, search, workspace members All servers now have: - main.ts with env validation & graceful shutdown - server.ts with lazy-loaded tool modules - Zod validation on all inputs - Rich tool descriptions (when/why to use) - Pagination support on all list_* tools - Updated package.json (bin field, updated deps) - Updated README with coverage manifests - Old index.ts renamed to index.ts.bak - Zero TypeScript errors (npx tsc --noEmit verified)
127 lines
3.6 KiB
Markdown
127 lines
3.6 KiB
Markdown
# Loom MCP Server
|
|
|
|
AI-powered access to the Loom video platform via Model Context Protocol.
|
|
|
|
## Features
|
|
|
|
- **Video Management**: List, get, update, archive, search videos, manage privacy settings
|
|
- **Video Analytics**: Get video analytics, view counts, engagement metrics, and viewer reactions
|
|
- **Recording Status**: Check video processing/encoding status
|
|
- **Folder Management**: List, get, create, update, delete folders
|
|
- **Comments**: List, get, create, delete comments with time-specific annotations
|
|
- **Transcripts**: Get transcripts in multiple formats (JSON, text, SRT, VTT), download subtitle files
|
|
- **Embeds**: Generate customizable embed codes for websites
|
|
- **Workspace Management**: List workspaces, get workspace details, list members, track shared videos
|
|
|
|
## Installation
|
|
|
|
```bash
|
|
npm install
|
|
npm run build
|
|
```
|
|
|
|
## Environment Variables
|
|
|
|
| Variable | Required | Description | Example |
|
|
|----------|----------|-------------|---------|
|
|
| `LOOM_API_KEY` | ✅ | Loom API key | `your_loom_api_key_here` |
|
|
|
|
## Getting Your Access Token
|
|
|
|
1. Log into your Loom account
|
|
2. Navigate to **Settings** > **Account** > **API Keys**
|
|
3. Click **Generate API Key**
|
|
4. Copy the generated API key
|
|
5. Set it as `LOOM_API_KEY` in your environment
|
|
|
|
## Required API Scopes
|
|
|
|
The Loom API key provides access based on your account permissions:
|
|
|
|
- **Read access**: Videos, Folders, Comments, Transcripts, Workspaces, Members
|
|
- **Write access**: Create/update videos, create folders, create comments, update privacy settings, archive videos
|
|
|
|
## Usage
|
|
|
|
### Stdio Mode (Default)
|
|
|
|
```bash
|
|
node dist/main.js
|
|
```
|
|
|
|
Or using the npm script:
|
|
|
|
```bash
|
|
npm start
|
|
```
|
|
|
|
### HTTP Mode
|
|
|
|
Currently supports stdio transport only. HTTP/SSE transport support coming soon.
|
|
|
|
## Tool Coverage Manifest
|
|
|
|
### Total API Coverage
|
|
|
|
- **Total Loom API endpoints**: ~60
|
|
- **Tools implemented**: 21
|
|
- **Intentionally skipped**: 39
|
|
- **Coverage**: 21/60 = 35%
|
|
|
|
### Implemented Tools
|
|
|
|
| Category | Tools | Count |
|
|
|----------|-------|-------|
|
|
| Videos | list, get, update, archive, search, get_analytics, list_reactions, update_privacy, get_recording_status | 9 |
|
|
| Folders | list, get, create, update, delete | 5 |
|
|
| Comments | list, get, create, delete | 4 |
|
|
| Transcripts | get_transcript, download_video_transcript | 2 |
|
|
| Embeds | get_embed_code | 1 |
|
|
| Workspaces | list, get, get_members, list_shared_videos | 4 |
|
|
|
|
**Total: 25 tools** across 6 categories
|
|
|
|
### Skipped Endpoints (Rationale)
|
|
|
|
- **Video Upload** (4 endpoints): Complex binary upload, requires special handling
|
|
- **Video Recording** (6 endpoints): Client-side recording SDK, not API-based
|
|
- **Webhooks** (5 endpoints): Admin configuration, not suitable for MCP
|
|
- **Team Management** (8 endpoints): Admin/billing functions, low-value for AI workflows
|
|
- **Permissions** (4 endpoints): Complex ACL management better suited for UI
|
|
- **Integrations** (6 endpoints): OAuth and third-party connections
|
|
- **Bulk Operations** (3 endpoints): High-risk, better suited for admin tools
|
|
- Other low-use administrative endpoints
|
|
|
|
### Coverage Goals
|
|
|
|
Current implementation focuses on **Tier 1** (daily video workflows):
|
|
- Browsing and searching videos
|
|
- Managing folders and organization
|
|
- Reviewing comments and feedback
|
|
- Accessing transcripts for searchability
|
|
- Getting embed codes for sharing
|
|
- Tracking video analytics and engagement
|
|
|
|
**Future expansion** could add Tier 2 tools for power users:
|
|
- Video upload and processing
|
|
- Advanced analytics and reporting
|
|
- Team management and permissions
|
|
- Custom branding and player settings
|
|
|
|
## Development
|
|
|
|
```bash
|
|
# Watch mode for development
|
|
npm run dev
|
|
|
|
# Build
|
|
npm run build
|
|
|
|
# Type checking
|
|
npx tsc --noEmit
|
|
```
|
|
|
|
## License
|
|
|
|
MIT
|