Model Context Protocol Free

Let your AI assistant run the plan.

The GanttFather MCP server is an endpoint at mcp.ganttfather.com that lets assistants read, build, visualise and update your Gantt data — tasks, dependencies, members, resources, critical path. Connect once and it reaches every project you own or collaborate on.

ClaudeChatGPTGeminiCursorWindsurfVS CodeGitHub Copilot CLICodexOpenCodeGemini CLIAntigravityClaude Coden8n

Endpoint summary

Server name
ganttfather
URL
https://mcp.ganttfather.com/
Transport
Streamable HTTP
Auth
OAuth connector, or bearer access token — read-only or read & write
Scope
Account-wide — every project you own or collaborate on
Rate limit
60 requests / minute per token
Pricing
Free for any GanttFather user · no per-call fees

Connect in three steps

Two ways in: signing in with OAuth where your assistant supports it, otherwise an access token from Settings.

  1. 1

    See how your assistant signs in

    Most assistants and editors sign in to GanttFather in the browser and need no token. Scripts, and tools that cannot sign in, use an access token: in the GanttFather app open Settings → AI Agents & API and create one, read-only or read & write.

    Open GanttFather settings →
  2. 2

    Add the server

    Paste the server URL where your assistant asks for it, or drop the snippet below into its MCP configuration. Each assistant, editor and tool has its own steps further down.

  3. 3

    Ask for the plan

    Your assistant can now create tasks, set dependencies, reassign work, inspect the critical path, and draw the Gantt chart inline.

Configuration

If your editor supports OAuth-based MCP servers, add this URL as a custom server. You will be prompted to authorize securely — no manual token needed.

mcp.jsonMost editors
{
  "mcpServers": {
    "ganttfather": {
      "url": "https://mcp.ganttfather.com/"
    }
  }
}

Transport note. The server speaks Streamable HTTP. Where a client asks for a type it is usually "type": "http"; avoid the deprecated "type": "sse". Clients name these fields in their own way: see Set up your assistant.

Install in one click

These editors and agents add GanttFather from a link: the button opens the app, which asks you to confirm. Some browsers block links that open an app, so each button also has the same entry to add by hand.

VS Code

Not yet tested by us
Add to VS Code

Then start the server and sign in as the VS Code steps show.

If the button does nothing, add this to .vscode/mcp.json in your workspace:

.vscode/mcp.json
{
  "servers": {
    "ganttfather": {
      "type": "http",
      "url": "https://mcp.ganttfather.com/"
    }
  }
}

VS Code's MCP guide

Cursor

Not yet tested by us
Add to Cursor

Then sign in as the Cursor steps show.

If the button does nothing, add this to ~/.cursor/mcp.json:

mcp.json
{
  "mcpServers": {
    "ganttfather": {
      "url": "https://mcp.ganttfather.com/"
    }
  }
}

Cursor's MCP guide

LM Studio

Not yet tested by us
Add to LM Studio

LM Studio connects to servers on the internet from version 0.3.17. Its guide does not mention signing in: if LM Studio does not ask you to, add "headers": { "Authorization": "Bearer YOUR_AGENT_TOKEN" } next to the URL, with an access token from GanttFather in place of YOUR_AGENT_TOKEN.

If the button does nothing, open the Program tab, choose Install → Edit mcp.json and add the ganttfather entry inside mcpServers; if the file already lists servers, copy only that entry:

mcp.json
{
  "mcpServers": {
    "ganttfather": {
      "url": "https://mcp.ganttfather.com/"
    }
  }
}

LM Studio's MCP guide

Kiro

Not yet tested by us
Add to Kiro

Kiro opens the GanttFather sign-in in the browser when it connects.

If the button does nothing, add this to ~/.kiro/settings/mcp.json, or to .kiro/settings/mcp.json in one project:

mcp.json
{
  "mcpServers": {
    "ganttfather": {
      "url": "https://mcp.ganttfather.com/"
    }
  }
}

Kiro's MCP guide

Goose

Not yet tested by us
Add to Goose

Goose registers itself with GanttFather. Sign in when the browser opens.

Goose keeps its settings in YAML, not JSON. If the button does nothing, run goose configure and choose Add Extension → Remote Extension (Streamable HTTP), or add the ganttfather entry under extensions: in ~/.config/goose/config.yaml; if the file already has extensions:, copy only that entry:

