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.2.0.tar.gz (97.3 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.2.0-py3-none-any.whl (148.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: clickup_mcp_server-0.2.0.tar.gz
  • Upload date:
  • Size: 97.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for clickup_mcp_server-0.2.0.tar.gz
Algorithm Hash digest
SHA256 851eb2fa18f33910fe6056ed987437df17a8ed21b3219f507e9793e1c8bf04d5
MD5 2e85c9c1cdda9bbdac6df93a1304e649
BLAKE2b-256 3a951658b85f75463aa420ea7a5bb924b2a1baf8b6daa0ad12e1011377a69d25

See more details on using hashes here.

File details

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

File metadata

  • Download URL: clickup_mcp_server-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 148.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for clickup_mcp_server-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f47297f58dcb9d452e1d87840779987f04215a915a7f84f6c4c204ed321a96f7
MD5 1d44b6aebfc75de3c263c88f80f2ddbd
BLAKE2b-256 3db888ad424c6020d971e8b514ec010bf004b571d8d61f9d6dd71cb3f54a4673

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