Skip to main content
Glama

dooray_comments

Manage task comments in Dooray by listing, creating, updating, or deleting comments with mention support for collaborative project discussions.

Instructions

Manage Dooray task comments - get list, create, update, delete comments with mention support

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionYesAction to perform on comments
taskIdYesTask ID (required)
commentIdNoComment ID (required for update/delete)
contentNoComment content (for create/update)
mentionsNoUser IDs to mention (optional)

Implementation Reference

  • Main execution logic for the dooray_comments tool. Dispatches to action-specific methods (_list_comments, _create_comment, _update_comment, _delete_comment) based on the 'action' parameter.
    async def handle(self, arguments: Dict[str, Any]) -> str: """Handle comments tool requests. Args: arguments: Tool arguments containing action and parameters Returns: JSON string with results """ action = arguments.get("action") task_id = arguments.get("taskId") if not action: return json.dumps({"error": "Action parameter is required"}) if not task_id: return json.dumps({"error": "taskId parameter is required"}) try: if action == "list": return await self._list_comments(arguments) elif action == "create": return await self._create_comment(arguments) elif action == "update": return await self._update_comment(arguments) elif action == "delete": return await self._delete_comment(arguments) else: return json.dumps({"error": f"Unknown action: {action}"}) except Exception as e: logger.error(f"Error in comments tool: {e}") return json.dumps({"error": str(e)})
  • Input schema definition for validating parameters to the dooray_comments tool, specifying actions, required taskId, and optional fields like content, commentId, mentions.
    types.Tool( name="dooray_comments", description="Manage Dooray task comments - get list, create, update, delete comments with mention support", inputSchema={ "type": "object", "properties": { "action": { "type": "string", "enum": ["list", "create", "update", "delete"], "description": "Action to perform on comments" }, "taskId": { "type": "string", "description": "Task ID (required)" }, "commentId": { "type": "string", "description": "Comment ID (required for update/delete)" }, "content": { "type": "string", "description": "Comment content (for create/update)" }, "mentions": { "type": "array", "items": {"type": "string"}, "description": "User IDs to mention (optional)" } }, "required": ["action", "taskId"] } ),
  • Registration and dispatch logic in the MCP server's call_tool handler: matches tool name and instantiates/calls the CommentsTool.handle method.
    elif name == "dooray_comments": tool = CommentsTool(dooray_client) result = await tool.handle(args)

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/tallpizza/dooray-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server