Skip to main content
Glama
mo666-med

Enhanced Miyabi MCP Server

by mo666-med

miyabi__handle_development_task

Process development tasks by creating issues and executing agents to handle coding projects and technical workflows.

Instructions

開発タスクを処理します(Issue作成→Agent実行)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
promptYes開発タスクの内容
projectPathNoプロジェクトのパス(オプション)

Implementation Reference

  • The core handler implementation for the 'miyabi__handle_development_task' tool. It returns a structured response simulating the processing of a development task, including steps like issue creation, agent execution, and PR creation.
    case "miyabi__handle_development_task": {
      return {
        content: [{
          type: "text",
          text: JSON.stringify({
            status: "success",
            message: "開発タスクを処理しました",
            steps: [
              "1. Issueを自動作成",
              "2. Miyabi Agentを実行",
              "3. PRを作成"
            ],
            prompt: args.prompt,
            projectPath: args.projectPath || "デフォルトプロジェクト"
          }, null, 2)
        }]
      };
    }
  • The input schema definition for the 'miyabi__handle_development_task' tool, specifying the required 'prompt' parameter and optional 'projectPath'.
    {
      name: "miyabi__handle_development_task",
      description: "開発タスクを処理します(Issue作成→Agent実行)",
      inputSchema: {
        type: "object",
        properties: {
          prompt: {
            type: "string",
            description: "開発タスクの内容"
          },
          projectPath: {
            type: "string",
            description: "プロジェクトのパス(オプション)"
          }
        },
        required: ["prompt"]
      }
    },
  • src/server.js:30-33 (registration)
    Registers the MCP listTools request handler, which calls listToolsHandler() that includes the 'miyabi__handle_development_task' tool in its returned list.
    server.setRequestHandler(ListToolsRequestSchema, async () => {
      const tools = listToolsHandler();
      return { tools };
    });
  • src/server.js:36-54 (registration)
    Registers the MCP callTool request handler, which dispatches tool calls (including 'miyabi__handle_development_task') to callToolHandler for execution.
    server.setRequestHandler(CallToolRequestSchema, async (request) => {
      const { name, arguments: args } = request.params;
      
      try {
        const result = callToolHandler(name, args || {});
        return result;
      } catch (error) {
        return {
          content: [{
            type: "text",
            text: JSON.stringify({
              error: error.message,
              toolName: name
            }, null, 2)
          }],
          isError: true
        };
      }
    });
  • The dispatcher function that routes tool calls to their specific handlers, including the case for 'miyabi__handle_development_task'.
    export function callToolHandler(toolName, args) {
      switch (toolName) {
        case "miyabi__analyze_task_intent": {
          const isDev = isDevelopmentTask(args.prompt);
          const isArticle = isArticleWritingTask(args.prompt);
          return {
            content: [{
              type: "text",
              text: JSON.stringify({
                isDevelopmentTask: isDev,
                isArticleWritingTask: isArticle,
                taskType: isArticle ? "article" : (isDev ? "development" : "general"),
                prompt: args.prompt
              }, null, 2)
            }]
          };
        }
    
        case "miyabi__auto_dispatch": {
          const isDev = isDevelopmentTask(args.prompt);
          const isArticle = isArticleWritingTask(args.prompt);
          
          if (isArticle) {
            return {
              content: [{
                type: "text",
                text: JSON.stringify({
                  action: "handle_article",
                  message: "記事執筆タスクとして処理します",
                  nextStep: "miyabi__generate_articleツールを使用してください"
                }, null, 2)
              }]
            };
          } else if (isDev) {
            return {
              content: [{
                type: "text",
                text: JSON.stringify({
                  action: "handle_development",
                  message: "開発タスクとしてMiyabiで処理します",
                  nextStep: "miyabi__handle_development_taskツールを使用してください"
                }, null, 2)
              }]
            };
          } else {
            return {
              content: [{
                type: "text",
                text: JSON.stringify({
                  action: "return_to_manus",
                  message: "一般タスクとしてManusで処理します"
                }, null, 2)
              }]
            };
          }
        }
    
        case "miyabi__handle_development_task": {
          return {
            content: [{
              type: "text",
              text: JSON.stringify({
                status: "success",
                message: "開発タスクを処理しました",
                steps: [
                  "1. Issueを自動作成",
                  "2. Miyabi Agentを実行",
                  "3. PRを作成"
                ],
                prompt: args.prompt,
                projectPath: args.projectPath || "デフォルトプロジェクト"
              }, null, 2)
            }]
          };
        }
    
        case "miyabi__generate_article": {
          return {
            content: [{
              type: "text",
              text: JSON.stringify({
                status: "success",
                message: "記事生成を開始します",
                article: {
                  title: args.articleTitle,
                  author: args.articleAuthor || "不明",
                  source: args.articleSource || "不明",
                  url: args.articleUrl,
                  perspective: args.perspective,
                  angle: args.angle,
                  deepDivePoints: args.deepDivePoints || "指定なし"
                },
                nextSteps: [
                  "1. 参照元の完全読解と分析",
                  "2. 超詳細な論文構成案の策定",
                  "3. 補足情報の調査と引用準備",
                  "4. 品格ある文体での本文執筆(8000字以上)",
                  "5. 引用文献リストの作成(最大10本)",
                  "6. 最終校正と整形",
                  "7. 末尾LLMOまとめ",
                  "8. ハッシュタグ(10個)",
                  "9. サムネイル画像の生成prompt(3点)"
                ]
              }, null, 2)
            }]
          };
        }
    
        default:
          throw new Error(`Unknown tool: ${toolName}`);
      }
    }
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. While it mentions the two-step workflow (Issue creation → Agent execution), it doesn't clarify critical aspects such as permissions required, whether the operation is destructive or read-only, expected response format, error handling, or rate limits. For a tool that creates issues and executes agents, this is a significant gap in transparency.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise and front-loaded, consisting of a single sentence that directly states the purpose and workflow. There's no unnecessary verbiage, and every part of the sentence contributes to understanding the tool's function. However, it could be slightly more structured by separating the workflow steps more clearly.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of a tool that creates issues and executes agents, with no annotations and no output schema, the description is incomplete. It doesn't explain what the tool returns, how errors are handled, or any behavioral nuances. The agent is left with significant gaps in understanding how to use this tool effectively in practice.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, with 'prompt' described as '開発タスクの内容' (content of the development task) and 'projectPath' as 'プロジェクトのパス(オプション)' (project path, optional). The description doesn't add any meaningful semantics beyond what the schema already provides. According to the rules, with high schema coverage (>80%), the baseline is 3 even without extra param info in the description.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: '開発タスクを処理します(Issue作成→Agent実行)' which translates to 'Process development tasks (Issue creation → Agent execution)'. This specifies the verb ('process') and resource ('development tasks'), and outlines the two-step workflow. However, it doesn't explicitly differentiate from sibling tools like 'miyabi__analyze_task_intent' or 'miyabi__auto_dispatch', which may have overlapping functions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites, appropriate contexts, or exclusions. Given sibling tools like 'miyabi__analyze_task_intent' (which might analyze tasks before processing) and 'miyabi__auto_dispatch' (which might handle routing), the lack of differentiation leaves the agent guessing about the optimal use case for this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

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/mo666-med/enhanced-miyabi-mcp'

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