Skip to main content
Glama
Hirao-Y

Poker Task Management MCP

by Hirao-Y

poker_deleteDetector

Remove a detector from the task management system to maintain clean task structures and eliminate unnecessary monitoring components.

Instructions

検出器を削除します

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYes削除する検出器の名前

Implementation Reference

  • The primary handler function for the poker_deleteDetector tool. It extracts the detector name, verifies existence, performs structure analysis, delegates deletion to taskManager.deleteDetector, logs the operation, and returns detailed success information including pre-deletion analysis.
    async deleteDetector(args) {
      try {
        const { name } = args;
        
        logger.info('検出器削除開始', { name });
        
        // 存在確認
        const existingDetector = taskManager.findDetectorByName(name);
        if (!existingDetector) {
          throw new ValidationError(`検出器 ${name} が見つかりません`, 'name', name);
        }
        
        // 削除前の分析情報を記録
        const preDeleteAnalysis = taskManager.analyzeDetectorStructure(existingDetector);
        
        const result = await taskManager.deleteDetector(name);
        
        logger.info('検出器削除完了', { 
          name, 
          deletedComplexity: preDeleteAnalysis.complexity 
        });
        
        return { 
          success: true, 
          message: result,
          deleted: {
            name,
            type: preDeleteAnalysis.type,
            dimension: preDeleteAnalysis.dimension,
            complexity: preDeleteAnalysis.complexity
          }
        };
        
      } catch (error) {
        logger.error('検出器削除エラー', { args, error: error.message });
        throw error;
      }
    },
  • The input schema definition for the poker_deleteDetector tool, specifying an object with a required 'name' string property for the detector to delete.
    {
      name: 'poker_deleteDetector',
      description: '検出器を削除します',
      inputSchema: {
        type: 'object',
        properties: {
          name: {
            type: 'string',
            description: '削除する検出器の名前'
          }
        },
        required: ['name'],
        additionalProperties: false
      }
    }
  • MCP server request handler for tool execution (CallToolRequestSchema). Maps tool name 'poker_deleteDetector' to handler 'deleteDetector' by removing 'poker_' prefix and invokes the handler with arguments.
    this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
      const { name, arguments: args } = request.params;
      
      logger.info(`MCP Tool実行: ${name}`, { args });
      
      // ハンドラー名をツール名から生成(プレフィックス除去)
      const handlerName = name.replace('poker_', '');
      
      const handler = this.handlers[handlerName];
      if (!handler) {
        throw new McpError(ErrorCode.MethodNotFound, `Unknown tool: ${name}`);
      }
      
      return await safeExecute(async () => handler(args), { tool: name })();
    });
  • MCP server request handler for listing tools (ListToolsRequestSchema), which returns the allTools array including the poker_deleteDetector schema.
    this.server.setRequestHandler(ListToolsRequestSchema, async () => {
      return { tools: allTools };
    });
  • Low-level helper in DataManager.applyChange for 'deleteDetector' action: locates the detector by name in the YAML data's detector array and removes it.
    case 'deleteDetector':
      if (this.data.detector) {
        const detectorIndex = this.data.detector.findIndex(d => d.name === data.name);
        if (detectorIndex !== -1) {
          this.data.detector.splice(detectorIndex, 1);
        }
      }
      break;

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/Hirao-Y/poker_mcp'

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