@modelcontextprotocol/server-transcript 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,91 @@
1
+ # Transcript Server
2
+
3
+ ![Screenshot](screenshot.png)
4
+
5
+ An MCP App Server for live speech transcription using the Web Speech API.
6
+
7
+ ## Features
8
+
9
+ - **Live Transcription**: Real-time speech-to-text using browser's Web Speech API
10
+ - **Transitional Model Context**: Streams interim transcriptions to the model via `ui/update-model-context`, allowing the model to see what the user is saying as they speak
11
+ - **Audio Level Indicator**: Visual feedback showing microphone input levels
12
+ - **Send to Host**: Button to send completed transcriptions as a `ui/message` to the MCP host
13
+ - **Start/Stop Control**: Toggle listening on and off
14
+ - **Clear Transcript**: Reset the transcript area
15
+
16
+ ## Setup
17
+
18
+ ### Prerequisites
19
+
20
+ - Node.js 18+
21
+ - Chrome, Edge, or Safari (Web Speech API support)
22
+
23
+ ### Installation
24
+
25
+ ```bash
26
+ npm install
27
+ ```
28
+
29
+ ### Running
30
+
31
+ ```bash
32
+ # Development mode (with hot reload)
33
+ npm run dev
34
+
35
+ # Production build and serve
36
+ npm run start
37
+ ```
38
+
39
+ ## Usage
40
+
41
+ The server exposes a single tool:
42
+
43
+ ### `transcribe`
44
+
45
+ Opens a live speech transcription interface.
46
+
47
+ **Parameters:** None
48
+
49
+ **Example:**
50
+
51
+ ```json
52
+ {
53
+ "name": "transcribe",
54
+ "arguments": {}
55
+ }
56
+ ```
57
+
58
+ ## How It Works
59
+
60
+ 1. Click **Start** to begin listening
61
+ 2. Speak into your microphone
62
+ 3. Watch your speech appear as text in real-time (interim text is streamed to model context via `ui/update-model-context`)
63
+ 4. Click **Send** to send the transcript as a `ui/message` to the host (clears the model context)
64
+ 5. Click **Clear** to reset the transcript
65
+
66
+ ## Architecture
67
+
68
+ ```
69
+ transcript-server/
70
+ ├── server.ts # MCP server with transcribe tool
71
+ ├── server-utils.ts # HTTP transport utilities
72
+ ├── mcp-app.html # Transcript UI entry point
73
+ ├── src/
74
+ │ ├── mcp-app.ts # App logic, Web Speech API integration
75
+ │ ├── mcp-app.css # Transcript UI styles
76
+ │ └── global.css # Base styles
77
+ └── dist/ # Built output (single HTML file)
78
+ ```
79
+
80
+ ## Notes
81
+
82
+ - **Microphone Permission**: Requires `allow="microphone"` on the sandbox iframe (configured via `permissions: { microphone: {} }` in the resource `_meta.ui`)
83
+ - **Browser Support**: Web Speech API is well-supported in Chrome/Edge, with Safari support. Firefox has limited support.
84
+ - **Continuous Mode**: Recognition automatically restarts when it ends, for seamless transcription
85
+
86
+ ## Future Enhancements
87
+
88
+ - Language selection dropdown
89
+ - Whisper-based offline transcription (see TRANSCRIPTION.md)
90
+ - Export transcript to file
91
+ - Timestamps toggle