Update README with full plugin documentation
This commit is contained in:
@@ -1,3 +1,70 @@
|
|||||||
# plaud-mpm-plugin
|
# plaud-mpm-plugin
|
||||||
|
|
||||||
CoWork plugin — connects Claude to Plaud recordings (transcripts, summaries, AI notes) via MCP. CW-012.
|
Connects Claude to Plaud recordings — list, search, transcripts, summaries, and AI notes directly in CoWork.
|
||||||
|
|
||||||
|
**Version:** 0.1.0
|
||||||
|
**Author:** Message Point Media
|
||||||
|
**Repo:** https://git.alwisp.com/jason/plaud-mpm-plugin
|
||||||
|
**CoWork Project:** CW-012 — Plaud MCP Plugin
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Overview
|
||||||
|
|
||||||
|
This CoWork plugin gives Claude direct access to Bryan's Plaud voice recordings via the unofficial Plaud API. It authenticates using a bearer token stored in `~/.plaud/config.json` (written by the plaud-connector `import-token` command) and exposes 7 MCP tools covering listing, searching, transcripts, summaries, and AI-generated notes. The plugin runs as a Python FastMCP stdio server launched by `uv` — no additional runtime dependencies beyond `mcp[cli]`.
|
||||||
|
|
||||||
|
## Authentication
|
||||||
|
|
||||||
|
Token is read from `~/.plaud/config.json` → `token.token` field (plaud-connector format).
|
||||||
|
Falls back to `PLAUD_TOKEN` environment variable.
|
||||||
|
|
||||||
|
**Token setup (one-time):**
|
||||||
|
```bash
|
||||||
|
npx tsx ~/Developer/plaud-connector/packages/cli/bin/plaud.ts import-token app "<jwt>"
|
||||||
|
```
|
||||||
|
|
||||||
|
Get the JWT from Chrome DevTools → Network → any `api.plaud.ai` request → `Authorization: Bearer <token>`.
|
||||||
|
Tokens last ~300 days. Re-run `import-token` when expired.
|
||||||
|
|
||||||
|
## MCP Tools (7)
|
||||||
|
|
||||||
|
| Tool | Description |
|
||||||
|
|---|---|
|
||||||
|
| `plaud_list_recordings` | List all recordings newest-first. Params: `limit`, `only_with_transcript`. |
|
||||||
|
| `plaud_search_recordings` | Filter by `title_contains`, `start_date`, `end_date`, `only_with_transcript`. |
|
||||||
|
| `plaud_get_transcript` | Full transcript text for a recording ID. |
|
||||||
|
| `plaud_get_summary` | AI-generated summary for a recording ID. |
|
||||||
|
| `plaud_get_notes` | AI notes and action items (content_list) for a recording ID. |
|
||||||
|
| `plaud_get_recording_detail` | Full metadata: title, date, duration, flags, language, device, tags. |
|
||||||
|
| `plaud_user_info` | Account info and connection status. |
|
||||||
|
|
||||||
|
## Skills
|
||||||
|
|
||||||
|
| Skill | Trigger phrases |
|
||||||
|
|---|---|
|
||||||
|
| `plaud` | "pull the transcript", "what was discussed in my last meeting", "search my Plaud recordings", "show me action items from [meeting]", "meeting transcript", "meeting summary", "voice notes" |
|
||||||
|
|
||||||
|
## Dependencies
|
||||||
|
|
||||||
|
- `mcp[cli]` (via `uv run --with mcp[cli]`) — FastMCP server framework
|
||||||
|
- `plaud-connector` (external, for auth setup only) — https://github.com/rggnkmp/plaud-connector
|
||||||
|
- Python stdlib only for HTTP (`urllib.request`)
|
||||||
|
|
||||||
|
## Region
|
||||||
|
|
||||||
|
US region (`api.plaud.ai`). Set `PLAUD_REGION=eu` env var to switch to EU (`api.plaud.eu`).
|
||||||
|
|
||||||
|
## File Structure
|
||||||
|
|
||||||
|
```
|
||||||
|
plaud-mpm-plugin/
|
||||||
|
├── .claude-plugin/
|
||||||
|
│ └── plugin.json # Plugin metadata
|
||||||
|
├── .mcp.json # MCP server config (uv + plaud_mcp.py)
|
||||||
|
├── server/
|
||||||
|
│ └── plaud_mcp.py # FastMCP server — 7 tools
|
||||||
|
├── skills/
|
||||||
|
│ └── plaud/
|
||||||
|
│ └── SKILL.md # Skill definition and workflow guidance
|
||||||
|
└── README.md
|
||||||
|
```
|
||||||
|
|||||||
Reference in New Issue
Block a user