Streamfog MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| STREAMFOG_MCP_PORT | No | Backend port | 10994 |
| STREAMFOG_MCP_LENS_MAP_PATH | No | Path to lens→action mapping file | lenses.json |
| STREAMFOG_MCP_STREAMERBOT_HOST | No | Streamer.bot WebSocket host | 127.0.0.1 |
| STREAMFOG_MCP_STREAMERBOT_PORT | No | Streamer.bot WebSocket port | 8080 |
| STREAMFOG_MCP_STREAMERBOT_TOKEN | No | Streamer.bot auth token |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| extensions | {
"io.modelcontextprotocol/ui": {}
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| streamfog_statusA | Check the connection status to Streamfog via the Streamer.bot bridge. Returns bridge connectivity, loaded lens count, and any recent errors. Use this before attempting lens operations to verify the bridge is healthy. Return Format{"success": true, "data": {"connected": bool, "host": "127.0.0.1", "port": 8080, "lenses_loaded": 5, "connected_at": 1715000000.0, "last_error": null}} Examplesawait streamfog_status() |
| streamfog_set_lensA | Activate a specific AR lens or face filter in Streamfog. Resolves the lens identifier against the local lenses.json mapping file and dispatches the corresponding action to Streamer.bot. Falls back to a constructed action name 'SetLens_{identifier}' if no mapping found. Return Format{"success": true, "message": "Action 'SetLens_CyberHelmet' dispatched", "data": {"action": "SetLens_CyberHelmet", "lens": "cyber_helmet"}} Examplesawait streamfog_set_lens("beauty_smooth") await streamfog_set_lens("cyber_helmet") |
| streamfog_clear_effectsA | Strip all active AR assets, face filters, and canvas overlays in Streamfog. Returns the camera feed to a clean, unfiltered video baseline. Dispatches the 'ClearEffects' action to Streamer.bot. Return Format{"success": true, "message": "All effects cleared — camera returned to baseline", "data": {"action": "ClearEffects"}} Examplesawait streamfog_clear_effects() |
| streamfog_toggle_avatarA | Toggle the Vtuber-style avatar overlay on or off in Streamfog. Dispatches the 'ToggleAvatar' action to Streamer.bot. If no avatar is currently active, this activates the default avatar lens. If an avatar is active, it deactivates it. Return Format{"success": true, "message": "Avatar toggled", "data": {"action": "ToggleAvatar"}} Examplesawait streamfog_toggle_avatar() |
| streamfog_list_lensesA | List all available AR lenses and face filters from the local lenses.json mapping. Returns all lens identifiers and their corresponding Streamer.bot action names. Use reload=true to force a re-read from disk if lenses.json was modified. Return Format{"success": true, "data": {"lenses": {"beauty_smooth": "SetLens_BeautySmooth", "cyber_helmet": "SetLens_CyberHelmet"}, "count": 2, "path": "lenses.json"}} Examplesawait streamfog_list_lenses() await streamfog_list_lenses(reload=True) |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| get_prerequisites |
TDQS
Scored across 5 tools
Each tool targets a distinct operation: status checks connectivity, set_lens activates a specific lens, clear_effects removes all effects, toggle_avatar toggles the avatar overlay, and list_lenses enumerates available lenses. There is no functional overlap.
All tool names follow a consistent streamfog_verb_noun pattern using snake_case. Verbs are descriptive and uniform, making it easy to predict tool behavior from the name.
Five tools is well-scoped for an AR lens management server. Each tool serves a core function: status, set lens, clear effects, toggle avatar, and list lenses, without unnecessary duplication.
The tool set covers essential operations for managing AR lenses, including status checking, activation, clearing, avatar toggling, and listing. A minor gap is the lack of a tool to get the currently active lens or avatar state, though status provides bridge health.