Skip to main content
Glama
jacepark12

ticktick-mcp-server

TickTick MCP サーバー

TickTick 用のモデル コンテキスト プロトコル (MCP)サーバー。Claude やその他の MCP クライアントを通じて TickTick タスク管理システムと直接対話できるようになります。

特徴

  • 📋 TickTickのプロジェクトとタスクをすべて表示

  • ✏️ 自然言語で新しいプロジェクトやタスクを作成する

  • 🔄既存のタスクの詳細(タイトル、内容、日付、優先度)を更新する

  • ✅ タスクを完了としてマークする

  • 🗑️ タスクとプロジェクトを削除する

  • 🔄TickTickのオープンAPIとの完全な統合

  • 🔌 Claude や他の MCP クライアントとのシームレスな統合

Related MCP server: Mattermost MCP Server

前提条件

  • Python 3.10以上

  • uv - 高速な Python パッケージインストーラーとリゾルバー

  • APIアクセス可能なTickTickアカウント

  • TickTick API 資格情報 (クライアント ID、クライアント シークレット、アクセス トークン)

インストール

  1. このリポジトリをクローンします:

    git clone https://github.com/jacepark12/ticktick-mcp.git
    cd ticktick-mcp
  2. uv でインストール:

    # Install uv if you don't have it already
    curl -LsSf https://astral.sh/uv/install.sh | sh
    
    # Create a virtual environment
    uv venv
    
    # Activate the virtual environment
    # On macOS/Linux:
    source .venv/bin/activate
    # On Windows:
    .venv\Scripts\activate
    
    # Install the package
    uv pip install -e .
  3. TickTickで認証する:

    # Run the authentication flow
    uv run -m ticktick_mcp.cli auth

    これにより、次のようになります。

    • TickTickクライアントIDとクライアントシークレットを尋ねます

    • TickTickにログインするためのブラウザウィンドウを開きます

    • アクセストークンを.envファイルに自動的に保存します

  4. 設定をテストします:

    uv run test_server.py

    これにより、TickTick の資格情報が正しく機能していることが確認されます。

TickTickによる認証

このサーバーはTickTickの認証にOAuth2を使用します。設定手順は簡単です。

  1. TickTick開発者センターでアプリケーションを登録する

    • リダイレクトURIをhttp://localhost:8000/callbackに設定する

    • クライアントIDとクライアントシークレットをメモしてください

  2. 認証コマンドを実行します。

    uv run -m ticktick_mcp.cli auth
  3. 指示に従ってクライアントIDとクライアントシークレットを入力してください

  4. TickTickアカウントでアプリケーションを承認するためのブラウザウィンドウが開きます

  5. 承認後、アプリケーションにリダイレクトされ、アクセストークンは自動的に.envファイルに保存されます。

サーバーはトークンの更新を自動的に処理するため、アクセスを取り消したり.envファイルを削除したりしない限り、再認証する必要はありません。

Dida365による認証

滴答清单 - Dida365はTickTickの中国版であり、認証プロセスはTickTickと似ています。Dida365の認証を設定するには、以下の手順に従ってください。

  1. Dida365 開発者センターでアプリケーションを登録する

    • リダイレクトURIをhttp://localhost:8000/callbackに設定する

    • クライアントIDとクライアントシークレットをメモしてください

  2. .envファイルに環境変数を追加します。

    TICKTICK_BASE_URL='https://api.dida365.com/open/v1'
    TICKTICK_AUTH_URL='https://dida365.com/oauth/authorize'
    TICKTICK_TOKEN_URL='https://dida365.com/oauth/token'
  3. TickTickと同じ認証手順に従ってください

