Skip to main content

🦾 A strong MCP server for ClickUp.

Project description

ClickUp MCP Server

PyPI package version GitHub release version CI/CD status Pre-Commit building state Code quality level documentation CI status Software license

clickup-mcp-server logo

clickup-mcp-server is a Python tool to set up MCP server easily and humanly.

Overview

🦾 A strong Model, Capability, Protocol (MCP) server for ClickUp API integration. This server provides a standardized interface for interacting with ClickUp's API through the MCP protocol, making it easier to build AI-enabled applications that leverage ClickUp's project management capabilities.

Features

  • Multiple transport protocols (HTTP streaming and SSE)
  • Environment variable configuration via .env files
  • Consolidated data models for seamless API interaction

Python versions support

Supported Versions

Requires Python 3.13 or higher.

Quick Start

Installation

pip install clickup-mcp-server

Running the server

The simplest way to start the server:

clickup-mcp-server --token YOUR_CLICKUP_API_TOKEN

Using environment files

You can store your API token in a .env file:

# .env file
CLICKUP_API_TOKEN=your_api_token_here

And start the server with:

clickup-mcp-server --env /path/to/.env

Client connection

Connect to the server using any MCP client implementation. Example:

  • Using SSE transport
import asyncio
from mcp import ClientSession
from mcp.client.sse import sse_client

async def get_authorized_teams():
    url = "http://localhost:3005/sse"

    async with sse_client(url) as (read_stream, write_stream):
        async with ClientSession(read_stream, write_stream) as session:
            await session.initialize()

            tools = await session.list_tools()
            print("Available tools:", [tools])

            res = await session.call_tool(
                name="get_authorized_teams",
            )
            print("get_authorized_teams →", res.model_dump())

if __name__ == "__main__":
    asyncio.run(get_authorized_teams())
  • Using streaming HTTP transport
import asyncio
from mcp import ClientSession
from mcp.client.streamable_http import streamablehttp_client

async def get_authorized_teams():
    url = "http://localhost:3005/mcp/mcp"

    async with streamablehttp_client(url) as (
        read_stream,
        write_stream,
        _close_fn,
    ):
        async with ClientSession(read_stream, write_stream) as session:
            await session.initialize()

            tools_resp = await session.list_tools()
            print("Available tools:", [t.name for t in tools_resp.tools])

            res = await session.call_tool(
                name="get_authorized_teams",
            )
            print("get_authorized_teams →", res.model_dump())

if __name__ == "__main__":
    asyncio.run(get_authorized_teams())

API Resources

The server provides access to the following ClickUp resources:

  • Teams
  • Spaces

Configuration Options

The server supports various configuration options:

Option Environment Variable Description
--token CLICKUP_API_TOKEN Your ClickUp API token
--env - Path to .env file containing configuration
--port - Port to run the server on (default: 8000)
--host - Host to bind the server to (default: 127.0.0.1)

Documentation

documentation

The documentation contains more details, demonstrations and anything you need about clickup-mcp-server.

Coding style and following rules

follows coding styles black and PyLint to control code quality.

Code style: black linting: pylint

Downloading state

clickup-mcp-server still a young open source which keeps growing. Here's its download state:

Downloads Downloads

License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

clickup_mcp_server-0.0.2.tar.gz (17.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

clickup_mcp_server-0.0.2-py3-none-any.whl (27.4 kB view details)

Uploaded Python 3

File details

Details for the file clickup_mcp_server-0.0.2.tar.gz.

File metadata

  • Download URL: clickup_mcp_server-0.0.2.tar.gz
  • Upload date:
  • Size: 17.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.8.15

File hashes

Hashes for clickup_mcp_server-0.0.2.tar.gz
Algorithm Hash digest
SHA256 f7f6602d5e9b6f7bbcc57bf9164ba85d8867085651ee2bbde34e1eef599ee8e6
MD5 77f8c5a1728170f58e5b0a07cf4288ed
BLAKE2b-256 4718320017ef0d7b1916153bf3f677a48ed8392e234c4e436f8f7c1442854b84

See more details on using hashes here.

File details

Details for the file clickup_mcp_server-0.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for clickup_mcp_server-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 4958447984178f2e1f5f0d56a85511213ab76f45bbb96ef7fa0ff0b374ee69ed
MD5 034d9bab56771e2f88548301741c6548
BLAKE2b-256 00f717154a253c392e39c91b936cbadfc5663674536499c5d9e65120be2941fa

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page