config.yaml
extensions:
  ganttfather:
    name: GanttFather
    type: streamable_http
    uri: https://mcp.ganttfather.com/
    enabled: true
    timeout: 300

Goose's MCP guide

Set up your assistant

Pick the assistant, editor or tool you use. Each one adds the server in its own way; the steps follow its own documentation, linked under each guide in case a menu has moved.

Using more than one? GanttFather keeps one sign-in connection per person, so signing in from a second assistant ends the first one's. Sign in from one, and give each of the others its own access token: tokens you create are not affected. Claude, ChatGPT and the Gemini app can only sign in, so only one of those stays connected at a time.

Claude

Signs in in the browser · no token

For Claude on the web, in the desktop app and on the phone. You add GanttFather once as a connector.

  1. In Claude, open Customize → Connectors and choose Add custom connector.
  2. Name it GanttFather and paste https://mcp.ganttfather.com/ as the server URL. Leave the OAuth client ID and secret empty; if Claude asks how to register, choose Register automatically.
  3. Choose Add, and Connect if Claude does not start the sign-in by itself. Sign in to GanttFather in the browser window that opens, choose read-only or read & write, and authorize.
  4. In a chat, select + in the message box, then Connectors, and turn GanttFather on.

On the Free plan Claude allows one custom connector. On Team and Enterprise an Owner adds it first under Organization settings → Connectors; each member then connects from Customize → Connectors.

Claude's guide to custom connectors

Claude Code

Not yet tested by us Signs in in the browser · or a token
  1. Run this once in a terminal:
    Terminal
    claude mcp add --transport http ganttfather https://mcp.ganttfather.com/
  2. Start Claude Code, run /mcp, select ganttfather and choose Authenticate. Sign in to GanttFather in the browser window that opens, choose read-only or read & write, and authorize.

To use an access token instead of signing in, create one in GanttFather and put it in place of YOUR_AGENT_TOKEN:

Terminal
claude mcp add --transport http ganttfather https://mcp.ganttfather.com/ --header "Authorization: Bearer YOUR_AGENT_TOKEN"

Add --scope user to have the server in every project. In a .mcp.json file, Claude Code needs "type": "http" next to the URL.

Claude Code's MCP guide

Claude Desktop (config file)

Not yet tested by us Signs in in the browser · or a token

The Claude connector also works in the desktop app and is the simpler way. Use the config file only when you want the connection defined on your computer. Claude Desktop starts local commands from that file, so a small bridge, mcp-remote, connects it to the server. It needs Node.js 18 or newer.

  1. In Claude Desktop, open Settings → Developer → Edit Config.
  2. Add the server and save:
    claude_desktop_config.json
    {
      "mcpServers": {
        "ganttfather": {
          "command": "npx",
          "args": [
            "-y",
            "mcp-remote",
            "https://mcp.ganttfather.com/"
          ]
        }
      }
    }
  3. Quit Claude Desktop completely and open it again. Sign in to GanttFather in the browser window that opens, choose read-only or read & write, and authorize.

To use an access token instead of signing in, use this entry with your token in place of YOUR_AGENT_TOKEN. The header is written without a space on purpose: Claude Desktop on Windows breaks an argument that contains one.

claude_desktop_config.json
{
  "mcpServers": {
    "ganttfather": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "https://mcp.ganttfather.com/",
        "--header",
        "Authorization:${AUTH_HEADER}"
      ],
      "env": {
        "AUTH_HEADER": "Bearer YOUR_AGENT_TOKEN"
      }
    }
  }
}

To sign in again from scratch, delete the folder ~/.mcp-auth and restart Claude Desktop.

mcp-remote on GitHub

ChatGPT

Not yet tested by us Signs in in the browser · no token

These are OpenAI's own steps: we have not been able to try them ourselves yet, so write to us if something does not match. According to them, ChatGPT adds the server on the web, as a plugin of your own, and connects by signing in only, so an access token cannot be used. OpenAI decides which plans and workspaces may add one: if you do not see the option, yours does not have it yet.

  1. Open chatgpt.com/plugins, select the plus button and choose Add custom MCP server.
  2. Enter a name and, under Connection, the Server URL https://mcp.ganttfather.com/.
  3. For authentication choose OAuth, accept the notice with I understand and want to continue, and select Create as a plugin.
  4. Install the plugin and sign in to GanttFather when asked. In a chat, type @ and select it.