Claude for Desktop での使用

  1. デスクトップ版Claudeをインストールする

  2. Claude for Desktop 構成ファイルを編集します。

    macOS :

    nano ~/Library/Application\ Support/Claude/claude_desktop_config.json

    ウィンドウズ:

    notepad %APPDATA%\Claude\claude_desktop_config.json
  3. 絶対パスを使用して、TickTick MCP サーバー構成を追加します。

    {
       "mcpServers": {
          "ticktick": {
             "command": "<absolute path to uv>",
             "args": ["run", "--directory", "<absolute path to ticktick-mcp directory>", "-m", "ticktick_mcp.cli", "run"]
          }
       }
    }
  4. デスクトップ版のClaudeを再起動

接続すると、Claude で利用可能な TickTick MCP サーバー ツールが 🔨 (ツール) アイコンで表示されます。

利用可能なMCPツール

道具

説明

パラメータ

get_projects

TickTickプロジェクトをすべて一覧表示する

なし

get_project

特定のプロジェクトの詳細を取得する

project_id

get_project_tasks

プロジェクト内のすべてのタスクを一覧表示する

project_id

get_task

特定のタスクの詳細を取得する

project_idtask_id

create_task

新しいタスクを作成する

titleproject_idcontent (オプション)、 start_date (オプション)、 due_date (オプション)、 priority (オプション)

update_task

既存のタスクを更新する

task_idproject_idtitle (オプション)、 content (オプション)、 start_date (オプション)、 due_date (オプション)、 priority (オプション)

complete_task

タスクを完了としてマークする

project_idtask_id

delete_task

タスクを削除する

project_idtask_id

create_project

新しいプロジェクトを作成する

namecolor (オプション)、 view_mode (オプション)

delete_project

プロジェクトを削除する

project_id

クロードの例題

TickTick MCP サーバーに接続した後、Claude で使用するプロンプトの例を次に示します。

  • 「TickTickプロジェクトをすべて表示」

  • 「私の作業プロジェクトに「MCPサーバーのドキュメントを完成させる」という新しいタスクを高優先度で作成する」

  • 「個人プロジェクト内のすべてのタスクを一覧表示する」

  • 「「食料品を買う」というタスクを完了としてマークする」

  • 「『休暇計画』という新しいプロジェクトを青色で作成します」

  • 「TickTick の次の締め切りはいつですか?」

発達

プロジェクト構造

ticktick-mcp/
├── .env.template          # Template for environment variables
├── README.md              # Project documentation
├── requirements.txt       # Project dependencies
├── setup.py               # Package setup file
├── test_server.py         # Test script for server configuration
└── ticktick_mcp/          # Main package
    ├── __init__.py        # Package initialization
    ├── authenticate.py    # OAuth authentication utility
    ├── cli.py             # Command-line interface
    └── src/               # Source code
        ├── __init__.py    # Module initialization
        ├── auth.py        # OAuth authentication implementation
        ├── server.py      # MCP server implementation
        └── ticktick_client.py  # TickTick API client

認証フロー

このプロジェクトは、TickTick の完全な OAuth 2.0 フローを実装します。

  1. 初期設定: ユーザーはTickTick APIクライアントIDとシークレットを提供します

  2. ブラウザ認証: ユーザーはアクセスを許可するためにTickTickにリダイレクトされます

  3. トークン受信: ローカルサーバーは認可コードを含むOAuthコールバックを受信する

  4. トークン交換: コードはアクセストークンとリフレッシュトークンと交換されます

  5. トークンの保存: トークンはローカルの.envファイルに安全に保存されます。

  6. トークンの更新: アクセストークンの有効期限が切れると、クライアントは自動的に更新します。

これにより、OAuth フローの全体がプログラムで処理され、ユーザー エクスペリエンスが簡素化されます。

貢献

貢献を歓迎します!お気軽にプルリクエストを送信してください。

  1. リポジトリをフォークする

  2. 機能ブランチを作成します( git checkout -b feature/amazing-feature

  3. 変更をコミットします ( git commit -m 'Add some amazing feature' )

  4. ブランチにプッシュする ( git push origin feature/amazing-feature )

  5. プルリクエストを開く

ライセンス

このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細については LICENSE ファイルを参照してください。

F
license - not found
-
quality - not tested
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Issues opened vs closed

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jacepark12/ticktick-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server