@okostream/mcp 0.1.1 → 0.2.0
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 +34 -38
- package/dist/server.js +1 -1
- package/dist/tools.js +1117 -31
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@ MCP server for managing OKO Stream webinars as an organizer.
|
|
|
4
4
|
|
|
5
5
|
## Quick Setup
|
|
6
6
|
|
|
7
|
-
1. Create an API key in OKO: `/app/
|
|
7
|
+
1. Create an API key in OKO: `/app/mcp` -> access keys.
|
|
8
8
|
2. Add the server to your MCP client config.
|
|
9
9
|
|
|
10
10
|
Claude Desktop / Claude Code:
|
|
@@ -54,7 +54,7 @@ Every tool returns JSON text plus MCP `structuredContent`. List-like tools use b
|
|
|
54
54
|
|
|
55
55
|
- `limit` defaults to 20-50 depending on the tool.
|
|
56
56
|
- Cursor tools return both `hasMore`/`nextCursor` and `has_more`/`next_cursor`.
|
|
57
|
-
- `oko_list_my_events`, `oko_get_analytics`, `oko_list_recent_chat`, `oko_list_participants`, and `
|
|
57
|
+
- `oko_list_my_events`, `oko_get_analytics`, `oko_list_recent_chat`, `oko_list_participants`, `oko_list_leads`, `oko_list_workspace_access`, `oko_list_workspace_invites`, and `oko_list_telegram_posts` support pagination.
|
|
58
58
|
- `oko_get_analytics` omits heavy `timeline`, baseline/final snapshots, and NMO participant rows by default. Request `includeTimeline`, `includeSnapshots`, or `includeNmoRows` only when needed.
|
|
59
59
|
- Oversized responses are truncated with `truncated: true` and a `truncationMessage`.
|
|
60
60
|
|
|
@@ -89,39 +89,32 @@ Local config without npm publishing:
|
|
|
89
89
|
|
|
90
90
|
All tools are prefixed with `oko_` for safe discovery next to other MCP servers.
|
|
91
91
|
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
- `oko_whoami`
|
|
95
|
-
- `
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
- `
|
|
100
|
-
- `
|
|
101
|
-
- `
|
|
102
|
-
- `
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
- `
|
|
107
|
-
- `
|
|
108
|
-
- `
|
|
109
|
-
- `
|
|
110
|
-
- `
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
- `
|
|
115
|
-
- `
|
|
116
|
-
- `
|
|
117
|
-
- `
|
|
118
|
-
- `oko_ban_user`
|
|
119
|
-
- `oko_set_chat_settings`
|
|
120
|
-
- `oko_launch_checkpoint`
|
|
121
|
-
- `oko_close_checkpoint`
|
|
122
|
-
- `oko_publish_telegram_post`
|
|
123
|
-
- `oko_create_workspace_invite`
|
|
124
|
-
- `oko_delete_event`
|
|
92
|
+
Core discovery/read tools:
|
|
93
|
+
|
|
94
|
+
- `oko_whoami`, `oko_list_workspaces`, `oko_list_my_events`, `oko_get_event`
|
|
95
|
+
- `oko_get_live_state`, `oko_get_analytics`, `oko_list_recent_chat`, `oko_list_participants`, `oko_list_leads`
|
|
96
|
+
|
|
97
|
+
Event/setup/media tools:
|
|
98
|
+
|
|
99
|
+
- `oko_create_webinar`, `oko_update_event`, `oko_delete_event`
|
|
100
|
+
- `oko_duplicate_event`, `oko_move_event`
|
|
101
|
+
- `oko_configure_blocks`, `oko_configure_cards`
|
|
102
|
+
- `oko_upload_image`, `oko_delete_image`
|
|
103
|
+
|
|
104
|
+
Live/session/chat/NMO tools:
|
|
105
|
+
|
|
106
|
+
- `oko_set_block_visibility`, `oko_refresh_viewers`
|
|
107
|
+
- `oko_start_session`, `oko_end_session`, `oko_fix_orphan_session`, `oko_delete_session`
|
|
108
|
+
- `oko_send_chat_message`, `oko_delete_chat_message`, `oko_mute_user`, `oko_unmute_user`, `oko_ban_user`, `oko_unban_user`, `oko_set_chat_settings`
|
|
109
|
+
- `oko_launch_checkpoint`, `oko_close_checkpoint`
|
|
110
|
+
- `oko_add_nmo_participant`, `oko_import_nmo_participants`, `oko_remove_nmo_participant`
|
|
111
|
+
|
|
112
|
+
Workspace and Telegram tools:
|
|
113
|
+
|
|
114
|
+
- `oko_create_workspace`, `oko_update_workspace`, `oko_delete_workspace`
|
|
115
|
+
- `oko_list_workspace_access`, `oko_update_workspace_member`, `oko_remove_workspace_member`
|
|
116
|
+
- `oko_create_workspace_invite`, `oko_list_workspace_invites`, `oko_revoke_workspace_invite`, `oko_claim_workspace_invite`
|
|
117
|
+
- `oko_list_telegram_channels`, `oko_claim_telegram_channel`, `oko_list_telegram_posts`, `oko_cancel_telegram_post`, `oko_publish_telegram_post`
|
|
125
118
|
|
|
126
119
|
Dangerous or external side-effect tools require `confirm: true`.
|
|
127
120
|
|
|
@@ -130,9 +123,12 @@ Dangerous or external side-effect tools require `confirm: true`.
|
|
|
130
123
|
1. `oko_whoami` should return the organizer UID and granted scopes.
|
|
131
124
|
2. `oko_list_my_events` should return only events visible to that UID.
|
|
132
125
|
3. `oko_create_webinar` should create a test webinar and RTDB owner/workspace mirror.
|
|
133
|
-
4. `
|
|
134
|
-
5. `
|
|
135
|
-
6. `
|
|
126
|
+
4. `oko_configure_cards` should create/update `blocks.cards.items` and preserve card image fields by stable card id.
|
|
127
|
+
5. `oko_upload_image` should accept a local path or HTTPS image URL, upload `master.webp`, and let OKO generate variants.
|
|
128
|
+
6. `oko_start_session` -> `oko_fix_orphan_session` -> `oko_delete_session` should leave no active session pointers on a disposable test event.
|
|
129
|
+
7. `oko_duplicate_event`, workspace tools, and `oko_move_event` should preserve Firestore access rules and RTDB owner/workspace mirrors.
|
|
130
|
+
8. `oko_import_nmo_participants` should call CF24 and return per-row results; clean up test participants after import.
|
|
131
|
+
9. `oko_get_analytics` should read an existing event with analytics sessions.
|
|
136
132
|
|
|
137
133
|
CLI help:
|
|
138
134
|
|