OpenAI's guide to custom MCP servers

Gemini app

Not yet tested by us Signs in in the browser · no token
  1. In Gemini, open Settings → Connected Apps.
  2. Under Custom apps, choose Add a custom app and paste https://mcp.ganttfather.com/ exactly as written, with the final slash.
  3. Leave Advanced features empty and choose Next.
  4. Sign in to GanttFather in the browser window that opens, choose read-only or read & write, and authorize.

If Gemini asks for an OAuth client ID and secret, open Advanced features and enter the client ID ganttfather. For the secret type any word: GanttFather does not use one, and you still approve the connection when you sign in. It is not your password, and an access token does not go there.

Gemini connects by signing in only, so an access token from Settings cannot be used with it. Google offers custom apps to personal Google accounts in the United States, in English, with Keep Activity turned on; if you do not see Custom apps, your account does not have them yet.

Google's own instructions

Gemini Enterprise

Not yet tested by us Signs in in the browser · no token

For Gemini Enterprise in Google Cloud. An administrator adds GanttFather once as a custom MCP server, and each person then signs in with their own GanttFather account. These are Google's own steps: we have not been able to try them in a Gemini Enterprise project yet, so write to us if something does not match.

  1. In the Google Cloud console, open Gemini Enterprise → Data stores, choose Create data store, pick Custom MCP Server and choose Add MCP server.
  2. Enter https://mcp.ganttfather.com/ as the MCP Server URL and, under Authentication settings, choose OAuth 2.0.
  3. Fill in the OAuth fields: Authorization URL https://mcp.ganttfather.com/authorize, Token URL https://mcp.ganttfather.com/token, Client ID ganttfather, any word as the Client Secret, and Scopes mcp:read mcp:write. Turn on Enable PKCE Support: GanttFather refuses the sign-in without it.
  4. Choose Verify Auth. Sign in to GanttFather in the browser window that opens, choose read-only or read & write, and authorize. Then choose Continue, pick a location, name the connector and choose Create.
  5. When the data store is Active, open it, choose Actions → Reload custom actions, select the GanttFather tools to offer and choose Enable actions.

Gemini Enterprise returns to Google's address https://vertexaisearch.cloud.google.com/oauth-redirect, which GanttFather accepts for the client ID ganttfather; there is nothing to register with us. If your organization limits outbound traffic, allow mcp.ganttfather.com in allowedEgressFqdns.

Setting it up takes the Discovery Engine Editor role, and your organization's policy must allow custom MCP data stores. Each person reaches only the projects they can open in GanttFather.

Google Cloud's guide to custom MCP servers

Gemini CLI

Not yet tested by us Uses an access token
  1. In GanttFather, open Settings → AI Agents & API and create an access token, read-only or read & write.
  2. Run this once, with your token in place of YOUR_AGENT_TOKEN:
    Terminal
    gemini mcp add --transport http --header "Authorization: Bearer YOUR_AGENT_TOKEN" ganttfather https://mcp.ganttfather.com/

Or add it yourself to ~/.gemini/settings.json:

settings.json
{
  "mcpServers": {
    "ganttfather": {
      "httpUrl": "https://mcp.ganttfather.com/",
      "headers": {
        "Authorization": "Bearer YOUR_AGENT_TOKEN"
      }
    }
  }
}

Gemini CLI needs httpUrl. A plain url means a different, older transport there and does not connect.

Gemini CLI's MCP guide

Antigravity

Not yet tested by us Signs in in the browser · or a token
  1. In Antigravity, open MCP Servers → Manage MCP Servers → View raw config.
  2. Add the server and save:
    mcp_config.json
    {
      "mcpServers": {
        "ganttfather": {
          "serverUrl": "https://mcp.ganttfather.com/"
        }
      }
    }
  3. Open Settings → Customizations and choose Authenticate next to ganttfather. The server stays disconnected until you do.
  4. Sign in to GanttFather in the browser, authorize, then paste the code you are shown back into Antigravity.

To use an access token instead of signing in, create one in GanttFather and put it in place of YOUR_AGENT_TOKEN:

