teletype-mcp-server 0.1.0 → 0.1.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.
Files changed (64) hide show
  1. package/.env.example +7 -0
  2. package/LAUNCHGUIDE.md +51 -0
  3. package/README-ru.md +49 -11
  4. package/README.md +68 -30
  5. package/dist/config.d.ts +4 -0
  6. package/dist/config.js +17 -0
  7. package/dist/config.js.map +1 -1
  8. package/dist/http.js +69 -1
  9. package/dist/http.js.map +1 -1
  10. package/dist/landing-page.d.ts +1 -0
  11. package/dist/landing-page.js +166 -0
  12. package/dist/landing-page.js.map +1 -0
  13. package/dist/oauth-page.d.ts +1 -0
  14. package/dist/oauth-page.js +242 -0
  15. package/dist/oauth-page.js.map +1 -0
  16. package/dist/oauth-store.d.ts +48 -0
  17. package/dist/oauth-store.js +131 -0
  18. package/dist/oauth-store.js.map +1 -0
  19. package/dist/oauth.d.ts +4 -0
  20. package/dist/oauth.js +382 -0
  21. package/dist/oauth.js.map +1 -0
  22. package/dist/request-context.d.ts +2 -0
  23. package/dist/request-context.js.map +1 -1
  24. package/dist/tool-policy.js +7 -0
  25. package/dist/tool-policy.js.map +1 -1
  26. package/docs/CLIENTS.md +651 -27
  27. package/docs/CONTRIBUTING.md +4 -2
  28. package/docs/OAUTH.md +54 -0
  29. package/docs/SECURITY.md +3 -1
  30. package/docs/ru/CLIENTS.md +651 -27
  31. package/docs/ru/CONTRIBUTING.md +4 -2
  32. package/docs/ru/OAUTH.md +54 -0
  33. package/docs/ru/SECURITY.md +3 -1
  34. package/examples/clients/goose-stdio.yaml +13 -0
  35. package/examples/clients/openclaw.json +13 -0
  36. package/gemini-extension.json +22 -0
  37. package/lhm.plugin.json +1408 -0
  38. package/llms-install.md +17 -0
  39. package/package.json +9 -4
  40. package/plugin/.claude-plugin/plugin.json +37 -0
  41. package/plugin/.cursor-plugin/plugin.json +34 -0
  42. package/plugin/LICENSE +21 -0
  43. package/plugin/README.md +48 -0
  44. package/plugin/assets/README.md +12 -0
  45. package/plugin/assets/consent.js +32 -0
  46. package/plugin/assets/fonts/OFL.txt +93 -0
  47. package/plugin/assets/fonts/manrope.woff2 +0 -0
  48. package/plugin/assets/icon-400.png +0 -0
  49. package/plugin/assets/icon.png +0 -0
  50. package/plugin/assets/icon.svg +15 -0
  51. package/plugin/assets/landing.css +442 -0
  52. package/plugin/assets/landing.js +85 -0
  53. package/plugin/assets/logo.svg +16 -0
  54. package/plugin/commands/client-summary.md +14 -0
  55. package/plugin/commands/draft-reply.md +13 -0
  56. package/plugin/commands/escalate-issue.md +15 -0
  57. package/plugin/commands/shift-handover.md +10 -0
  58. package/plugin/commands/triage-inbox.md +13 -0
  59. package/plugin/mcp.json +10 -0
  60. package/plugin/plugin.json +15 -0
  61. package/plugin/skills/teletype-support/SKILL.md +3 -1
  62. package/plugin/skills/teletype-support/references/installation.md +31 -0
  63. package/server.json +18 -4
  64. package/smithery.yaml +3 -2
package/docs/CLIENTS.md CHANGED
@@ -4,6 +4,8 @@ English | [Русский](ru/CLIENTS.md)
4
4
 
5
5
  The hosted server at `https://mcp.teletype.app/mcp` needs a Teletype Public API token. The examples below cover hosted connections and local servers for self-hosting, isolated environments, and the offline eval. Export `TELETYPE_API_TOKEN` before starting clients that read it from the environment. In examples with `your-teletype-public-api-token`, replace that placeholder in your private user configuration.
6
6
 
7
+ Expand the “Show config” block under your client’s instructions and copy its contents. Each block also links to the standalone file.
8
+
7
9
  ## Codex
8
10
 
9
11
  To use the hosted endpoint, add it to `~/.codex/config.toml`. The `env_http_headers` setting pulls the header value from the environment:
@@ -14,9 +16,23 @@ url = "https://mcp.teletype.app/mcp"
14
16
  env_http_headers = { "X-Teletype-Api-Token" = "TELETYPE_API_TOKEN" }
15
17
  ```
16
18
 
17
- For a local server, add [this block](../examples/clients/codex.toml) to the same file. Keep other settings in that file. Restart Codex, then run `codex mcp list` to check the configuration. The `env_vars` entry passes your shell's token to the server.
19
+ For a local server, add the block below to the same file. Keep other settings in that file. Restart Codex, then run `codex mcp list` to check the configuration. The `env_vars` entry passes your shell's token to the server.
20
+
21
+ <details>
22
+ <summary>Show config (codex.toml)</summary>
23
+
24
+ ```toml
25
+ [mcp_servers.teletype]
26
+ command = "npx"
27
+ args = ["-y", "teletype-mcp-server", "--stdio"]
28
+ env_vars = ["TELETYPE_API_TOKEN"]
29
+ ```
30
+
31
+ Standalone file: [codex.toml](../examples/clients/codex.toml).
18
32
 
19
- To install the plugin through Codex, run `codex plugin marketplace add Teletype-App/teletype-mcp-server`, then open `/plugins`, install `teletype`, and start a new session. The plugin bundles the server and the skill. See the [plugin section](../README.md#plugins-for-claude-code-and-codex).
33
+ </details>
34
+
35
+ To install the plugin through Codex, run `codex plugin marketplace add Teletype-App/teletype-mcp-server`, then open `/plugins`, install `teletype`, and start a new session. The plugin bundles the server and the skill. See the [plugin section](../README.md#plugins-for-claude-code-codex-and-cursor).
20
36
 
21
37
  Without plugins, Codex loads [Agent Skills](https://agentskills.io) from `~/.agents/skills` (user scope) or `.agents/skills` in the repository. The npm package ships the `teletype-support` skill with the support workflows. To install it, run:
22
38
 
@@ -27,55 +43,424 @@ cp -r node_modules/teletype-mcp-server/plugin/skills/teletype-support ~/.agents/
27
43
 
28
44
  ## Claude Code
29
45
 
30
- For the hosted endpoint, merge [this file](../examples/clients/claude-code-remote.json) into `.mcp.json`, or run `claude mcp add --transport http teletype https://mcp.teletype.app/mcp --header "X-Teletype-Api-Token: $TELETYPE_API_TOKEN"`. The plugin below already points at the hosted server.
46
+ For the hosted endpoint, merge the config below into `.mcp.json`, or run `claude mcp add --transport http teletype https://mcp.teletype.app/mcp --header "X-Teletype-Api-Token: $TELETYPE_API_TOKEN"`. The plugin below already points at the hosted server.
47
+
48
+ <details>
49
+ <summary>Show config (claude-code-remote.json)</summary>
50
+
51
+ ```json
52
+ {
53
+ "mcpServers": {
54
+ "teletype": {
55
+ "type": "http",
56
+ "url": "https://mcp.teletype.app/mcp",
57
+ "headers": { "X-Teletype-Api-Token": "${TELETYPE_API_TOKEN}" }
58
+ }
59
+ }
60
+ }
61
+ ```
62
+
63
+ Standalone file: [claude-code-remote.json](../examples/clients/claude-code-remote.json).
64
+
65
+ </details>
31
66
 
