# Zoho Projects MCP MCP

> Zoho Projects MCP lets your agent manage projects and tasks across portals using natural language commands. It handles everything from creating new work items to updating statuses and tracking deadlines, letting you monitor large-scale project health without logging into a dashboard.

## Overview
- **Category:** productivity
- **Price:** Free
- **Tags:** task-tracking, milestones, team-collaboration, project-planning, workflow-automation, time-tracking

## Description

This connection gives your agent direct access to all data within Zoho Projects—portals, projects, milestones, and tasks. You can tell it what needs doing; it handles the API calls behind the scenes. Instead of navigating through dashboards, you simply ask for updates on project status or assignments, and the information flows back instantly.

The real power emerges when you combine this with other systems. If your workflow requires checking task progress in Zoho Projects, then sending a summary to Slack, and finally logging that interaction in a CRM, you can chain these MCPs together through Vinkius. This ensures all data passes through the zero-trust proxy, meaning your keys are only used for transit and never sit on disk—a major security win when orchestrating multiple services.

You control the entire project lifecycle from one place: asking to create a new project container, listing all associated tasks, checking who is assigned, or simply monitoring critical milestones. It's pure project visibility without the clicks.

## Tools

### create_project
Makes a brand-new project inside an existing portal.

### create_task
Adds a new task item into an existing project.

### list_milestones
Pulls up all major deadlines and associated target dates for tracking.

### list_portals
Shows every main portal ID you have access to in your account.

### list_project_users
Identifies every user who is currently set as a participant in a specific project.

### list_projects
Retrieves all the projects contained within a single portal.

### list_task_lists
Shows how tasks are organized into groups within a project.

### list_tasks
Lists all work items currently assigned to a specific project.

### update_task
Changes the status or details of a task that already exists.

## Prompt Examples

**Prompt:** 
```
List all portals in my Zoho Projects account.
```

**Response:** 
```
I've retrieved your portals. You have 2 portals: 'Main Business Portal' (ID: 123456) and 'Client Collaborations' (ID: 789012). Which one would you like to access?
```

**Prompt:** 
```
Show me the tasks for project ID '987654' in portal '123456'.
```

**Response:** 
```
I found 10 tasks for project 987654. Notable ones include 'Design Final Approval', 'Frontend Implementation', and 'API Integration'. Would you like more details on any of them?
```

**Prompt:** 
```
Update task ID '101' in project '987654' to 'Completed' status.
```

**Response:** 
```
Successfully updated task 101. Its status has been set to 'Completed' in your Zoho project.
```

## Capabilities

### Locate System Entry Points
Lists every portal ID available in your Zoho account so you know exactly where to start working.

### Build New Work Containers
Creates new projects within a specified portal, establishing the foundational structure for team work.

### Manage Tasks and Assignments
Creates, lists, and updates individual tasks and assigns responsibilities to specific project members.

### Monitor Project Milestones
Retrieves a list of critical deadlines for any given project so you can track if the team is on schedule.

## Use Cases

### Initial Project Setup
A new initiative starts. Instead of manually creating folders and containers, your agent runs `create_project` to establish the container, then immediately uses `list_task_lists` to set up the initial workflow stages.

### Mid-Sprint Status Check
The PM needs a status update. The agent executes `list_tasks` for Project X and reviews all current statuses, cross-referencing that data with `list_milestones` to see if the deadline is at risk.

### Team Roster Management
A project needs a new owner. The agent first runs `list_project_users` to confirm who is already on board, and then uses that list to generate an invitation summary for the team lead.

### Task Handoff Automation
When Task 1 is done, it needs to move to the next phase. The agent runs `update_task` to change the status and then uses `list_tasks` again to confirm the new assignee can pick it up.

## Benefits

- Stop manually finding IDs. Use `list_portals` first to find the correct portal ID, then use `list_projects` to see all available project containers for your team.
- Need an update? Instead of clicking through menus, tell your agent to run `update_task`. You can change status or assign ownership just by asking.
- Keep tabs on deadlines using `list_milestones`. This lets you check critical path items and see exactly when the project is supposed to finish.
- When a new effort starts, simply ask the MCP to run `create_project` and then use `create_task` to get the first item logged. It builds the structure instantly.
- If you need to know who owns what, running `list_project_users` gives instant team visibility for any given project ID.
- Build complex workflows by chaining multiple MCPs together; your agent can check task lists via `list_tasks`, then notify a messaging system about the status change.

## How It Works

The bottom line is that you interact with this complex system using conversation, not API calls.

1. Subscribe to this MCP and input your Zoho Client ID, Secret, and Data Center Domain.
2. Connect your preferred AI client (like Cursor or Claude) to Vinkius. The connection uses the zero-trust proxy for secure credential handling.
3. Ask your agent a natural language question, such as 'List all projects in the Main Business Portal'—the MCP executes the call and returns structured data.

## Frequently Asked Questions

**How do I find all my portals using the Zoho Projects MCP?**
Run `list_portals`. This tool pulls a complete list of every portal ID you have access to, allowing you to select the right scope for subsequent project or task calls.

**Does the create_task tool require me to know the project ID?**
Yes. You must first use `list_projects` to find the correct Project ID within a portal before you can run `create_task`. The tool needs that container context.

**Can I update tasks using the list_tasks tool?**
No, `list_tasks` only reads data. To change a task's status or details, you must use the dedicated `update_task` function.

**What is the difference between list_projects and list_portals?**
Think of portals as the top-level container for your entire company structure. Portals contain multiple projects, which are specific containers for a single initiative.

**When using the `list_portals` tool, how are my Zoho credentials handled by the Vinkius platform?**
Your credentials pass through a zero-trust proxy and aren't stored on disk. Vinkius only uses them in transit when making calls, ensuring your keys never sit anywhere permanently.

**If I want to list project members using `list_project_users`, do I need to first run `list_projects`?**
Yes, you must use `list_projects` first. This confirms the necessary Project ID and Portal ID before the agent can successfully retrieve associated user details.

**When using the `update_task` tool, can I change only the status without specifying all task details?**
Absolutely. The tool supports partial updates, meaning you only need to provide the IDs and the specific fields you want changed. You don't have to send the entire task record.

**Does the `create_project` tool impose any limits on how many projects I can set up at once?**
The platform handles rate limiting automatically, but for large-scale setup, we recommend batching your requests or scheduling them over a short period to maintain reliability.

**How do I find my Portal ID?**
Use the `list_portals` tool to retrieve all portals you have access to along with their unique IDs.

**Which Data Center domains are supported?**
You can use any Zoho Data Center domain such as `zoho.com` (US), `zoho.eu` (Europe), `zoho.in` (India), `zoho.com.au` (Australia), or `zoho.jp` (Japan).

**Can I update a task name without sending all other fields?**
Yes, the `update_task` tool uses the V3 PATCH method, allowing you to perform partial updates by only providing the fields you want to change.