mcp_config.json
{
  "mcpServers": {
    "ganttfather": {
      "serverUrl": "https://mcp.ganttfather.com/",
      "headers": {
        "Authorization": "Bearer YOUR_AGENT_TOKEN"
      }
    }
  }
}

Antigravity reads serverUrl, not url.

Antigravity's MCP guide

Cursor

Not yet tested by us Signs in in the browser · or a token
  1. Open or create ~/.cursor/mcp.json to have the server in every project, or .cursor/mcp.json inside one project.
  2. Add the server and save:
    mcp.json
    {
      "mcpServers": {
        "ganttfather": {
          "url": "https://mcp.ganttfather.com/"
        }
      }
    }
  3. Restart Cursor and open Customize → MCPs, where the server now appears. When Cursor asks you to sign in: Sign in to GanttFather in the browser window that opens, choose read-only or read & write, and authorize.

To use an access token instead of signing in, create one in GanttFather and put it in place of YOUR_AGENT_TOKEN:

mcp.json
{
  "mcpServers": {
    "ganttfather": {
      "url": "https://mcp.ganttfather.com/",
      "headers": {
        "Authorization": "Bearer YOUR_AGENT_TOKEN"
      }
    }
  }
}

To keep the token out of the file, Cursor can read it from your environment: write "Bearer ${env:GANTTFATHER_TOKEN}" as the value.

Cursor's MCP guide

VS Code

Not yet tested by us Signs in in the browser · or a token

For GitHub Copilot Chat in VS Code.

  1. Open the Command Palette and run MCP: Add Server. Give it the URL https://mcp.ganttfather.com/ and the name ganttfather. Or write it yourself in .mcp.json at the root of your workspace:
    .mcp.json
    {
      "mcpServers": {
        "ganttfather": {
          "type": "http",
          "url": "https://mcp.ganttfather.com/"
        }
      }
    }
  2. Run MCP: List Servers, start ganttfather and trust it when VS Code asks. Sign in to GanttFather in the browser window that opens, choose read-only or read & write, and authorize.

To use an access token instead of signing in, create one in GanttFather and put it in place of YOUR_AGENT_TOKEN:

.mcp.json
{
  "mcpServers": {
    "ganttfather": {
      "type": "http",
      "url": "https://mcp.ganttfather.com/",
      "headers": {
        "Authorization": "Bearer YOUR_AGENT_TOKEN"
      }
    }
  }
}

VS Code's own file, .vscode/mcp.json, takes the same entry under servers instead of mcpServers. In a Copilot Business or Enterprise organization, an administrator must have allowed MCP servers.

GitHub Copilot's coding agent and Copilot code review do not support remote MCP servers that use OAuth yet, so signing in to GanttFather does not work there (GitHub's page).

VS Code's MCP guide

GitHub Copilot CLI

Not yet tested by us Signs in in the browser · or a token
  1. Run this once in a terminal:
    Terminal
    copilot mcp add --transport http ganttfather https://mcp.ganttfather.com/
  2. Start Copilot CLI and run /mcp auth ganttfather. Sign in to GanttFather in the browser window that opens, choose read-only or read & write, and authorize.

To use an access token instead of signing in, create one in GanttFather and put it in place of YOUR_AGENT_TOKEN:

Terminal
copilot mcp add --transport http --header "Authorization: Bearer YOUR_AGENT_TOKEN" ganttfather https://mcp.ganttfather.com/

The server is saved in ~/.copilot/mcp-config.json. Copilot CLI does not read VS Code's .vscode/mcp.json.

GitHub Copilot's coding agent and Copilot code review do not support remote MCP servers that use OAuth yet, so signing in to GanttFather does not work there (GitHub's page).

GitHub's guide for Copilot CLI

Windsurf

Not yet tested by us Signs in in the browser · or a token

Windsurf is now called Devin Desktop. These steps are for its Cascade agent.

  1. In the Cascade panel, open the … menu at the top right and choose Open MCP config file.
  2. Add the server and save:
    mcp_config.json
    {
      "mcpServers": {
        "ganttfather": {
          "serverUrl": "https://mcp.ganttfather.com/"
        }
      }
    }
  3. Go back to Cascade. When it asks you to sign in: Sign in to GanttFather in the browser window that opens, choose read-only or read & write, and authorize.

To use an access token instead of signing in, create one in GanttFather and put it in place of YOUR_AGENT_TOKEN:

mcp_config.json
{
  "mcpServers": {
    "ganttfather": {
      "serverUrl": "https://mcp.ganttfather.com/",
      "headers": {
        "Authorization": "Bearer YOUR_AGENT_TOKEN"
      }
    }
  }
}

For the newer Devin Local agent, add the server and sign in from a terminal:

Terminal
devin mcp add ganttfather https://mcp.ganttfather.com/
devin mcp login ganttfather

On a team plan, an administrator may have to allow the server first, under the exact name ganttfather.

Devin Desktop's MCP guide

Codex

Not yet tested by us Signs in in the browser · or a token
  1. Run this once in a terminal:
    Terminal
    codex mcp add ganttfather --url https://mcp.ganttfather.com/
  2. Codex opens the browser to sign in. If it does not, run codex mcp login ganttfather. Sign in to GanttFather in the browser window that opens, choose read-only or read & write, and authorize.

To use an access token instead of signing in, create one in GanttFather, put it in an environment variable called GANTTFATHER_TOKEN, and add the server like this:

Terminal
codex mcp add ganttfather --url https://mcp.ganttfather.com/ --bearer-token-env-var GANTTFATHER_TOKEN

The Codex IDE extension and the ChatGPT desktop app share this setup, which is kept in ~/.codex/config.toml.

Codex's MCP guide

OpenCode

Not yet tested by us Signs in in the browser · or a token
  1. Open ~/.config/opencode/opencode.json, or opencode.json in your project, add the server and save:
    opencode.json
    {
      "$schema": "https://opencode.ai/config.json",
      "mcp": {
        "ganttfather": {
          "type": "remote",
          "url": "https://mcp.ganttfather.com/",
          "enabled": true
        }
      }
    }
  2. Run opencode mcp auth ganttfather. Sign in to GanttFather in the browser window that opens, choose read-only or read & write, and authorize.

To use an access token instead of signing in, create one in GanttFather and put it in place of YOUR_AGENT_TOKEN:

opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "ganttfather": {
      "type": "remote",
      "url": "https://mcp.ganttfather.com/",
      "enabled": true,
      "oauth": false,
      "headers": {
        "Authorization": "Bearer YOUR_AGENT_TOKEN"
      }
    }
  }
}

OpenCode 2 groups servers one level deeper, under mcp.servers. An entry written as above keeps working there.

OpenCode's MCP guide

Warp

Not yet tested by us Signs in in the browser · or a token
  1. In Warp, open Warp Drive → Personal → MCP Servers, or Settings → Agents → MCP servers, and choose + Add.
  2. Choose Streamable HTTP or SSE Server (URL), enter the server and save:
    JSON
    {
      "ganttfather": {
        "url": "https://mcp.ganttfather.com/"
      }
    }
  3. Warp opens the browser when the server starts. Sign in to GanttFather in the browser window that opens, choose read-only or read & write, and authorize.

To use an access token instead of signing in, create one in GanttFather and put it in place of YOUR_AGENT_TOKEN:

JSON
{
  "ganttfather": {
    "url": "https://mcp.ganttfather.com/",
    "headers": {
      "Authorization": "Bearer YOUR_AGENT_TOKEN"
    }
  }
}

Warp keeps the sign-in on this computer. On another computer you sign in again.

Warp's MCP guide

Zed

Not yet tested by us Signs in in the browser · or a token
  1. In Zed, open Settings → AI → MCP Servers and choose Add Server → Add Remote Server. Or add it yourself to settings.json:
    settings.json
    {
      "context_servers": {
        "ganttfather": {
          "url": "https://mcp.ganttfather.com/"
        }
      }
    }
  2. When Zed asks you to authenticate: Sign in to GanttFather in the browser window that opens, choose read-only or read & write, and authorize.

To use an access token instead of signing in, create one in GanttFather and put it in place of YOUR_AGENT_TOKEN:

settings.json
{
  "context_servers": {
    "ganttfather": {
      "url": "https://mcp.ganttfather.com/",
      "headers": {
        "Authorization": "Bearer YOUR_AGENT_TOKEN"
      }
    }
  }
}

Zed asks you to sign in only when the entry has no Authorization header.

Zed's MCP guide

JetBrains AI Assistant

Not yet tested by us