32
- To run the server locally, copy [this file](../examples/clients/claude-code.json) to `.mcp.json` in your project. Claude Code expands `${TELETYPE_API_TOKEN}` from the environment. Start Claude Code in that project and check `/mcp` or `claude mcp list`.
67
+ To run the server locally, copy the config below to `.mcp.json` in your project. Claude Code expands `${TELETYPE_API_TOKEN}` from the environment. Start Claude Code in that project and check `/mcp` or `claude mcp list`.
68
+
69
+ <details>
70
+ <summary>Show config (claude-code.json)</summary>
71
+
72
+ ```json
73
+ {
74
+ "mcpServers": {
75
+ "teletype": {
76
+ "command": "npx",
77
+ "args": ["-y", "teletype-mcp-server", "--stdio"],
78
+ "env": { "TELETYPE_API_TOKEN": "${TELETYPE_API_TOKEN}" }
79
+ }
80
+ }
81
+ }
82
+ ```
33
83
 
34
- To install the plugin with its server, skill, and commands, run `/plugin marketplace add Teletype-App/teletype-mcp-server`, then `/plugin install teletype@teletype-mcp-server`. See the [plugin section](../README.md#plugins-for-claude-code-and-codex).
84
+ Standalone file: [claude-code.json](../examples/clients/claude-code.json).
85
+
86
+ </details>
87
+
88
+ To install the plugin with its server, skill, and commands, run `/plugin marketplace add Teletype-App/teletype-mcp-server`, then `/plugin install teletype@teletype-mcp-server`. See the [plugin section](../README.md#plugins-for-claude-code-codex-and-cursor).
89
+
90
+ When enabling the plugin, enter the token in the sensitive **Teletype Public API token** field. The plugin uses `userConfig`. The direct `.mcp.json` connection above still supports environment variables.
35
91
 
36
92
  ## OpenCode
37
93
 
38
- Copy [this file](../examples/clients/opencode.json) to `opencode.json` in your project. OpenCode reads `{env:TELETYPE_API_TOKEN}` from the environment. Run `opencode mcp list` to check the connection. The `auto` protocol setting negotiates the 2026 revision when available and falls back to the 2025 handshake.
94
+ Copy the config below to `opencode.json` in your project. OpenCode reads `{env:TELETYPE_API_TOKEN}` from the environment. Run `opencode mcp list` to check the connection. The `auto` protocol setting negotiates the 2026 revision when available and falls back to the 2025 handshake.
95
+
96
+ <details>
97
+ <summary>Show config (opencode.json)</summary>
98
+
99
+ ```json
100
+ {
101
+ "$schema": "https://opencode.ai/config.json",
102
+ "mcp": {
103
+ "servers": {
104
+ "teletype": {
105
+ "type": "local",
106
+ "command": ["npx", "-y", "teletype-mcp-server", "--stdio"],
107
+ "environment": { "TELETYPE_API_TOKEN": "{env:TELETYPE_API_TOKEN}" },
108
+ "protocol": "auto",
109
+ "codemode": false
110
+ }
111
+ }
112
+ }
113
+ }
114
+ ```
115
+
116
+ Standalone file: [opencode.json](../examples/clients/opencode.json).
117
+
118
+ </details>
39
119
 
40
120
  ## MiniMax Code
41
121
 
42
- Copy [this config](../examples/clients/mcode.json) to `.mcp.json` in the project where you run `mcode`. If you already have a `.mcp.json`, merge its `teletype` entry into your existing `mcpServers` object. Export `TELETYPE_API_TOKEN` in the same shell before starting MiniMax Code. The config connects to the hosted Teletype MCP endpoint. Use `/mcp` to inspect the connection, then ask MiniMax Code to find unanswered Teletype conversations and check that it calls `find_conversations`. MiniMax Code reads `.mcp.json` from the project root. See its [project MCP guide](https://github.com/MiniMax-AI/minimax-code/blob/main/docs/examples.md#5-connect-an-authenticated-project-mcp-server).
122
+ Copy the config below to `.mcp.json` in the project where you run `mcode`. If you already have a `.mcp.json`, merge its `teletype` entry into your existing `mcpServers` object. Export `TELETYPE_API_TOKEN` in the same shell before starting MiniMax Code. The config connects to the hosted Teletype MCP endpoint. Use `/mcp` to inspect the connection, then ask MiniMax Code to find unanswered Teletype conversations and check that it calls `find_conversations`. MiniMax Code reads `.mcp.json` from the project root. See its [project MCP guide](https://github.com/MiniMax-AI/minimax-code/blob/main/docs/examples.md#5-connect-an-authenticated-project-mcp-server).
123
+
124
+ <details>
125
+ <summary>Show config (mcode.json)</summary>
126
+
127
+ ```json
128
+ {
129
+ "mcpServers": {
130
+ "teletype": {
131
+ "type": "http",
132
+ "url": "https://mcp.teletype.app/mcp",
133
+ "headers": {
134
+ "X-Teletype-Api-Token": "${TELETYPE_API_TOKEN}"
135
+ }
136
+ }
137
+ }
138
+ }
139
+ ```
140
+
141
+ Standalone file: [mcode.json](../examples/clients/mcode.json).
142
+
143
+ </details>
43
144
 
44
145
  ## Cursor
45
146
 
46
- Merge [this config](../examples/clients/cursor.json) into `~/.cursor/mcp.json` or your project's `.cursor/mcp.json`. Cursor expands `${env:TELETYPE_API_TOKEN}` in HTTP headers. Make the token available to the Cursor process, restart Cursor, and check the server under **Customize → MCPs**. See the [Cursor MCP reference](https://prod.cursor.com/docs/mcp).
147
+ Merge the config below into `~/.cursor/mcp.json` or your project's `.cursor/mcp.json`. Cursor expands `${env:TELETYPE_API_TOKEN}` in HTTP headers. Make the token available to the Cursor process, restart Cursor, and check the server under **Customize → MCPs**. See the [Cursor MCP reference](https://prod.cursor.com/docs/mcp).
148
+
149
+ <details>
150
+ <summary>Show config (cursor.json)</summary>
151
+
152
+ ```json
153
+ {
154
+ "mcpServers": {
155
+ "teletype": {
156
+ "url": "https://mcp.teletype.app/mcp",
157
+ "headers": {
158
+ "X-Teletype-Api-Token": "${env:TELETYPE_API_TOKEN}"
159
+ }
160
+ }
161
+ }
162
+ }
163
+ ```
164
+
165
+ Standalone file: [cursor.json](../examples/clients/cursor.json).
166
+
167
+ </details>
168
+
169
+ For a marketplace plugin installation, set `TELETYPE_API_TOKEN` under **Plugins → Configure**. The native Cursor manifest declares this variable and connects to the hosted server. See the [plugin README](../plugin/README.md).
47
170
 
48
171
  ## VS Code with GitHub Copilot
49
172
 
50
- Merge [this config](../examples/clients/vscode.json) into your workspace's `.vscode/mcp.json` or the VS Code user MCP configuration. VS Code prompts for the Public API token and stores it as a private input. Run **MCP: List Servers** from the Command Palette to check the connection. The `.vscode/mcp.json` format uses `servers` and is different from Copilot CLI's `mcpServers` format. See the [VS Code MCP reference](https://code.visualstudio.com/docs/agents/reference/mcp-configuration).
173
+ Merge the config below into your workspace's `.vscode/mcp.json` or the VS Code user MCP configuration. VS Code prompts for the Public API token and stores it as a private input. Run **MCP: List Servers** from the Command Palette to check the connection. The `.vscode/mcp.json` format uses `servers` and is different from Copilot CLI's `mcpServers` format. See the [VS Code MCP reference](https://code.visualstudio.com/docs/agents/reference/mcp-configuration).
174
+
175
+ <details>
176
+ <summary>Show config (vscode.json)</summary>
177
+
178
+ ```json
179
+ {
180
+ "inputs": [
181
+ {
182
+ "type": "promptString",
183
+ "id": "teletype-api-token",
184
+ "description": "Teletype Public API token",
185
+ "password": true
186
+ }
187
+ ],
188
+ "servers": {
189
+ "teletype": {
190
+ "type": "http",
191
+ "url": "https://mcp.teletype.app/mcp",
192
+ "headers": {
193
+ "X-Teletype-Api-Token": "${input:teletype-api-token}"
194
+ }
195
+ }
196
+ }
197
+ }
198
+ ```
199
+
200
+ Standalone file: [vscode.json](../examples/clients/vscode.json).
201
+
202
+ </details>
51
203
 
52
204
  ## GitHub Copilot CLI
53
205
 
54
- Merge [this config](../examples/clients/copilot-cli.json) into your private `~/.copilot/mcp-config.json` and replace the token placeholder. Run `copilot mcp list` to check the server. Copilot CLI can also add the remote server with `copilot mcp add --transport http` and a `--header` argument. See [GitHub's CLI instructions](https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers).
206
+ Merge the config below into your private `~/.copilot/mcp-config.json` and replace the token placeholder. Run `copilot mcp list` to check the server. Copilot CLI can also add the remote server with `copilot mcp add --transport http` and a `--header` argument. See [GitHub's CLI instructions](https://docs.github.com/en/copilot/how-tos/copilot-cli/customize-copilot/add-mcp-servers).
207
+
208
+ <details>
209
+ <summary>Show config (copilot-cli.json)</summary>
210
+
211
+ ```json
212
+ {
213
+ "mcpServers": {
214
+ "teletype": {
215
+ "type": "http",
216
+ "url": "https://mcp.teletype.app/mcp",
217
+ "headers": {
218
+ "X-Teletype-Api-Token": "your-teletype-public-api-token"
219
+ },
220
+ "tools": ["*"]
221
+ }
222
+ }
223
+ }
224
+ ```
225
+
226
+ Standalone file: [copilot-cli.json](../examples/clients/copilot-cli.json).
227
+
228
+ </details>
55
229
 
56
230
  ## GitHub Copilot in other IDEs
57
231
 
58
- For Copilot in JetBrains IDEs, Xcode, and Eclipse, add [this server entry](../examples/clients/copilot-other-ides.json) to the MCP configuration opened from Copilot's settings. Replace the token placeholder in your private config. These integrations use `servers` with `requestInit.headers`, unlike the VS Code and Copilot CLI examples. Visual Studio uses the `servers` and `inputs` format shown in the [VS Code example](../examples/clients/vscode.json), placed in a solution-level or user-level `.mcp.json`. See [GitHub's guide to Copilot in other IDEs](https://github.com/github/github-mcp-server/blob/main/docs/installation-guides/install-other-copilot-ides.md).
232
+ For Copilot in JetBrains IDEs, Xcode, and Eclipse, add the server entry below to the MCP configuration opened from Copilot's settings. Replace the token placeholder in your private config. These integrations use `servers` with `requestInit.headers`, unlike the VS Code and Copilot CLI examples. Visual Studio uses the `servers` and `inputs` format shown in the Visual Studio config below, placed in a solution-level or user-level `.mcp.json`. See [GitHub's guide to Copilot in other IDEs](https://github.com/github/github-mcp-server/blob/main/docs/installation-guides/install-other-copilot-ides.md).
233
+
234
+ <details>
235
+ <summary>Show config (copilot-other-ides.json)</summary>
236
+
237
+ ```json
238
+ {
239
+ "servers": {
240
+ "teletype": {
241
+ "url": "https://mcp.teletype.app/mcp",
242
+ "requestInit": {
243
+ "headers": {
244
+ "X-Teletype-Api-Token": "your-teletype-public-api-token"
245
+ }
246
+ }
247
+ }
248
+ }
249
+ }
250
+ ```
251
+
252
+ Standalone file: [copilot-other-ides.json](../examples/clients/copilot-other-ides.json).
253
+
254
+ </details>
255
+
256
+ <details>
257
+ <summary>Show config (vscode.json)</summary>
258
+
259
+ ```json
260
+ {
261
+ "inputs": [
262
+ {
263
+ "type": "promptString",
264
+ "id": "teletype-api-token",
265
+ "description": "Teletype Public API token",
266
+ "password": true
267
+ }
268
+ ],
269
+ "servers": {
270
+ "teletype": {
271
+ "type": "http",
272
+ "url": "https://mcp.teletype.app/mcp",
273
+ "headers": {
274
+ "X-Teletype-Api-Token": "${input:teletype-api-token}"
275
+ }
276
+ }
277
+ }
278
+ }
279
+ ```
280
+
281
+ Standalone file: [vscode.json](../examples/clients/vscode.json).
282
+
283
+ </details>
59
284
 
60
285
  ## GitHub Copilot cloud agent and code review
61
286
 
62
- In a repository's **Settings → Copilot → MCP servers**, add [this config](../examples/clients/copilot-cloud.json). Create an Agents secret named `COPILOT_MCP_TELETYPE_API_TOKEN` for that repository or organization. The example allows only tools that cannot write to Teletype, because Copilot cloud agent calls MCP tools without asking for approval. It omits `read_conversation_thread` because that tool can mark a conversation as seen. Copilot code review also checks each tool's `readOnlyHint` annotation. See [GitHub's repository MCP guide](https://docs.github.com/en/copilot/how-tos/copilot-on-github/customize-copilot/configure-mcp-servers).
287
+ In a repository's **Settings → Copilot → MCP servers**, add the config below. Create an Agents secret named `COPILOT_MCP_TELETYPE_API_TOKEN` for that repository or organization. The example allows only tools that cannot write to Teletype, because Copilot cloud agent calls MCP tools without asking for approval. It omits `read_conversation_thread` because that tool can mark a conversation as seen. Copilot code review also checks each tool's `readOnlyHint` annotation. See [GitHub's repository MCP guide](https://docs.github.com/en/copilot/how-tos/copilot-on-github/customize-copilot/configure-mcp-servers).
288
+
289
+ <details>
290
+ <summary>Show config (copilot-cloud.json)</summary>
291
+
292
+ ```json
293
+ {
294
+ "mcpServers": {
295
+ "teletype": {
296
+ "type": "http",
297
+ "url": "https://mcp.teletype.app/mcp",
298
+ "headers": {
299
+ "X-Teletype-Api-Token": "$COPILOT_MCP_TELETYPE_API_TOKEN"
300
+ },
301
+ "tools": [
302
+ "find_conversations",
303
+ "lookup_client_profile",
304
+ "read_client_history",
305
+ "list_workspace_metadata",
306
+ "get_project_status",
307
+ "get_capabilities"
308
+ ]
309
+ }
310
+ }
311
+ }
312
+ ```
313
+
314
+ Standalone file: [copilot-cloud.json](../examples/clients/copilot-cloud.json).
315
+
316
+ </details>
63
317
 
64
318
  ## Kiro
65
319
 
66
- Merge [this config](../examples/clients/kiro.json) into `~/.kiro/settings/mcp.json` or your project's `.kiro/settings/mcp.json`. Set `TELETYPE_API_TOKEN` in Kiro's environment and approve its expansion when prompted. The same MCP configuration works in Kiro IDE and CLI. Check the MCP servers tab in the Kiro panel. See the [Kiro MCP configuration guide](https://kiro.dev/docs/mcp/configuration/).
320
+ Merge the config below into `~/.kiro/settings/mcp.json` or your project's `.kiro/settings/mcp.json`. Set `TELETYPE_API_TOKEN` in Kiro's environment and approve its expansion when prompted. The same MCP configuration works in Kiro IDE and CLI. Check the MCP servers tab in the Kiro panel. See the [Kiro MCP configuration guide](https://kiro.dev/docs/mcp/configuration/).
321
+
322
+ <details>
323
+ <summary>Show config (kiro.json)</summary>
324
+
325
+ ```json
326
+ {
327
+ "mcpServers": {
328
+ "teletype": {
329
+ "url": "https://mcp.teletype.app/mcp",
330
+ "headers": {
331
+ "X-Teletype-Api-Token": "${TELETYPE_API_TOKEN}"
332
+ }
333
+ }
334
+ }
335
+ }
336
+ ```
337
+
338
+ Standalone file: [kiro.json](../examples/clients/kiro.json).
339
+
340
+ </details>
341
+
342
+ For Kiro Powers, import the repository's `plugin/` directory as an Agent Plugin. It bundles the local stdio server and support skill. Make `TELETYPE_API_TOKEN` available in the Kiro process environment before starting the server. Node.js is required. See [Kiro's installation guide](https://kiro.dev/docs/powers/installation/).
67
343
 
68
344
  ## Qwen Code
69
345
 
70
- Merge [this config](../examples/clients/qwen-code.json) into your private `~/.qwen/settings.json` and replace the token placeholder. The `httpUrl` field selects Streamable HTTP. Qwen Code uses `url` for legacy SSE, which is not the transport at the Teletype endpoint. Run `/mcp` inside Qwen Code to check the connection. See the [Qwen Code MCP guide](https://qwenlm.github.io/qwen-code-docs/en/developers/tools/mcp-server/).
346
+ Merge the config below into your private `~/.qwen/settings.json` and replace the token placeholder. The `httpUrl` field selects Streamable HTTP. Qwen Code uses `url` for legacy SSE, which is not the transport at the Teletype endpoint. Run `/mcp` inside Qwen Code to check the connection. See the [Qwen Code MCP guide](https://qwenlm.github.io/qwen-code-docs/en/developers/tools/mcp-server/).
347
+
348
+ <details>
349
+ <summary>Show config (qwen-code.json)</summary>
350
+
351
+ ```json
352
+ {
353
+ "mcpServers": {
354
+ "teletype": {
355
+ "httpUrl": "https://mcp.teletype.app/mcp",
356
+ "headers": {
357
+ "X-Teletype-Api-Token": "your-teletype-public-api-token"
358
+ }
359
+ }
360
+ }
361
+ }
362
+ ```
363
+
364
+ Standalone file: [qwen-code.json](../examples/clients/qwen-code.json).
365
+
366
+ </details>
71
367
 
72
368
  ## Rovo Dev CLI
73
369
 
74
- Merge [this config](../examples/clients/rovo-dev.json) into your private `~/.rovodev/mcp.json` and replace the token placeholder. Use `acli rovodev mcp` to open the config or `/mcp` in an interactive session to check the connection. See the [Rovo Dev MCP guide](https://support.atlassian.com/rovo/docs/connect-to-an-mcp-server-in-rovo-dev-cli/).
370
+ Merge the config below into your private `~/.rovodev/mcp.json` and replace the token placeholder. Use `acli rovodev mcp` to open the config or `/mcp` in an interactive session to check the connection. See the [Rovo Dev MCP guide](https://support.atlassian.com/rovo/docs/connect-to-an-mcp-server-in-rovo-dev-cli/).
371
+
372
+ <details>
373
+ <summary>Show config (rovo-dev.json)</summary>
374
+
375
+ ```json
376
+ {
377
+ "mcpServers": {
378
+ "teletype": {
379
+ "transport": "http",
380
+ "url": "https://mcp.teletype.app/mcp",
381
+ "headers": {
382
+ "X-Teletype-Api-Token": "your-teletype-public-api-token"
383
+ }
384
+ }
385
+ }
386
+ }
387
+ ```
388
+
389
+ Standalone file: [rovo-dev.json](../examples/clients/rovo-dev.json).
390
+
391
+ </details>
392
+
393
+ ## Gemini CLI extension
394
+
395
+ For Gemini CLI users, install the extension with `gemini extensions install https://github.com/Teletype-App/teletype-mcp-server`. Enter the **Teletype Public API token** setting when prompted. It is declared sensitive and supplies the hosted server's authentication header. Run `gemini extensions config teletype` to change the setting and `/mcp` inside Gemini CLI to check the tools. The extension also loads the shared support workflow as context. See the [Gemini extension guide](https://geminicli.com/docs/extensions/).
396
+
397
+ ## OpenClaw
398
+
399
+ Merge the config below into private `~/.openclaw/openclaw.json`, preserving existing entries. OpenClaw uses `mcp.servers`. Set `TELETYPE_API_TOKEN` in the Gateway process environment. Run `openclaw mcp doctor teletype --probe` to check the connection. Installing the support skill separately does not add this MCP connection. See the [OpenClaw MCP guide](https://docs.openclaw.ai/tools/mcp).
400
+
401
+ <details>
402
+ <summary>Show config (openclaw.json)</summary>
403
+
404
+ ```json
405
+ {
406
+ "mcp": {
407
+ "servers": {
408
+ "teletype": {
409
+ "url": "https://mcp.teletype.app/mcp",
410
+ "transport": "streamable-http",
411
+ "headers": {
412
+ "X-Teletype-Api-Token": "${TELETYPE_API_TOKEN}"
413
+ }
414
+ }
415
+ }
416
+ }
417
+ }
418
+ ```
419
+
420
+ Standalone file: [openclaw.json](../examples/clients/openclaw.json).
421
+
422
+ </details>
75
423
 
76
424
  ## Antigravity CLI
77
425
 
78
- Merge the server entry from [this config](../examples/clients/antigravity.json) into `~/.gemini/config/mcp_config.json`, or put it in your project's `.agents/mcp_config.json`. Keep your other MCP servers. Run `agy mcp list` to check the connection. The server inherits `TELETYPE_API_TOKEN` from the client process. To get Russian tool descriptions and replies, add `"env": { "TELETYPE_MCP_LOCALE": "ru" }` to the server entry.
426
+ Merge the server entry from the config below into `~/.gemini/config/mcp_config.json`, or put it in your project's `.agents/mcp_config.json`. Keep your other MCP servers. Run `agy mcp list` to check the connection. The server inherits `TELETYPE_API_TOKEN` from the client process. To get Russian tool descriptions and replies, add `"env": { "TELETYPE_MCP_LOCALE": "ru" }` to the server entry.
427
+
428
+ <details>
429
+ <summary>Show config (antigravity.json)</summary>
430
+
431
+ ```json
432
+ {
433
+ "mcpServers": {
434
+ "teletype": {
435
+ "command": "npx",
436
+ "args": ["-y", "teletype-mcp-server", "--stdio"],
437
+ "tools": {
438
+ "find_conversations": { "eager": true },
439
+ "find_messages": { "eager": true },
440
+ "lookup_client_profile": { "eager": true },
441
+ "list_clients": { "eager": true },
442
+ "read_conversation_thread": { "eager": true },
443
+ "read_client_history": { "eager": true },
444
+ "send_reply_to_client": { "eager": true },
445
+ "create_dialog_by_phone": { "eager": true },
446
+ "annotate_client_record": { "eager": true },
447
+ "resolve_conversation": { "eager": true },
448
+ "list_workspace_metadata": { "eager": true },
449
+ "get_project_status": { "eager": true },
450
+ "manage_sent_message": { "eager": true },
451
+ "send_whatsapp_template": { "eager": true },
452
+ "manage_operator_group": { "eager": true },
453
+ "configure_project_webhook": { "eager": true },
454
+ "get_capabilities": { "eager": true }
455
+ }
456
+ }
457
+ }
458
+ }
459
+ ```
460
+
461
+ Standalone file: [antigravity.json](../examples/clients/antigravity.json).
462
+
463
+ </details>
79
464
 
80
465
  Google moved individual accounts from Gemini CLI to Antigravity CLI in June 2026. Gemini CLI still serves enterprise and API-key users, but this guide targets Antigravity CLI. See [Google's transition announcement](https://github.com/google-gemini/gemini-cli/discussions/28017).
81
466
 
@@ -85,39 +470,242 @@ Once connected, ask the agent to find unanswered Teletype conversations. It shou
85
470
 
86
471
  ## Devin
87
472
 
88
- An organization admin adds the server once: **Customize → MCPs** tab, **Add MCP → Add custom MCP**, transport `STDIO`, then fill in the fields from [this reference](../examples/clients/devin.json): `command: npx`, `args: ["-y", "teletype-mcp-server", "--stdio"]`, and the `TELETYPE_API_TOKEN` environment variable. Members then enable the server from the same tab in their sessions. Devin runs stdio servers in its own environment, so verify by starting a session and asking for Teletype tools. The remote-only "Test tools" button does not apply. See the [Devin MCP documentation](https://docs.devin.ai/work-with-devin/mcp).
473
+ An organization admin adds the server once: **Customize → MCPs** tab, **Add MCP → Add custom MCP**, transport `STDIO`, then fill in the fields from the reference below: `command: npx`, `args: ["-y", "teletype-mcp-server", "--stdio"]`, and the `TELETYPE_API_TOKEN` environment variable. Members then enable the server from the same tab in their sessions. Devin runs stdio servers in its own environment, so verify by starting a session and asking for Teletype tools. The remote-only "Test tools" button does not apply. See the [Devin MCP documentation](https://docs.devin.ai/work-with-devin/mcp).
474
+
475
+ <details>
476
+ <summary>Show config (devin.json)</summary>
477
+
478
+ ```json
479
+ {
480
+ "transport": "STDIO",
481
+ "command": "npx",
482
+ "args": ["-y", "teletype-mcp-server", "--stdio"],
483
+ "env_variables": {
484
+ "TELETYPE_API_TOKEN": "your-teletype-public-api-token"
485
+ }
486
+ }
487
+ ```
488
+
489
+ Standalone file: [devin.json](../examples/clients/devin.json).
490
+
491
+ </details>
89
492
 
90
493
  ## Windsurf Cascade
91
494
 
92
- Open **Open MCP config file** through **Actions → MCPs** in the Cascade panel and merge [this server entry](../examples/clients/windsurf.json) into its `mcpServers` object. The current Cascade configuration expands `${env:TELETYPE_API_TOKEN}` in HTTP headers. Make the token available to the app process, then check the server in Cascade's MCP panel. This config is for the legacy Cascade agent in Devin Desktop. The newer Devin Local agent uses its own MCP settings. See the [Cascade MCP guide](https://docs.devin.ai/desktop/cascade/mcp).
495
+ Open **Open MCP config file** through **Actions → MCPs** in the Cascade panel and merge the server entry below into its `mcpServers` object. The current Cascade configuration expands `${env:TELETYPE_API_TOKEN}` in HTTP headers. Make the token available to the app process, then check the server in Cascade's MCP panel. This config is for the legacy Cascade agent in Devin Desktop. The newer Devin Local agent uses its own MCP settings. See the [Cascade MCP guide](https://docs.devin.ai/desktop/cascade/mcp).
496
+
497
+ <details>
498
+ <summary>Show config (windsurf.json)</summary>
499
+
500
+ ```json
501
+ {
502
+ "mcpServers": {
503
+ "teletype": {
504
+ "serverUrl": "https://mcp.teletype.app/mcp",
505
+ "headers": {
506
+ "X-Teletype-Api-Token": "${env:TELETYPE_API_TOKEN}"
507
+ }
508
+ }
509
+ }
510
+ }
511
+ ```
512
+
513
+ Standalone file: [windsurf.json](../examples/clients/windsurf.json).
514
+
515
+ </details>
93
516
 
94
517
  ## Zed
95
518
 
96
- Merge the entry from [this config](../examples/clients/zed.json) into the `context_servers` block of your Zed `settings.json`, or use **Settings → AI → MCP Servers → Add Server → Add Local Server** and enter the same command, arguments, and `TELETYPE_API_TOKEN` environment variable. For the hosted endpoint, use a remote entry instead: `"url": "https://mcp.teletype.app/mcp"` with `"headers": { "X-Teletype-Api-Token": "your-teletype-public-api-token" }`. A green indicator with the tooltip "Server is active" on the MCP Servers settings page confirms the connection. See the [Zed MCP documentation](https://zed.dev/docs/ai/mcp).
519
+ Merge the entry from the config below into the `context_servers` block of your Zed `settings.json`, or use **Settings → AI → MCP Servers → Add Server → Add Local Server** and enter the same command, arguments, and `TELETYPE_API_TOKEN` environment variable. For the hosted endpoint, use a remote entry instead: `"url": "https://mcp.teletype.app/mcp"` with `"headers": { "X-Teletype-Api-Token": "your-teletype-public-api-token" }`. A green indicator with the tooltip "Server is active" on the MCP Servers settings page confirms the connection. See the [Zed MCP documentation](https://zed.dev/docs/ai/mcp).
520
+
521
+ <details>
522
+ <summary>Show config (zed.json)</summary>
523
+
524
+ ```json
525
+ {
526
+ "context_servers": {
527
+ "teletype": {
528
+ "command": "npx",
529
+ "args": ["-y", "teletype-mcp-server", "--stdio"],
530
+ "env": { "TELETYPE_API_TOKEN": "your-teletype-public-api-token" }
531
+ }
532
+ }
533
+ }
534
+ ```
535
+
536
+ Standalone file: [zed.json](../examples/clients/zed.json).
537
+
538
+ </details>
97
539
 
98
540
  ## ZCode
99
541
 
100
- Use **Settings → MCP Servers → New MCP Server** with type `stdio`, or paste the JSON from [this file](../examples/clients/zcode.json). For manual editing, ZCode reads `mcp.servers` from `~/.zcode/cli/config.json` (user scope) or `.zcode/config.json` in the project root (workspace scope). It also accepts a standard `mcpServers` block in `~/.agents/mcp.json` or the project's `.agents/mcp.json`. Set `TELETYPE_API_TOKEN` in the server's environment variables either way. See the [ZCode MCP documentation](https://zcode.z.ai/en/docs/mcp-services).
542
+ Use **Settings → MCP Servers → New MCP Server** with type `stdio`, or paste the JSON from the config below. For manual editing, ZCode reads `mcp.servers` from `~/.zcode/cli/config.json` (user scope) or `.zcode/config.json` in the project root (workspace scope). It also accepts a standard `mcpServers` block in `~/.agents/mcp.json` or the project's `.agents/mcp.json`. Set `TELETYPE_API_TOKEN` in the server's environment variables either way. See the [ZCode MCP documentation](https://zcode.z.ai/en/docs/mcp-services).
543
+
544
+ <details>
545
+ <summary>Show config (zcode.json)</summary>
546
+
547
+ ```json
548
+ {
549
+ "mcp": {
550
+ "servers": {
551
+ "teletype": {
552
+ "command": "npx",
553
+ "args": ["-y", "teletype-mcp-server", "--stdio"],
554
+ "env": { "TELETYPE_API_TOKEN": "your-teletype-public-api-token" }
555
+ }
556
+ }
557
+ }
558
+ }
559
+ ```
560
+
561
+ Standalone file: [zcode.json](../examples/clients/zcode.json).
562
+
563
+ </details>
101
564
 
102
565
  ## Cline
103
566
 
104
- In Cline, open **MCP Servers**, choose **Configure**, and merge [this config](../examples/clients/cline.json) into your private MCP settings. Replace the token placeholder. The `streamableHttp` type is required for the hosted endpoint. Leaving out `type` selects legacy SSE. Cline CLI also provides the `cline mcp` configuration wizard. See the [Cline MCP guide](https://github.com/cline/cline/blob/main/docs/mcp/mcp-overview.mdx).
567
+ In Cline, open **MCP Servers**, choose **Configure**, and merge the config below into your private MCP settings. Replace the token placeholder. The `streamableHttp` type is required for the hosted endpoint. Leaving out `type` selects legacy SSE. Cline CLI also provides the `cline mcp` configuration wizard. See the [Cline MCP guide](https://github.com/cline/cline/blob/main/docs/mcp/mcp-overview.mdx).
568
+
569
+ <details>
570
+ <summary>Show config (cline.json)</summary>
571
+
572
+ ```json
573
+ {
574
+ "mcpServers": {
575
+ "teletype": {
576
+ "type": "streamableHttp",
577
+ "url": "https://mcp.teletype.app/mcp",
578
+ "headers": {
579
+ "X-Teletype-Api-Token": "your-teletype-public-api-token"
580
+ },
581
+ "disabled": false,
582
+ "autoApprove": []
583
+ }
584
+ }
585
+ }
586
+ ```
587
+
588
+ Standalone file: [cline.json](../examples/clients/cline.json).
589
+
590
+ </details>
105
591
 
106
592
  ## Roo Code
107
593
 
108
- For existing Roo Code installations, merge [this config](../examples/clients/roo-code.json) into your private MCP settings and replace the token placeholder. Roo Code uses `streamable-http` with a hyphen for the hosted endpoint. Its [repository is archived](https://github.com/RooCodeInc/Roo-Code), so this example is for users who still run it. See the [GitHub MCP setup for Roo Code](https://github.com/github/github-mcp-server/blob/main/docs/installation-guides/install-roo-code.md).
594
+ For existing Roo Code installations, merge the config below into your private MCP settings and replace the token placeholder. Roo Code uses `streamable-http` with a hyphen for the hosted endpoint. Its [repository is archived](https://github.com/RooCodeInc/Roo-Code), so this example is for users who still run it. See the [GitHub MCP setup for Roo Code](https://github.com/github/github-mcp-server/blob/main/docs/installation-guides/install-roo-code.md).
595
+
596
+ <details>
597
+ <summary>Show config (roo-code.json)</summary>
598
+
599
+ ```json
600
+ {
601
+ "mcpServers": {
602
+ "teletype": {
603
+ "type": "streamable-http",
604
+ "url": "https://mcp.teletype.app/mcp",
605
+ "headers": {
606
+ "X-Teletype-Api-Token": "your-teletype-public-api-token"
607
+ }
608
+ }
609
+ }
610
+ }
611
+ ```
612
+
613
+ Standalone file: [roo-code.json](../examples/clients/roo-code.json).
614
+
615
+ </details>
109
616
 
110
617
  ## Junie
111
618
 
112
- Merge [this config](../examples/clients/junie.json) into your private `~/.junie/mcp/mcp.json` and replace the token placeholder. Junie in JetBrains IDEs and Junie CLI use the same MCP format. Open `/mcp` in Junie CLI, or **Tools → Junie → MCP Settings** in the IDE, to check that the server is active. See the [Junie MCP guide](https://junie.jetbrains.com/docs/junie-cli-mcp-configuration.html).
619
+ Merge the config below into your private `~/.junie/mcp/mcp.json` and replace the token placeholder. Junie in JetBrains IDEs and Junie CLI use the same MCP format. Open `/mcp` in Junie CLI, or **Tools → Junie → MCP Settings** in the IDE, to check that the server is active. See the [Junie MCP guide](https://junie.jetbrains.com/docs/junie-cli-mcp-configuration.html).
620
+
621
+ <details>
622
+ <summary>Show config (junie.json)</summary>
623
+
624
+ ```json
625
+ {
626
+ "mcpServers": {
627
+ "teletype": {
628
+ "url": "https://mcp.teletype.app/mcp",
629
+ "headers": {
630
+ "X-Teletype-Api-Token": "your-teletype-public-api-token"
631
+ }
632
+ }
633
+ }
634
+ }
635
+ ```
636
+
637
+ Standalone file: [junie.json](../examples/clients/junie.json).
638
+
639
+ </details>
113
640
 
114
641
  ## Continue
115
642
 
116
- Merge the `mcpServers` entry from [this YAML snippet](../examples/clients/continue.yaml) into your Continue `config.yaml`. Put `TELETYPE_API_TOKEN=...` in your private `~/.continue/.env` file. In Continue CLI, exporting the variable before starting `cn` also works. Continue uses MCP tools in Agent mode. See the [Continue MCP guide](https://docs.continue.dev/customize/deep-dives/mcp) and [local secrets guide](https://docs.continue.dev/faqs#managing-local-secrets-and-environment-variables).
643
+ Merge the `mcpServers` entry from the YAML snippet below into your Continue `config.yaml`. Put `TELETYPE_API_TOKEN=...` in your private `~/.continue/.env` file. In Continue CLI, exporting the variable before starting `cn` also works. Continue uses MCP tools in Agent mode. See the [Continue MCP guide](https://docs.continue.dev/customize/deep-dives/mcp) and [local secrets guide](https://docs.continue.dev/faqs#managing-local-secrets-and-environment-variables).
644
+
645
+ <details>
646
+ <summary>Show config (continue.yaml)</summary>
647
+
648
+ ```yaml
649
+ mcpServers:
650
+ - name: Teletype
651
+ type: streamable-http
652
+ url: https://mcp.teletype.app/mcp
653
+ requestOptions:
654
+ headers:
655
+ X-Teletype-Api-Token: "${{ secrets.TELETYPE_API_TOKEN }}"
656
+ ```
657
+
658
+ Standalone file: [continue.yaml](../examples/clients/continue.yaml).
659
+
660
+ </details>
117
661
 
118
662
  ## Goose
119
663
 
120
- Merge [this YAML snippet](../examples/clients/goose.yaml) into your private `~/.config/goose/config.yaml` and replace the token placeholder. Goose treats MCP servers as extensions and uses `streamable_http` for the hosted endpoint. You can also add a remote Streamable HTTP extension through `goose configure`. See the [Goose extension guide](https://github.com/aaif-goose/goose/blob/main/documentation/docs/getting-started/using-extensions.md) and [config reference](https://github.com/aaif-goose/goose/blob/main/documentation/docs/guides/config-files.md).
664
+ For a local connection, merge the stdio config below into your private `~/.config/goose/config.yaml` and replace the token placeholder. The command requires Node.js 20.19+, 22.13+, or 24.x. Keep any other extension entries.
665
+
666
+ <details>
667
+ <summary>Show config (goose-stdio.yaml)</summary>
668
+
669
+ ```yaml
670
+ extensions:
671
+ teletype:
672
+ name: teletype
673
+ type: stdio
674
+ enabled: true
675
+ cmd: npx
676
+ args:
677
+ - -y
678
+ - teletype-mcp-server
679
+ - --stdio
680
+ envs:
681
+ TELETYPE_API_TOKEN: your-teletype-public-api-token
682
+ timeout: 300
683
+ ```
684
+
685
+ Standalone file: [goose-stdio.yaml](../examples/clients/goose-stdio.yaml).
686
+
687
+ </details>
688
+
689
+ Merge the YAML snippet below into your private `~/.config/goose/config.yaml` and replace the token placeholder. Goose treats MCP servers as extensions and uses `streamable_http` for the hosted endpoint. You can also add a remote Streamable HTTP extension through `goose configure`. See the [Goose extension guide](https://github.com/aaif-goose/goose/blob/main/documentation/docs/getting-started/using-extensions.md) and [config reference](https://github.com/aaif-goose/goose/blob/main/documentation/docs/guides/config-files.md).
690
+
691
+ <details>
692
+ <summary>Show config (goose.yaml)</summary>
693
+
694
+ ```yaml
695
+ extensions:
696
+ teletype:
697
+ name: teletype
698
+ type: streamable_http
699
+ enabled: true
700
+ uri: https://mcp.teletype.app/mcp
701
+ headers:
702
+ X-Teletype-Api-Token: your-teletype-public-api-token
703
+ timeout: 300
704
+ ```
705
+
706
+ Standalone file: [goose.yaml](../examples/clients/goose.yaml).
707
+
708
+ </details>
121
709
 
122
710
  ## n8n
123
711
 
@@ -125,11 +713,47 @@ Add an **MCP Client** node for a workflow step or **MCP Client Tool** for an AI
125
713
 
126
714
  ## Flowise
127
715
 
128
- Create a Flowise variable named `teletypeApiToken` containing your Public API token. Add **Custom MCP** to an Agent node and paste [this config](../examples/clients/flowise.json) into **MCP Server Config**. Refresh **Available Actions** to load the Teletype tools. See the [Flowise Custom MCP guide](https://docs.flowiseai.com/tutorials/tools-and-mcp).
716
+ Create a Flowise variable named `teletypeApiToken` containing your Public API token. Add **Custom MCP** to an Agent node and paste the config below into **MCP Server Config**. Refresh **Available Actions** to load the Teletype tools. See the [Flowise Custom MCP guide](https://docs.flowiseai.com/tutorials/tools-and-mcp).
717
+
718
+ <details>
719
+ <summary>Show config (flowise.json)</summary>
720
+
721
+ ```json
722
+ {
723
+ "url": "https://mcp.teletype.app/mcp",
724
+ "headers": {
725
+ "X-Teletype-Api-Token": "{{$vars.teletypeApiToken}}"
726
+ }
727
+ }
728
+ ```
729
+
730
+ Standalone file: [flowise.json](../examples/clients/flowise.json).
731
+
732
+ </details>
129
733
 
130
734
  ## LibreChat
131
735
 
132
- Merge [this YAML snippet](../examples/clients/librechat.yaml) into your `librechat.yaml`. Each user enters their own Public API token through LibreChat's MCP settings, where `customUserVars` keeps it out of the shared config. Select the Teletype MCP server in the chat tool picker or Agent Builder. LibreChat also has a UI server builder: choose Streamable HTTP, the hosted URL, and API Key authentication with a custom header named `X-Teletype-Api-Token`. See the [LibreChat MCP guide](https://www.librechat.ai/docs/features/mcp).
736
+ Merge the YAML snippet below into your `librechat.yaml`. Each user enters their own Public API token through LibreChat's MCP settings, where `customUserVars` keeps it out of the shared config. Select the Teletype MCP server in the chat tool picker or Agent Builder. LibreChat also has a UI server builder: choose Streamable HTTP, the hosted URL, and API Key authentication with a custom header named `X-Teletype-Api-Token`. See the [LibreChat MCP guide](https://www.librechat.ai/docs/features/mcp).
737
+
738
+ <details>
739
+ <summary>Show config (librechat.yaml)</summary>
740
+
741
+ ```yaml
742
+ mcpServers:
743
+ teletype:
744
+ type: streamable-http
745
+ url: https://mcp.teletype.app/mcp
746
+ headers:
747
+ X-Teletype-Api-Token: "{{TELETYPE_API_TOKEN}}"
748
+ customUserVars:
749
+ TELETYPE_API_TOKEN:
750
+ title: Teletype Public API token
751
+ description: Enter your Teletype Public API token
752
+ ```
753
+
754
+ Standalone file: [librechat.yaml](../examples/clients/librechat.yaml).
755
+
756
+ </details>
133
757
 
134
758
  ## Open WebUI
135
759