You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(say-server): add info button, SVG icons, and UI fixes
- Replace emoji play/pause buttons with neutral white SVG icons
- Add (i) info button in bottom-right with attribution popup
- Use app.openLink() API for external links in popup
- Add dynamic padding to fit popup when shown
- Make create_tts_queue async to fix AnyIO event loop error
- Add better error logging for TTS queue initialization
- Update README with openLink feature documentation
- Remove unnecessary HuggingFace login prerequisites
Copy file name to clipboardExpand all lines: examples/say-server/README.md
+2Lines changed: 2 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,11 +8,13 @@ This example showcases several MCP App capabilities:
8
8
9
9
-**Single-file executable**: Python server with embedded React UI - no build step required
10
10
-**Partial tool inputs** (`ontoolinputpartial`): Widget receives streaming text as it's being generated
11
+
-**Queue-based streaming**: Demonstrates how to stream text out and audio in via a polling tool (adds text to an input queue, retrieves audio chunks from an output queue)
11
12
-**Model context updates**: Widget updates the LLM with playback progress ("Playing: ...snippet...")
12
13
-**Native theming**: Uses CSS variables for automatic dark/light mode adaptation
13
14
-**Fullscreen mode**: Toggle fullscreen via `requestDisplayMode()` API, press Escape to exit
14
15
-**Multi-widget speak lock**: Coordinates multiple TTS widgets via localStorage so only one plays at a time
15
16
-**Hidden tools** (`visibility: ["app"]`): Private tools only accessible to the widget, not the model
17
+
-**External links** (`openLink`): Attribution popup uses `app.openLink()` to open external URLs
16
18
-**CSP metadata**: Resource declares required domains (`esm.sh`) for in-browser transpilation
0 commit comments