For AI Assistant in IntelliJ IDEA, PyCharm and the other JetBrains IDEs.

  1. Open Settings → Tools → AI Assistant → Model Context Protocol (MCP) and choose Add.
  2. In the New MCP Server dialog, choose the connection type for a server reached over HTTP and enter:
    JSON
    {
      "mcpServers": {
        "ganttfather": {
          "url": "https://mcp.ganttfather.com/"
        }
      }
    }
  3. Choose OK, then Apply to connect.

JetBrains' guide does not say how AI Assistant signs in to a server on the internet, so we cannot tell you yet whether it opens the GanttFather sign-in.

JetBrains' MCP guide

Raycast

Not yet tested by us Signs in in the browser · or a token
  1. In Raycast, run the Install MCP Server command.
  2. Enter a name, choose HTTP as Transport, enter https://mcp.ganttfather.com/ as URL and set OAuth Type to Dynamic.
  3. Choose Install MCP Server, then Sign In. Sign in to GanttFather in the browser window that opens, choose read-only or read & write, and authorize.

To use an access token instead of signing in, add it under HTTP Headers: the key Authorization and the value Bearer YOUR_AGENT_TOKEN, with your token in place of YOUR_AGENT_TOKEN.

MCP servers in Raycast need Raycast Pro.

Raycast's MCP guide

Microsoft Copilot Studio

Not yet tested by us

For agents you build in Copilot Studio.

  1. Open your agent's Tools page and choose Add a tool → New tool → Model Context Protocol.
  2. Enter GanttFather as Server name, https://mcp.ganttfather.com/ as Server URL, and a Server description such as “Reads and edits GanttFather projects”. The agent reads the description to decide when to use the server.
  3. For authentication choose OAuth 2.0, then Dynamic discovery. Choose Create, then Next.
  4. In Add tool, choose Create a new connection and sign in to GanttFather when asked. Then choose Add to agent.

Copilot Studio connects over Streamable HTTP, which is what GanttFather uses. If your organization has a data policy for Power Platform connectors, it applies to this server too.

Microsoft's guide for Copilot Studio

Mistral Le Chat

Not yet tested by us
  1. In Le Chat, open Connectors and choose + Add Connector.
  2. Switch to the Custom MCP Connector tab. Enter ganttfather as Connector name and https://mcp.ganttfather.com/ as Server URL, and choose Connect.
  3. Le Chat finds out by itself how GanttFather signs in. Sign in to GanttFather in the browser window that opens, choose read-only or read & write, and authorize.

Only an administrator can add a connector. On the Free, Pro and Student plans, the account owner is the administrator.

Mistral's guide to MCP connectors

Perplexity

Not yet tested by us
  1. In Perplexity, open Plugins in the sidebar and choose Add custom.
  2. Add a remote MCP server with the URL https://mcp.ganttfather.com/, and sign in to GanttFather if Perplexity asks.

Perplexity's page does not list the form's fields, how it signs in, or which plans can add a server, so the second step is the general one.

Perplexity's guide to MCP

Grok

Not yet tested by us
  1. Open grok.com/connectors, choose New Connector, then Custom.
  2. Enter https://mcp.ganttfather.com/ as the MCP server URL, and sign in to GanttFather if Grok asks.

xAI's page does not say how a custom connector signs in, so the second step is the general one. On Grok Business and Enterprise, an administrator sets up connectors before members can use them.

xAI's guide to Grok connectors

n8n

Not yet tested by us Signs in in the browser · or a token
  1. In GanttFather, open Settings → AI Agents & API and create an access token, read-only or read & write.
  2. On an AI Agent node, add a tool and choose MCP Client Tool.
  3. Set Endpoint to https://mcp.ganttfather.com/ and Server Transport to HTTP Streamable.
  4. For Authentication choose Bearer Auth and create a credential with your access token in Bearer Token.

To sign in instead of using a token, choose MCP OAuth2, leave Use Dynamic Client Registration on and enter https://mcp.ganttfather.com/ as Server URL. This needs your n8n to be reached over https, or on localhost.

If the node shows only SSE Endpoint and no transport, it is an old copy: delete it and add MCP Client Tool again from the node list.

n8n's MCP Client Tool page

Your own code

Not yet tested by us Uses an access token

