Skip to main content
Glama
qpiai

Zoho Projects MCP Server

by qpiai

create_task

Add a new task to a Zoho Projects project by specifying name, description, priority, dates, and assignee to organize project work.

Instructions

Create a new task in a project

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
project_idYesProject ID
nameYesTask name
descriptionNoTask description
priorityNoTask priority
start_dateNoStart date (YYYY-MM-DD)
end_dateNoEnd date (YYYY-MM-DD)
assignee_zpuidNoAssignee user ZPUID

Implementation Reference

  • The handler function that executes the create_task tool. It extracts project_id and task data from params, makes a POST request to the Zoho Projects API to create the task, and returns a formatted MCP response with the created task details.
    private async createTask(params: any) {
      const { project_id, ...taskData } = params;
      const data = await this.makeRequest(
        `/portal/${this.config.portalId}/projects/${project_id}/tasks`,
        "POST",
        taskData
      );
      return {
        content: [
          {
            type: "text",
            text: `Task created successfully:\n${JSON.stringify(data, null, 2)}`,
          },
        ],
      };
    }
  • The input schema definition for the create_task tool, defining parameters like project_id, name, description, priority, dates, and assignee.
    {
      name: "create_task",
      description: "Create a new task in a project",
      inputSchema: {
        type: "object",
        properties: {
          project_id: { type: "string", description: "Project ID" },
          name: { type: "string", description: "Task name" },
          description: { type: "string", description: "Task description" },
          priority: {
            type: "string",
            description: "Task priority",
            enum: ["none", "low", "medium", "high"],
          },
          start_date: {
            type: "string",
            description: "Start date (YYYY-MM-DD)",
          },
          end_date: { type: "string", description: "End date (YYYY-MM-DD)" },
          assignee_zpuid: {
            type: "string",
            description: "Assignee user ZPUID",
          },
        },
        required: ["project_id", "name"],
      },
    },
  • src/index.ts:576-577 (registration)
    The switch case registration that dispatches calls to the createTask handler.
    case "create_task":
      return await this.createTask(params);
  • Duplicate handler function for the create_task tool in the HTTP server version, identical implementation to src/index.ts.
    private async createTask(params: any) {
      const { project_id, ...taskData } = params;
      const data = await this.makeRequest(
        `/portal/${this.config.portalId}/projects/${project_id}/tasks`,
        "POST",
        taskData
      );
      return {
        content: [
          {
            type: "text",
            text: `Task created successfully:\n${JSON.stringify(data, null, 2)}`,
          },
        ],
      };
    }

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/qpiai/zoho-projects-mcp'

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