get_comment_replies
Retrieve replies to a specific comment in WebSim projects to view discussion threads and community interactions.
Instructions
Get replies to a specific comment
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| project_id | Yes | WebSim project ID | |
| comment_id | Yes | Comment ID | |
| limit | No | Number of replies to return (default: 20) | |
| offset | No | Number of replies to skip (default: 0) |
Input Schema (JSON Schema)
{
"properties": {
"comment_id": {
"description": "Comment ID",
"type": "string"
},
"limit": {
"default": 20,
"description": "Number of replies to return (default: 20)",
"type": "number"
},
"offset": {
"default": 0,
"description": "Number of replies to skip (default: 0)",
"type": "number"
},
"project_id": {
"description": "WebSim project ID",
"type": "string"
}
},
"required": [
"project_id",
"comment_id"
],
"type": "object"
}
Implementation Reference
- server.js:1064-1077 (handler)MCP tool handler for 'get_comment_replies'. It extracts parameters from args, invokes the API client's getCommentReplies method, and returns a formatted JSON response containing the replies.handler: async (args) => { const { project_id, comment_id, limit = 20, offset = 0 } = args; const result = await apiClient.getCommentReplies(project_id, comment_id, limit, offset); return { content: [{ type: "text", text: JSON.stringify({ success: true, data: result, message: `Successfully retrieved ${result.items?.length || 0} replies to comment ${comment_id}` }, null, 2) }] }; }
- server.js:1040-1063 (schema)Input schema validating the tool parameters: project_id (required), comment_id (required), limit (optional, default 20), offset (optional, default 0).inputSchema: { type: "object", properties: { project_id: { type: "string", description: "WebSim project ID" }, comment_id: { type: "string", description: "Comment ID" }, limit: { type: "number", description: "Number of replies to return (default: 20)", default: 20 }, offset: { type: "number", description: "Number of replies to skip (default: 0)", default: 0 } }, required: ["project_id", "comment_id"] },
- server.js:1037-1078 (registration)The full tool registration object added to the 'tools' array, defining name, description, inputSchema, and handler for MCP server registration.{ name: "get_comment_replies", description: "Get replies to a specific comment", inputSchema: { type: "object", properties: { project_id: { type: "string", description: "WebSim project ID" }, comment_id: { type: "string", description: "Comment ID" }, limit: { type: "number", description: "Number of replies to return (default: 20)", default: 20 }, offset: { type: "number", description: "Number of replies to skip (default: 0)", default: 0 } }, required: ["project_id", "comment_id"] }, handler: async (args) => { const { project_id, comment_id, limit = 20, offset = 0 } = args; const result = await apiClient.getCommentReplies(project_id, comment_id, limit, offset); return { content: [{ type: "text", text: JSON.stringify({ success: true, data: result, message: `Successfully retrieved ${result.items?.length || 0} replies to comment ${comment_id}` }, null, 2) }] }; } },
- server.js:228-231 (helper)WebSimAPIClient helper method that constructs the API endpoint URL with pagination parameters and performs the HTTP request to retrieve comment replies.async getCommentReplies(projectId, commentId, limit = 20, offset = 0) { const params = new URLSearchParams({ limit: limit.toString(), offset: offset.toString() }); return this.makeRequest(`/api/v1/projects/${projectId}/comments/${commentId}/replies?${params}`); }