Ganty MCP
by ganty.app · remote · no sign-in to list tools · v1.0.0 · published by app.ganty
Gantt chart SaaS with server-side critical path and dependency-aware shift-impact tools, plus CRUD.
15 tools: 2 can delete or cancel things, 7 change things and 6 only read.
Scanned Oct 21, 2026
- Deletes or cancels2Claude Code: deny: see these tools
- Can't be undone0Claude Code: ask
- Changes things7Claude Code: ask: see these tools
- Only reads6Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http ganty https://ganty.app/api/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
15 tools
Deletes or cancels 2Claude Code: deny
delete_projectPermanently delete a project.No findings
Why it is in this group
- The name "delete_project" says "delete": a word for removing or ending something.
- The description says "Permanently delete".
Description, as the server wrote it Permanently delete a project. All tasks, milestones, and dependencies inside the project are also removed. This cannot be undone.
delete_taskDelete a task.No findings
Why it is in this group
- The name "delete_task" says "delete": a word for removing or ending something.
Description, as the server wrote it Delete a task. Child tasks and dependencies are removed as well.
Changes things 7Claude Code: ask
add_dependencyAdd a finish-to-start dependency between two tasks in the same project.No findings
Why it is in this group
- The name "add_dependency" says "add": a word for a change.
Description, as the server wrote it Add a finish-to-start dependency between two tasks in the same project.
create_milestoneAdd a milestone (key date) to a project.No findings
Why it is in this group
- The name "create_milestone" says "create": a word for a change.
Description, as the server wrote it Add a milestone (key date) to a project.
create_projectCreate a new project in a workspace.No findings
Why it is in this group
- The name "create_project" says "create": a word for a change.
Description, as the server wrote it Create a new project in a workspace. Returns the created project. Subject to plan-based project count limits.
create_taskCreate a new task in a project.No findings
Why it is in this group
- The name "create_task" says "create": a word for a change.
Description, as the server wrote it Create a new task in a project. Dates must be in YYYY-MM-DD format. End date is exclusive (a 1-day task has end = start + 1 day).
reschedule_and_propagateCompute the downstream impact of shifting a single task.No findings
Why it is in this group
- The name "reschedule_and_propagate" says "reschedule": a word for a change.
Description, as the server wrote it Compute the downstream impact of shifting a single task. Default is dry_run (no DB writes); set mode='commit' to actually persist the changes. Cascades forward only (no pull): successors are pushed only if their predecessor's new end + lag would violate their current start. Tasks with progress=100 are treated as pinned; pass pinned_task_ids for additional pins. When a pin would be violated, the change is recorded in 'conflicts' and not propagated further. In mode='commit', if any conflicts exist nothing is written (all-or-nothing transaction). Same v1 limitations as get_critical_path: FS only, calendar days by default, no holiday table, ignores multi-period segments.
set_task_progressUpdate the progress percentage of a task (0-100).No findings
Why it is in this group
- The name "set_task_progress" says "set": a word for a change.
Description, as the server wrote it Update the progress percentage of a task (0-100). Status is auto-derived: 0=not_started, 1-99=in_progress, 100=done.
update_taskUpdate fields of an existing task.No findings
Why it is in this group
- The name "update_task" says "update": a word for a change.
Description, as the server wrote it Update fields of an existing task. Only provided fields will be modified.
Only reads 6Claude Code: allow
get_critical_pathCalculate the critical path of a project on the Ganty side and return it as data (don't ask the model to reason over raw task lists).No findings
Why it is in this group
- The name "get_critical_path" says "get": a word for reading.
Description, as the server wrote it Calculate the critical path of a project on the Ganty side and return it as data (don't ask the model to reason over raw task lists). Uses forward/backward CPM with progress-aware remaining duration. Returns critical_path tasks in order, per-task earliest/latest start/finish + slack, project_end_date, and total_duration_days. v1 limitations: Finish-to-Start dependencies only (Ganty has no other types), calendar days by default (business_days=true skips Sat/Sun but no holiday table), ignores multi-period segments, no resource calendars. Returns { error: 'cyclic_dependency', cycle } if a cycle is detected.
get_taskGet detailed information about a single task, including assignees and dependencies.No findings
Why it is in this group
- The name "get_task" says "get": a word for reading.
Description, as the server wrote it Get detailed information about a single task, including assignees and dependencies.
list_milestonesList milestones in a project (key dates such as launch or review gates).No findings
Why it is in this group
- The name "list_milestones" says "list": a word for reading.
Description, as the server wrote it List milestones in a project (key dates such as launch or review gates).
list_projectsList all projects in a workspace (excluding archived).No findings
Why it is in this group
- The name "list_projects" says "list": a word for reading.
Description, as the server wrote it List all projects in a workspace (excluding archived).
list_tasksList tasks in a project.No findings
Why it is in this group
- The name "list_tasks" says "list": a word for reading.
Description, as the server wrote it List tasks in a project. Supports optional filtering by name (search), status, and assignee.
list_workspacesGet all workspaces the authenticated user is a member of.No findings
Why it is in this group
- The name "list_workspaces" says "list": a word for reading.
Description, as the server wrote it Get all workspaces the authenticated user is a member of.
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.0.0. Values in angle brackets are yours to fill in.
claude mcp add --transport http ganty https://ganty.app/api/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__ganty__list_workspaces",
"mcp__ganty__list_projects",
"mcp__ganty__list_tasks",
"mcp__ganty__get_task",
"mcp__ganty__list_milestones",
"mcp__ganty__get_critical_path"
],
"ask": [
"mcp__ganty__create_project",
"mcp__ganty__create_milestone",
"mcp__ganty__create_task",
"mcp__ganty__update_task",
"mcp__ganty__set_task_progress",
"mcp__ganty__add_dependency",
"mcp__ganty__reschedule_and_propagate"
],
"deny": [
"mcp__ganty__delete_project",
"mcp__ganty__delete_task"
]
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as ganty. Review it before you use it.