Scripts and agents you write connect with an access token. The official MCP libraries do it in a few lines.

  1. In GanttFather, open Settings → AI Agents & API and create an access token, read-only or read & write.
  2. In Python, install the library with pip install mcp:
    Python
    import asyncio
    
    import httpx2
    
    from mcp import Client
    from mcp.client.streamable_http import streamable_http_client
    
    
    async def main() -> None:
        async with httpx2.AsyncClient(
            headers={"Authorization": "Bearer YOUR_AGENT_TOKEN"},
            timeout=httpx2.Timeout(30.0, read=300.0),
        ) as http_client:
            transport = streamable_http_client("https://mcp.ganttfather.com/", http_client=http_client)
            async with Client(transport) as client:
                result = await client.list_tools()
                print([tool.name for tool in result.tools])
    
    
    asyncio.run(main())
  3. In TypeScript, install it with npm install @modelcontextprotocol/sdk:
    TypeScript
    import { Client } from '@modelcontextprotocol/sdk/client/index.js';
    import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js';
    
    const client = new Client({ name: 'my-ganttfather-script', version: '1.0.0' });
    
    const transport = new StreamableHTTPClientTransport(new URL('https://mcp.ganttfather.com/'), {
      requestInit: { headers: { Authorization: 'Bearer YOUR_AGENT_TOKEN' } },
    });
    
    await client.connect(transport);
    const { tools } = await client.listTools();
    console.log(tools.map((tool) => tool.name));

The Python example is for version 2 of the library. Version 1 uses ClientSession with httpx instead. In TypeScript, the newer @modelcontextprotocol/client package exports both names from its root; the rest is the same.

Any other client works the same way: Streamable HTTP at the URL above, with Authorization: Bearer and your token on every request.

The official MCP libraries

Manus

Not yet tested by us Uses an access token

These are Manus's own steps: we have not been able to try them ourselves yet, so write to us if something does not match.

  1. In GanttFather, open Settings → AI Agents & API and create an access token, read-only or read & write.
  2. In Manus, open Settings → Integrations → Custom MCP Servers and choose Add Server.
  3. Enter a name, the server URL https://mcp.ganttfather.com/ and, under Authentication, your access token.

Manus also offers Connectors → Create → Add MCP by URL, which asks only for a name and the URL.

Manus's guide to custom MCP servers

Connect from Gemini

Gemini comes in three forms, and each connects to GanttFather in its own way.

  • The Gemini app, for a personal Google account: add GanttFather as a custom app under Settings → Connected Apps and sign in. Steps for the Gemini app
  • Gemini Enterprise, in Google Cloud: an administrator adds GanttFather once as a custom MCP server, with OAuth 2.0 and the client ID ganttfather, and each person then signs in. Steps for Gemini Enterprise
  • Gemini CLI, in a terminal: it connects with an access token. Steps for Gemini CLI

The 31 tools

Exactly what the server advertises on the tools/list handshake.

Read & discover

9 tools
list_projects
Every project this connection can act on.
get_project
Full details: members, resources and the project's custom status catalog.
get_project_summary
Task count, completion percentage and overdue count.
get_project_timeline
The whole plan as structured data — hierarchy, dependencies, statuses and critical path.
list_tasks
List tasks in a project. Filter by status, assignee or parent.
get_task
Dates, progress, status, dependencies and assignments for one task.
list_dependencies
A task's predecessors and the tasks waiting on it, with the type and lag of each link.
list_members
All project members, including connected AI agents.
list_resources
Non-human resources — equipment, software, rooms and virtual assets.

Analyze

2 tools
get_critical_path
Identify the critical path through dependencies using CPM.
get_overdue_tasks
Tasks past their end date that aren't finished yet.

Visualize

2 tools
show_gantt_chart
Draw an interactive Gantt in the conversation — bars, hierarchy, dependencies, critical path and today line.
render_gantt_image
Render a static SVG or Markdown mermaid block for clients that can't show the interactive chart.

Create & edit

