@telos.ready/mcp 1.0.1 → 1.1.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 CHANGED
@@ -180,6 +180,9 @@ npm run build
180
180
  ### Publishing
181
181
 
182
182
  ```bash
183
+ npm whoami
184
+ npm login
185
+ npm version patch|minor|major
183
186
  npm publish --access public
184
187
  ```
185
188
 
@@ -217,7 +220,3 @@ If you encounter issues:
217
220
 
218
221
  ISC
219
222
 
220
- ## Deploying
221
- npm whoami
222
- npm login
223
- npm version patch|minor|major
package/build/index.js CHANGED
@@ -125,7 +125,43 @@ server.tool("ask-question", "Asks a question about an application and gets an an
125
125
  };
126
126
  }
127
127
  });
128
- // Tool 2: Add Ticket Comment
128
+ // Tool 2: Search Documentation
129
+ server.tool("search-documentation", "Searches documentation for an application to get relevant context. Documentation includes information about application resources, concepts, stories and known solutions. Provide both an application slug and a specific query.", {
130
+ applicationSlug: z
131
+ .string()
132
+ .describe('The application slug for the application you want to search documentation for, which is a unique identifier string used to reference specific applications.'),
133
+ query: z
134
+ .string()
135
+ .describe("The query to search for in the documentation."),
136
+ }, async ({ applicationSlug, query }) => {
137
+ try {
138
+ const result = await telosClient.post("/mcp/search-documentation", {
139
+ applicationSlug,
140
+ query,
141
+ });
142
+ if (result.success) {
143
+ return {
144
+ content: [{ type: "text", text: result.result }],
145
+ };
146
+ }
147
+ else {
148
+ return {
149
+ content: [{ type: "text", text: `Error: ${result}` }],
150
+ };
151
+ }
152
+ }
153
+ catch (error) {
154
+ return {
155
+ content: [
156
+ {
157
+ type: "text",
158
+ text: `Error searching documentation for application ${applicationSlug}: ${error}`,
159
+ },
160
+ ],
161
+ };
162
+ }
163
+ });
164
+ // Tool 3: Add Ticket Comment
129
165
  server.tool("add-ticket-comment", "Adds a comment to an existing ticket. This tool allows adding a comment to a specific ticket with proper attribution.", {
130
166
  ticketReference: z
131
167
  .string()
@@ -167,7 +203,7 @@ server.tool("add-ticket-comment", "Adds a comment to an existing ticket. This to
167
203
  };
168
204
  }
169
205
  });
170
- // Tool 3: Add Documentation (Create Knowledge Ticket)
206
+ // Tool 4: Add Documentation (Create Knowledge Ticket)
171
207
  server.tool("add-documentation", "Creates a new knowledge ticket with documentation content. Only use this tool if a comment cannot be added directly to a ticket. This tool creates a knowledge ticket that can be used to store and organize documentation, procedures, guides, or any other knowledge-based content for future reference.", {
172
208
  content: z
173
209
  .string()
@@ -205,7 +241,7 @@ server.tool("add-documentation", "Creates a new knowledge ticket with documentat
205
241
  };
206
242
  }
207
243
  });
208
- // Tool 4: Get Ticket Details
244
+ // Tool 5: Get Ticket Details
209
245
  server.tool("get-ticket-details", "Gets the details of a ticket. The ticket reference must be provided. This tool will provide the initial description of the ticket and any comments that users have made on the ticket.", {
210
246
  ticketReference: z
211
247
  .string()
@@ -237,7 +273,7 @@ server.tool("get-ticket-details", "Gets the details of a ticket. The ticket refe
237
273
  };
238
274
  }
239
275
  });
240
- // Tool 5: Get Next Task
276
+ // Tool 6: Get Next Task
241
277
  server.tool("get-next-task", "Gets the next task for a member and provides a ticket reference, next step and instructions for completing the task.", {
242
278
  applicationSlug: z
243
279
  .string()
@@ -269,7 +305,7 @@ server.tool("get-next-task", "Gets the next task for a member and provides a tic
269
305
  };
270
306
  }
271
307
  });
272
- // Tool 6: Get Git Branch for Ticket
308
+ // Tool 7: Get Git Branch for Ticket
273
309
  server.tool("get-git-branch-for-ticket", "Gets the git branch to be used for development work on this ticket. All commits for this ticket must use this branch. Git branches must stay ahead of main.", {
274
310
  ticketReference: z
275
311
  .string()
@@ -301,7 +337,7 @@ server.tool("get-git-branch-for-ticket", "Gets the git branch to be used for dev
301
337
  };
302
338
  }
303
339
  });
304
- // Tool 7: Mark Ticket as Blocked
340
+ // Tool 8: Mark Ticket as Blocked
305
341
  server.tool("mark-ticket-as-blocked", "Marks a ticket as blocked with a specified reason. This tool will load the ticket, add a comment with the blocking reason, and set the ticket status to blocked.", {
306
342
  ticketReference: z
307
343
  .string()
@@ -337,7 +373,7 @@ server.tool("mark-ticket-as-blocked", "Marks a ticket as blocked with a specifie
337
373
  };
338
374
  }
339
375
  });
340
- // Tool 8: Update Action Item
376
+ // Tool 9: Update Action Item
341
377
  server.tool("update-action-item", "Updates the status of an action item in a ticket. This tool finds a specific action item in the ticket or its comments and updates its status to INCOMPLETE, INPROGRESS, or COMPLETED.", {
342
378
  ticketReference: z
343
379
  .string()
@@ -389,7 +425,7 @@ async function main() {
389
425
  await server.connect(transport);
390
426
  // Log success message
391
427
  console.error("✅ Telos MCP Server running on stdio");
392
- console.error("Available tools: ask-question, add-ticket-comment, add-documentation, get-ticket-details, get-next-task, get-git-branch-for-ticket, mark-ticket-as-blocked, update-action-item");
428
+ console.error("Available tools: ask-question, search-documentation, add-ticket-comment, add-documentation, get-ticket-details, get-next-task, get-git-branch-for-ticket, mark-ticket-as-blocked, update-action-item");
393
429
  // Test connection in background without blocking or exiting
394
430
  // This is non-critical and should not cause the server to exit
395
431
  setImmediate(async () => {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@telos.ready/mcp",
3
- "version": "1.0.1",
3
+ "version": "1.1.0",
4
4
  "description": "Telos MCP server for managing tickets and project tasks",
5
5
  "main": "build/index.js",
6
6
  "type": "module",