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.0.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.0-py3-none-any.whl (27.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: clickup_mcp_server-0.0.0.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.0.tar.gz
Algorithm Hash digest
SHA256 06d4ca9a24a2a7cde7428d70a25d0030d3f7fa8d6989a711b60d1e39cc8d8881
MD5 ea68d0feec5e814e4aee2ef48da87528
BLAKE2b-256 4920cb20fad46e06c5fc9ed56da5cd13e5944dfa495b8951d4d43d8b053fd975

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for clickup_mcp_server-0.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 adb9b250d98428878363d2de0d9d99c1dfb04061ac7b0e557c44f30bcc6af4be
MD5 f649f40c205525dbfde641a5e79d99bf
BLAKE2b-256 6d85223015635c56c64254d6f9ce285998a34b486f39f1938fddc6ea18b04394

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