17 tools
create_task
Create a task with dates, status, priority, parent and assignees. An idempotency key makes retries safe.
duplicate_task
Copy one task directly below itself: name, description, dates, estimation, priority, color and assignees. The copy starts fresh at 0%. Dependencies, attachments and any Azure DevOps link are not copied, and group tasks cannot be duplicated yet.
update_task
Partial update — only the fields you pass change. Status and progress stay in step.
delete_task
Delete a task and all its subtasks, dependencies and assignments.
create_task_series
Create a recurring series: a series row with the repeat rule and one ordinary task per date under it. Repeat every N days, weeks on chosen weekdays, months or years, ending on a date, after a count or when the project ends. Dates on non-working days move to the next working day or are skipped. At most 100 tasks, never under a task linked to Azure DevOps.
update_task_series
Change a whole series. Only tasks not started yet change: done and started tasks and fields changed by hand are kept. A dry run, the default, lists every change and returns a revision. Applying with that revision changes exactly what was previewed.
stop_task_series
Stop a series from repeating. Its tasks stay as ordinary tasks.
reorder_tasks
Batch reorder and re-nest tasks in a single call.
set_task_assignees
Replace the people and resources assigned to a task in one call.
add_dependency
Make one task wait for another — finish-to-start by default, with an optional lag. Safe to repeat.
remove_dependency
Remove one dependency between two tasks.
set_task_dependencies
Replace all of a task's predecessors in one call.
add_task_image
Add an image to a task's description.
add_resource
Add a Human or Virtual resource with an Hour, Use or Flat cost model.
update_resource
Update an existing resource.
delete_resource
Delete a resource and remove it from task assignments.
update_project_context
Keep a short project note that the assistant reads back in later conversations.

Get help

1 tool
draft_support_email
Draft a support email to the GanttFather team with diagnostic details, for you to send. It sends nothing itself.

What people actually ask it

Plan a project from a brief

“Read this PRD and create a GanttFather plan with milestones, dependencies and a 6-week timeline.”

The agent creates tasks with computed dates, sets dependencies, then confirms the schedule with the critical path.

See the plan as a chart

“Show me the GanttFather plan for the launch project.”

The interactive Gantt renders inline. Clients without widget support receive a clean SVG instead.

Daily standup

“What is the status of the project today? Anything overdue?”

The assistant combines the project summary and overdue work into a short natural-language update.

Resource reallocation

“Who has bandwidth this week? Reassign the API integration task to whoever is freest.”

The agent reviews members and assigned tasks, chooses the best available person, and updates the assignment.

Critical-path triage

“Show me everything on the critical path that is also overdue, and propose a reschedule.”

The agent intersects the critical path with overdue tasks and proposes new dates for the affected work.

FAQ

What is the GanttFather MCP server?

A Model Context Protocol endpoint that lets compatible AI assistants read, build, visualize and update your GanttFather project data through standard MCP tools.

Does one connection reach all my projects?

Yes. An account connection follows every project you own or collaborate on, including projects created later. Older project-scoped tokens continue to work.

Does this cost anything?

No. The MCP server is free for every GanttFather user, including the free tier, with no per-call or per-agent fee. The 60 requests-per-minute limit applies per token.

How does authentication work?

Use an OAuth connector when your client supports it, or create a bearer access token in Settings → AI Agents & API. Both can be read-only or read & write. The Gemini app connects by signing in only.

Can the agent show me the Gantt chart?

Yes. It can draw the interactive chart directly in supported conversations, or return a static SVG or mermaid timeline as a fallback.

Which AI clients can connect?

Any client that supports MCP over Streamable HTTP. That includes Claude, ChatGPT, the Gemini app, Cursor, Windsurf, VS Code, GitHub Copilot CLI, Codex, OpenCode, Gemini CLI, Antigravity, Claude Code and n8n, and scripts of your own. Each has its own steps on this page.

Gemini asks me for an OAuth client ID and secret. What do I enter?

First try with Advanced features left empty. If Gemini still asks, enter the client ID ganttfather and any word as the secret. GanttFather does not use a secret: you approve the connection when you sign in. Do not paste an access token there.

Can I connect more than one assistant?

Yes. Sign in from one, and give each of the others its own access token. GanttFather keeps one sign-in connection per person, so signing in from a second assistant ends the first one's. Access tokens you create are not affected. Claude, ChatGPT and the Gemini app can only sign in, so only one of those stays connected at a time.

Can I revoke access?

Yes. Revoke a connection from Settings → AI Agents & API at any time; subsequent calls are rejected immediately.

Does the agent show up to my team?

Yes. Connected agents appear in the member list and carry a distinct presence treatment while they are working.