Huly Mcp について
Huly Mcpは、プロジェクト、課題、ドキュメント、カレンダー、工数管理などのHuly機能をMCPクライアントに公開します。カスタムタスクタイプやプロジェクト別のステータスワークフローに対応し、Processプラグインの読み取りツールも備えています。
主な機能
- 0123カテゴリの管理機能
- 02課題とプロジェクトの操作
- 03カスタムタスクタイプと状態ワークフロー
- 04Processプラグインの読み取りツール
- 05公開するツールカテゴリの選択
活用シーン
- 01MCP経由でHulyのプロジェクトと課題を管理
- 02コメント、ドキュメント、添付ファイルを管理
- 03プロセスと実行記録を確認
- 04カテゴリ単位で利用可能なツールを制限
MCP 対応
MCP サーバーとしてHulyとMCPクライアントを接続し、stdioとStreamable HTTPのトランスポートに対応します。`TOOLSETS`でクライアントに公開するツールカテゴリを選べます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
@dugynoo/huly-mcp
Huly と連携する MCP サーバーです。23 カテゴリーにわたる 209 個のツール(課題、プロジェクト、タスク、コメント、ドキュメント、カード、チャンネル、カレンダー、時間追跡、テスト管理、プロセス、カスタムフィールド、添付ファイル、リードなど)を備えています。プロジェクトごとにスコープを設定したステータスワークフローを持つカスタムタスクタイプと、読み取り専用の Process プラグインツールに対応しています。
インストール
標準設定は、ほとんどの MCP クライアントで動作します。
{
"mcpServers": {
"huly": {
"command": "npx",
"args": ["-y", "@dugynoo/huly-mcp@latest"],
"env": {
"HULY_URL": "https://huly.app",
"HULY_EMAIL": "[email protected]",
"HULY_PASSWORD": "yourpassword",
"HULY_WORKSPACE": "yourworkspace"
}
}
}
}
Claude Code
claude mcp add huly \
-e HULY_URL=https://huly.app \
-e [email protected] \
-e HULY_PASSWORD=yourpassword \
-e HULY_WORKSPACE=yourworkspace \
-- npx -y @dugynoo/huly-mcp@latest
または、上記の標準設定を使用して ~/.claude.json に追加してください。
Claude Desktop
標準設定を claude_desktop_config.json に追加してください。
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
VS Code
ユーザー設定(.vscode/mcp.json)に追加するか、コマンドパレットから「MCP: Add Server」を選択してください。
{
"servers": {
"huly": {
"command": "npx",
"args": ["-y", "@dugynoo/huly-mcp@latest"],
"env": {
"HULY_URL": "https://huly.app",
"HULY_EMAIL": "[email protected]",
"HULY_PASSWORD": "yourpassword",
"HULY_WORKSPACE": "yourworkspace"
}
}
}
}
Cursor
標準設定を ~/.cursor/mcp.json に追加するか、「Settings → Tools & Integrations → New MCP Server」から追加してください。
Windsurf
標準設定を Windsurf の MCP 設定ファイルに追加してください。
OpenCode
グローバル設定ファイル(~/.config/opencode/opencode.json)を開き、この設定を mcp セクションに追加してください。
"huly": {
"type": "local",
"command": ["npx", "-y", "@dugynoo/huly-mcp@latest"],
"environment": {
"HULY_URL": "https://huly.app",
"HULY_EMAIL": "[email protected]",
"HULY_PASSWORD": "yourpassword",
"HULY_WORKSPACE": "yourworkspace"
}
}
更新
インストールコマンドの @latest タグを使用すると、常に最新バージョンが取得されます。ほとんどの MCP クライアントはインストール済みパッケージをキャッシュするため、再取得を強制する必要があります。
| クライアント | 更新方法 |
|---|---|
| Claude Code | claude mcp remove huly を実行してから、上記のインストールコマンドで再追加します |
| Claude Desktop | アプリを再起動します(起動時に npx を実行します) |
| VS Code / Cursor | コマンドパレットから MCP サーバーを再起動するか、ウィンドウを再読み込みします |
| npx (manual) | npx -y @dugynoo/huly-mcp@latest — @latest が新しいバージョンを指す場合、-y フラグによってキャッシュがスキップされます |
HTTP トランスポート
デフォルトでは、サーバーは stdio トランスポートを使用します。HTTP トランスポート(Streamable HTTP)を使用する場合:
HULY_URL=https://huly.app \
[email protected] \
HULY_PASSWORD=yourpassword \
HULY_WORKSPACE=yourworkspace \
MCP_TRANSPORT=http \
npx -y @dugynoo/huly-mcp@latest
デフォルトでは、サーバーは http://127.0.0.1:3000/mcp でリッスンします。
MCP_HTTP_PORT と MCP_HTTP_HOST で設定します。
MCP_TRANSPORT=http MCP_HTTP_PORT=8080 MCP_HTTP_HOST=0.0.0.0 npx -y @dugynoo/huly-mcp@latest
環境変数
| 変数 | 必須 | 説明 |
|---|---|---|
HULY_URL | はい | Huly インスタンスの URL |
HULY_EMAIL | 認証* | アカウントのメールアドレス |
HULY_PASSWORD | 認証* | アカウントのパスワード |
HULY_TOKEN | 認証* | API トークン(メールアドレスとパスワードの代わりに使用) |
HULY_WORKSPACE | はい | ワークスペース識別子 |
HULY_CONNECTION_TIMEOUT | いいえ | 接続タイムアウト(ミリ秒、デフォルト:30000) |
MCP_TRANSPORT | いいえ | トランスポートタイプ:stdio(デフォルト)または http |
MCP_HTTP_PORT | いいえ | HTTP サーバーのポート(デフォルト:3000) |
MCP_HTTP_HOST | いいえ | HTTP サーバーのホスト(デフォルト:127.0.0.1) |
TOOLSETS | いいえ | 公開するツールカテゴリーをカンマ区切りで指定します。未設定の場合、すべてのツールが公開されます。例:issues,projects,search |
*認証:HULY_EMAIL と HULY_PASSWORD、または HULY_TOKEN のいずれかを指定してください。
@firfi/huly-mcp との違い
このパッケージは @firfi/huly-mcp の下流版で、次の2つの機能が追加されています。
create_issueとupdate_issueのtaskTypeパラメーター:カスタムタスクタイプ(例:Ticket、Bug、Feature)やプロジェクト単位のステータスワークフロー(Created、Awaiting approvalなど)を使って課題を作成できます。これがない場合、プロジェクトで独自のタスクタイプを定義していても、MCP 経由で作成した課題にはデフォルトのタスクタイプが適用されます。- 読み取り専用の Process プラグインツール:
list_processes、get_process、list_executions。Process プラグインが有効になっている Huly サーバー(v0.7.382 以降)が必要です。
オリジナルの上流版の著作権表示は LICENSE に引き継がれています。
利用可能なツール
TOOLSETS のカテゴリ: projects、issues、comments、milestones、documents、storage、attachments、contacts、channels、calendar、time tracking、search、activity、notifications、workspace、associations、cards、custom-fields、labels、leads、processes、tag-categories、task-management、test-management、user-statuses
プロジェクト
| ツール | 説明 |
|---|---|
list_projects | Huly のすべてのプロジェクトを一覧表示します。プロジェクト名順に返します。アーカイブ状態でのフィルタリングに対応しています。 |
get_project | ステータスを含む Huly プロジェクトの詳細を取得します。プロジェクト名、説明、アーカイブフラグ、デフォルトステータス、および利用可能なすべてのステータスを返します。 |
list_statuses | Huly プロジェクトのすべての課題ステータスをカテゴリ情報とともに一覧表示します。ステータス名、isDone、isCanceled、isDefault の各フラグを返します。課題の作成または更新前に、有効なステータスを確認するために使用します。 |
create_project | 新しい Huly トラッカープロジェクトを作成します。冪等性があり、同じ識別子を持つプロジェクトがすでに存在する場合は、そのプロジェクトを返します(created=false)。識別子は、英字で始まる1~5文字の大文字英数字である必要があります。 |
update_project | Huly プロジェクトを更新します。指定したフィールドのみが変更されます。説明を消去するには、description に null を設定します。 |
delete_project | Huly プロジェクトを完全に削除します。このプロジェクト内のすべての課題、マイルストーン、コンポーネントは孤立します。この操作は元に戻せません。 |
課題
| ツール | 説明 |
|---|---|
preview_deletion | Huly エンティティを実際に削除する前に、削除の影響をプレビューします。影響を受けるサブエンティティ、関連項目、警告を表示します。課題、プロジェクト、コンポーネント、マイルストーンに対応しています。削除操作を呼び出す前に、連鎖的な影響を把握するために使用してください。 |
list_issues | オプションのフィルターを指定して Huly の課題を検索します。更新日の新しい順に並べた課題を返します。プロジェクト、ステータス、担当者、コンポーネント、parentIssue(特定の課題の子課題を一覧表示する場合)による絞り込みに対応しています。タイトルの部分文字列(titleSearch)や説明の内容(descriptionSearch)による検索にも対応しています。 |
get_issue | Markdown の説明を含む、Huly の課題の詳細を取得します。課題の内容、コメント、完全なメタデータを確認するために使用してください。 |
create_issue | Huly プロジェクトに新しい課題を作成します。parentIssue を指定すると、サブ課題として作成できます。説明には Markdown 形式を使用できます。作成した課題の識別子を返します。 |
update_issue | 既存の Huly の課題のフィールドを更新します。指定したフィールドのみが変更されます。説明の更新では Markdown を使用できます。 |
add_issue_label | Huly の課題にタグ/ラベルを追加します。プロジェクト内に存在しない場合は作成します。 |
remove_issue_label | Huly の課題からタグ/ラベルを削除します。ラベルへの参照を解除しますが、ラベルの定義は削除しません。 |
delete_issue | Huly の課題を完全に削除します。この操作は元に戻せません。 |
move_issue | 課題を新しい親の下(サブ課題にする場合)または最上位(null)に移動します。親子関係とサブ課題の数を更新します。 |
list_components | Huly プロジェクト内のコンポーネントを一覧表示します。コンポーネントは、領域/機能ごとに課題を整理するために使用します。更新日の新しい順に並べたコンポーネントを返します。 |
get_component | Huly コンポーネントの詳細を取得します。コンポーネントの内容とメタデータを確認するために使用してください。 |
create_component | Huly プロジェクトに新しいコンポーネントを作成します。コンポーネントは、領域/機能ごとに課題を整理するのに役立ちます。作成したコンポーネントの ID とラベルを返します。 |
update_component | 既存の Huly コンポーネントのフィールドを更新します。指定したフィールドのみが変更されます。 |
set_issue_component | Huly の課題にコンポーネントを設定、または設定を解除します。設定を解除するには、コンポーネントに null を渡します。 |
delete_component | Huly コンポーネントを完全に削除します。この操作は元に戻せません。 |
list_issue_templates | Huly プロジェクト内の課題テンプレートを一覧表示します。テンプレートでは、再利用可能な課題の設定を定義します。更新日の新しい順に並べたテンプレートを返します。 |
get_issue_template | 子テンプレート(サブタスクテンプレート)を含む、Huly の課題テンプレートの詳細を取得します。テンプレートの内容、デフォルト値、子テンプレートの ID を確認するために使用してください。 |
create_issue_template | Huly プロジェクトに新しい課題テンプレートを作成します。テンプレートでは、新しい課題のデフォルト値を定義します。子テンプレート(サブタスクテンプレート)を含めることもでき、そのテンプレートから課題を作成すると、子テンプレートはサブ課題になります。作成したテンプレートの ID とタイトルを返します。 |
create_issue_from_template | テンプレートから新しい課題を作成します。テンプレートのデフォルト値を適用し、特定のフィールドを上書きできます。テンプレートに子テンプレート(サブタスクテンプレート)がある場合、includeChildren を false に設定しない限り、サブ課題が自動的に作成されます。作成した課題の識別子と作成された子課題の数を返します。 |
update_issue_template | 既存の Huly の課題テンプレートのフィールドを更新します。指定したフィールドのみが変更されます。 |
delete_issue_template | Huly の課題テンプレートを完全に削除します。この操作は元に戻せません。 |
add_template_child | 課題テンプレートに子(サブタスク)テンプレートを追加します。この子テンプレートでは、create_issue_from_template の使用時に作成されるサブ課題のデフォルト値を定義します。子テンプレートの ID を返します。 |
remove_template_child | 子 ID を指定して、課題テンプレートから子(サブタスク)テンプレートを削除します。子 ID は get_issue_template のレスポンスから取得してください。 |
add_issue_relation | 2 つの課題間に関連を追加します。関連タイプ:'blocks'(ソースが対象をブロックし、対象の blockedBy に追加されます)、'is-blocked-by'(ソースが対象によってブロックされ、ソースの blockedBy に追加されます)、'relates-to'(双方向リンク。両側が更新されます)。targetIssue には、'OTHER-42' のようなプロジェクトをまたぐ識別子を指定できます。関連がすでに存在する場合は何も行いません。 |
remove_issue_relation | 2 つの課題間の関連を削除します。add_issue_relation と同様に、'blocks' は対象の blockedBy から削除し、'is-blocked-by' はソースの blockedBy から削除し、'relates-to' は両側から削除します。関連が存在しない場合は何も行いません。 |
list_issue_relations | 課題のすべての関連を一覧表示します。blockedBy(この課題をブロックしている課題)、relations(双方向の課題リンク)、documents(タイトルとチームスペースを含むリンク済みドキュメント)を返します。この課題がブロックしている課題は返しません。それを確認するには、対象の課題に対して list_issue_relations を使用してください。 |
link_document_to_issue | Huly ドキュメントを課題にリンクします。リンクは UI の課題の[関連]パネルに表示されます。冪等性があり、ドキュメントがすでにリンクされている場合は何も行いません。リンク済みドキュメントを確認するには list_issue_relations を使用してください。 |
unlink_document_from_issue | 課題からドキュメントのリンクを削除します。冪等性があり、ドキュメントがリンクされていない場合は何も行いません。 |
コメント
| ツール | 説明 |
|---|---|
list_comments | Huly の課題に付けられたコメントを一覧表示します。作成日時の古い順に並べて返します。スレッド形式の返信があるコメントには、古い順に並んだ返信を replies 配列に含めます。 |
add_comment | Huly の課題にコメントを追加します。コメント本文では Markdown 形式を使用できます。 |
update_comment | Huly の課題に付けられた既存のコメントを更新します。コメント本文では Markdown 形式を使用できます。 |
delete_comment | Huly の課題に付けられたコメントを削除します。この操作は取り消せません。 |
マイルストーン
| ツール | 説明 |
|---|---|
list_milestones | Huly プロジェクトのマイルストーンを一覧表示します。更新日時の新しい順に並べて返します。 |
get_milestone | Huly のマイルストーンの詳細を取得します。マイルストーンの内容やメタデータを確認する際に使用します。 |
create_milestone | Huly プロジェクトに新しいマイルストーンを作成します。作成したマイルストーンの ID とラベルを返します。 |
update_milestone | 既存の Huly マイルストーンのフィールドを更新します。指定したフィールドのみが変更されます。 |
set_issue_milestone | Huly の課題にマイルストーンを設定または解除します。解除するには、マイルストーンに null を渡します。 |
delete_milestone | Huly のマイルストーンを完全に削除します。この操作は取り消せません。 |
ドキュメント
| ツール | 説明 |
|---|---|
list_teamspaces | Huly のドキュメントチームスペースをすべて一覧表示します。名前順に並べて返します。アーカイブ状態による絞り込みに対応しています。 |
get_teamspace | ドキュメント数を含む、Huly のドキュメントチームスペースの詳細を取得します。アーカイブ済みのチームスペースも含め、名前または ID で検索します。 |
create_teamspace | Huly のドキュメントチームスペースを新規作成します。冪等性があり、同じ名前のチームスペースが存在する場合は既存のものを返します。 |
update_teamspace | 既存の Huly ドキュメントチームスペースのフィールドを更新します。指定したフィールドのみが変更されます。説明を消去するには、description に null を設定します。 |
delete_teamspace | Huly のドキュメントチームスペースを完全に削除します。この操作は取り消せません。 |
list_documents | Huly チームスペース内のドキュメントを一覧表示します。更新日時の新しい順に並べて返します。各結果には、Huly ウェブアプリでドキュメントを開くための url フィールドが含まれます。タイトルの部分一致(titleSearch)および内容(contentSearch)による検索に対応しています。 |
get_document | Markdown 形式の内容と、Huly ウェブアプリでドキュメントを開くための url フィールドを含む、Huly ドキュメントの詳細を取得します。ドキュメントの内容やメタデータを確認する際に使用します。 |
create_document | Huly チームスペースに新しいドキュメントを作成します。内容では、ネイティブの Mermaid 図(```mermaid ブロックは Huly UI でインタラクティブに表示されます)を含む、すべての Markdown 形式を使用できます。オプションで親ドキュメントのタイトルまたは ID を渡すと、子ドキュメントをネストして作成できます。親が無効な場合は、トップレベルのドキュメントを暗黙に作成せず、エラーになります。作成したドキュメントの ID と、Huly ウェブアプリでドキュメントを開くための url フィールドを返します。ドキュメントをトラッカーの課題に関連付けるには、link_document_to_issue を使用します。 |
edit_document | 既存の Huly ドキュメントを編集します。内容を編集する方法は、相互に併用できない次の 2 通りです:(1)全体を置き換える場合は 'content'、(2)対象を検索して置き換える場合は 'old_text' + 'new_text'。複数箇所に一致し、replace_all が true でない場合はエラーになります。new_text が空の場合、一致したテキストを削除します。'title' による名前変更にも対応しています。内容では、ネイティブの Mermaid 図を含むすべての Markdown 形式を使用できます。Huly ウェブアプリでドキュメントを開くための url フィールドを返します。 |
list_inline_comments | Huly ドキュメント内のインラインコメントスレッドを一覧表示します。ドキュメントの内容に ProseMirror マークとして埋め込まれたコメントを抽出します。各コメントには、ハイライトされたテキストとスレッド ID が含まれます。includeReplies=true を設定すると、送信者名付きのスレッド返信メッセージも取得します。 |
delete_document | Huly ドキュメントを完全に削除します。この操作は取り消せません。 |
ストレージ
| ツール | 説明 |
|---|---|
upload_file | Huly ストレージにファイルをアップロードします。次のいずれか1つを指定します:filePath(ローカルファイル、推奨)、fileUrl(URLから取得)、またはdata(base64、小さなファイルのみ)。ファイルを参照するためのblob IDとURLを返します。 |
添付ファイル
| ツール | 説明 |
|---|---|
list_attachments | Huly オブジェクト(課題、ドキュメントなど)の添付ファイルを一覧表示します。更新日時の新しい順に並べて返します。 |
get_attachment | ダウンロードURLを含む、Huly 添付ファイルの詳細を取得します。 |
add_attachment | Huly オブジェクトに添付ファイルを追加します。次のいずれか1つを指定します:filePath(ローカルファイル、推奨)、fileUrl(URLから取得)、またはdata(base64)。添付ファイルIDとダウンロードURLを返します。 |
update_attachment | 添付ファイルのメタデータ(説明、ピン留め状態)を更新します。 |
delete_attachment | 添付ファイルを完全に削除します。この操作は取り消せません。 |
pin_attachment | 添付ファイルをピン留め、またはピン留め解除します。 |
download_attachment | 添付ファイルのダウンロードURLと、ファイルのメタデータ(名前、種類、サイズ)を取得します。 |
add_issue_attachment | Huly の課題に添付ファイルを追加します。プロジェクトと識別子から課題を検索する便利なメソッドです。次のいずれか1つを指定します:filePath、fileUrl、またはdata。 |
add_document_attachment | Huly のドキュメントに添付ファイルを追加します。チームスペースとタイトル/IDからドキュメントを検索する便利なメソッドです。次のいずれか1つを指定します:filePath、fileUrl、またはdata。 |
連絡先
| ツール | 説明 |
|---|---|
list_persons | Huly ワークスペース内のすべての人物を一覧表示します。更新日時の新しい順に人物を返します。名前の一部(nameSearch)およびメールアドレスの一部(emailSearch)による検索に対応しています。 |
get_person | 連絡先チャネルを含む、人物の詳細情報を取得します。personId またはメールアドレスで人物を特定します。 |
create_person | Huly に新しい人物を作成します。作成した人物の ID を返します。 |
update_person | 既存の人物のフィールドを更新します。指定したフィールドのみが変更されます。 |
delete_person | Huly から人物を完全に削除します。この操作は取り消せません。 |
list_employees | 従業員(チームメンバーである人物)を一覧表示します。更新日時の新しい順に従業員を返します。 |
list_organizations | Huly ワークスペース内のすべての組織を一覧表示します。更新日時の新しい順に組織を返します。 |
create_organization | Huly に新しい組織を作成します。任意で人物 ID またはメールアドレスを指定してメンバーを追加できます。指定したメンバーを解決できない場合は失敗します。作成した組織の ID を返します。 |
get_organization | ID、または一意の場合は完全一致する名前で組織の詳細情報を取得します。市区町村、説明、メンバー数、更新日時を含みます。同じ名前の組織が複数ある場合は、組織 ID を使用してください。 |
update_organization | ID、または一意の場合は完全一致する名前で特定した既存の組織のフィールドを更新します。指定したフィールドのみが変更されます。説明には複数行のプレーンテキストを入力でき、CRM のメモ/収益の概要/コンテキストを保存するのに適しています。市区町村または説明を消去するには null を渡してください。同じ名前の組織が複数ある場合は、組織 ID を使用してください。 |
delete_organization | ID、または一意の場合は完全一致する名前で特定した組織を完全に削除します。十分注意して使用してください。この操作は取り消せません。データを別の場所に統合した後、重複する組織を整理するのに便利です。同じ名前の組織が複数ある場合は、組織 ID を使用してください。 |
make_organization_customer | 組織に Customer ミックスインを適用し、Huly の Leads > Customers ビューに表示されるようにします。冪等性があり、すでに顧客である組織に対して安全に呼び出せます。組織 ID、または一意の場合は完全一致する名前を指定します。 |
add_organization_channel | ID、または一意の場合は完全一致する名前で特定した組織に、連絡先チャネル(電話、メール、ウェブサイト/ホームページ、LinkedIn、Twitter、GitHub、Facebook、Telegram)を追加します。プロバイダー名:email、phone、linkedin、twitter、github、facebook、telegram、homepage。 |
add_organization_member | 人物を組織のメンバーとして紐付けます。人物は Huly の組織の Members タブに表示されます。人物 ID またはメールアドレスで人物を特定します。冪等性があり、その人物がすでにメンバーの場合は added=false を返します。 |
list_organization_members | 組織のメンバーであるすべての人物を一覧表示します。各メンバーの人物 ID、名前、主メールアドレス(存在する場合)を返します。ID の代わりに名前を指定する場合、その名前は組織を一意に特定する必要があります。 |
list_person_organizations | 人物がメンバーとなっているすべての組織を一覧表示します。personId またはメールアドレスを指定します。各組織の ID と名前を返します。 |
remove_organization_member | 人物を組織のメンバーから紐付け解除します。add_organization_member の取り消しに相当します。その人物がメンバーでなかった場合は removed: false を返します。ID の代わりに組織名を指定する場合、その名前は組織を一意に特定する必要があります。 |
チャンネル
| ツール | 説明 |
|---|---|
list_channels | Huly のすべてのチャンネルを一覧表示します。チャンネル名の昇順で返します。アーカイブ済みかどうかで絞り込めます。名前の部分一致(nameSearch)やトピックの部分一致(topicSearch)で検索できます。 |
get_channel | トピックやメンバー一覧など、Huly のチャンネルの詳細をすべて取得します。 |
create_channel | Huly に新しいチャンネルを作成します。作成されたチャンネルの ID と名前を返します。 |
update_channel | 既存の Huly チャンネルのフィールドを更新します。指定したフィールドのみ変更されます。 |
delete_channel | Huly のチャンネルを完全に削除します。この操作は取り消せません。 |
list_channel_messages | Huly のチャンネル内のメッセージを一覧表示します。日付の降順(新しい順)で返します。 |
send_channel_message | Huly のチャンネルにメッセージを送信します。メッセージ本文では Markdown 形式を使用できます。 |
update_channel_message | チャンネルのメッセージを更新します。本文のみ変更できます。 |
delete_channel_message | チャンネルのメッセージを完全に削除します。この操作は取り消せません。 |
list_direct_messages | Huly のダイレクトメッセージの会話を一覧表示します。日付の降順(新しい順)で返します。 |
create_direct_message | ワークスペースのメンバーとの 1 対 1 のダイレクトメッセージの会話を開始します。person 引数には、メールアドレスまたは正確な表示名(例:Smith,Bill)を指定します。冪等性があります。同じ参加者との DM がすでに存在する場合はそれを返し(created: false)、存在しない場合は新しい DM を作成します(created: true)。返された id は、send_dm_message、list_dm_messages などで dm として渡せます。 |
list_dm_messages | ダイレクトメッセージの会話内のメッセージを新しい順に一覧表示します。dm 引数には DM の _id または参加者の表示名(例:Kerr,Shannon)を指定できます。名前で解決されるのは、認証済みアカウントとの 1 対 1 の DM のみです。 |
send_dm_message | ダイレクトメッセージの会話にメッセージを送信します。dm 引数には DM の _id または参加者の表示名を指定できます。名前で解決されるのは、認証済みアカウントとの 1 対 1 の DM のみです。メッセージ本文では Markdown 形式を使用できます。 |
update_dm_message | ダイレクトメッセージを更新します。dm 引数には DM の _id または参加者の表示名を指定できます。名前で解決されるのは、認証済みアカウントとの 1 対 1 の DM のみです。本文のみ変更できます。 |
delete_dm_message | ダイレクトメッセージを完全に削除します。dm 引数には DM の _id または参加者の表示名を指定できます。名前で解決されるのは、認証済みアカウントとの 1 対 1 の DM のみです。この操作は取り消せません。 |
list_thread_replies | メッセージスレッド内の返信を一覧表示します。日付の昇順(古い順)で返します。 |
add_thread_reply | メッセージスレッドに返信を追加します。返信本文では Markdown 形式を使用できます。 |
update_thread_reply | スレッドの返信を更新します。本文のみ変更できます。 |
delete_thread_reply | スレッドの返信を完全に削除します。この操作は取り消せません。 |
カレンダー
| ツール | 説明 |
|---|---|
list_events | カレンダーの予定を一覧表示します。日付順に予定を返します。日付範囲で絞り込めます。 |
list_calendars | 書き込み可能で非表示ではないカレンダーを一覧表示します。これらのカレンダーは、create_event または create_recurring_event の対象として使用できます。対象の calendarId を明示的に選択する必要がある場合は、予定を作成する前に使用してください。 |
get_event | 説明を含む、カレンダーの予定の詳細を取得します。予定の内容とメタデータを確認するために使用してください。 |
create_event | 新しいカレンダーの予定を作成します。説明では Markdown 形式を使用できます。省略可能な calendarId を指定すると特定のカレンダーが対象になります。省略した場合、認証済みユーザーのメインの個人用カレンダーが使用されます。作成した予定の ID を返します。 |
update_event | 既存のカレンダーの予定のフィールドを更新します。指定したフィールドのみが変更されます。説明の更新では Markdown を使用できます。 |
delete_event | カレンダーの予定を完全に削除します。この操作は取り消せません。 |
list_recurring_events | 繰り返し予定の定義を一覧表示します。更新日時の新しい順に返します。 |
create_recurring_event | RFC5545 RRULE ルールを使用して、新しい繰り返しカレンダー予定を作成します。説明では Markdown 形式を使用できます。省略可能な calendarId を指定すると特定のカレンダーが対象になります。省略した場合、認証済みユーザーのメインの個人用カレンダーが使用されます。作成した予定の ID を返します。 |
list_event_instances | 繰り返し予定の各回を一覧表示します。日付順に返します。日付範囲で絞り込めます。includeParticipants=true を使用すると、参加者の全情報を取得できます(追加の検索が必要です)。 |
時間の記録
| ツール | 説明 |
|---|---|
log_time | Huly の課題に費やした時間を記録します。説明を任意で追加して、時間エントリを記録します。時間の値は分単位です。 |
get_time_report | 特定の Huly の課題の時間記録レポートを取得します。合計時間、見積もり、残り時間、すべての時間エントリを表示します。 |
list_time_spend_reports | すべての課題の時間エントリを一覧表示します。プロジェクトと日付範囲で絞り込めます。日付の新しい順にエントリを返します。 |
get_detailed_time_report | プロジェクトの詳細な時間内訳を取得します。課題別および従業員別にグループ化した合計時間を表示します。日付範囲で絞り込めます。 |
list_work_slots | スケジュール済みの作業枠を一覧表示します。ToDo に関連付けられた予定時間枠を表示します。従業員と日付範囲で絞り込めます。 |
create_work_slot | スケジュール済みの作業枠を作成します。計画用に ToDo に時間枠を関連付けます。 |
start_timer | Huly の課題のクライアント側タイマーを開始します。課題の存在を確認し、開始タイムスタンプを返します。完了したら log_time を使用して経過時間を記録してください。 |
stop_timer | Huly の課題のクライアント側タイマーを停止します。停止タイムスタンプを返します。開始・停止タイムスタンプから経過時間を計算し、log_time を使用して記録してください。 |
dedup_planner_todos | Huly サーバーが同じ課題に対して複数回作成することがある、重複した Planner ToDo 項目を削除します。 |
検索
| ツール | 説明 |
|---|---|
fulltext_search | すべての Huly コンテンツを対象に、グローバルな全文検索を実行します。課題、ドキュメント、メッセージ、その他のインデックス済みコンテンツを検索します。一致した項目を関連度順(新しい順)に返します。 |
アクティビティ
| ツール | 説明 |
|---|---|
list_activity | Huly オブジェクトのアクティビティメッセージを一覧表示します。日付の新しい順に返します。 |
add_reaction | アクティビティメッセージに絵文字リアクションを追加します。 |
remove_reaction | アクティビティメッセージから絵文字リアクションを削除します。 |
list_reactions | アクティビティメッセージのリアクションを一覧表示します。 |
save_message | 後で参照できるよう、アクティビティメッセージを保存/ブックマークします。 |
unsave_message | 保存済み/ブックマーク済みのアクティビティメッセージを解除します。 |
list_saved_messages | 保存済み/ブックマーク済みのアクティビティメッセージを一覧表示します。 |
list_mentions | アクティビティメッセージ内で現在のユーザーが @メンションされている箇所を一覧表示します。 |
通知
| ツール | 説明 |
|---|---|
list_notifications | 受信トレイの通知を一覧表示します。更新日順(新しい順)に通知を返します。既読/アーカイブ済みの状態で絞り込めます。 |
get_notification | 通知の詳細を取得します。通知の内容とメタデータを確認するために使用します。 |
mark_notification_read | 通知を既読にします。 |
mark_all_notifications_read | 未読の通知をすべて既読にします。既読にした通知の件数を返します。 |
archive_notification | 通知をアーカイブします。アーカイブした通知は、受信トレイのメインビューに表示されなくなります。 |
archive_all_notifications | すべての通知をアーカイブします。アーカイブした通知の件数を返します。 |
delete_notification | 通知を完全に削除します。この操作は取り消せません。 |
get_notification_context | エンティティの通知コンテキストを取得します。特定のオブジェクトの追跡情報を返します。 |
list_notification_contexts | 通知コンテキストを一覧表示します。最終更新日時順(新しい順)にコンテキストを返します。ピン留めの状態で絞り込めます。 |
pin_notification_context | 通知コンテキストをピン留め、またはピン留め解除します。ピン留めしたコンテキストは受信トレイで強調表示されます。 |
list_notification_settings | 通知プロバイダーの設定を一覧表示します。現在の通知設定を返します。 |
update_notification_provider_setting | 通知プロバイダーの設定を更新します。特定のプロバイダーの通知を有効または無効にします。 |
get_unread_notification_count | 未読通知の件数を取得します。 |
ワークスペース
| ツール | 説明 |
|---|---|
list_workspace_members | 現在のHulyワークスペースのメンバーとロールを一覧表示します。アカウントIDとロールを含むメンバー情報を返します。 |
update_member_role | ワークスペースメンバーのロールを更新します。適切な権限が必要です。有効なロール:READONLYGUEST、DocGuest、GUEST、USER、MAINTAINER、OWNER、ADMIN。 |
get_workspace_info | 名前、URL、リージョン、設定など、現在のワークスペースに関する情報を取得します。 |
list_workspaces | 現在のユーザーがアクセスできるすべてのワークスペースを一覧表示します。最終訪問日時順にワークスペースの概要を返します。 |
create_workspace | 新しいHulyワークスペースを作成します。ワークスペースのUUIDとURLを返します。リージョンを任意で指定できます。 |
delete_workspace | 現在のワークスペースを完全に削除します。この操作は取り消せません。細心の注意を払って使用してください。 |
get_user_profile | 自己紹介、所在地、ソーシャルリンクなど、現在のユーザーのプロフィール情報を取得します。 |
update_user_profile | 現在のユーザーのプロフィールを更新します。自己紹介、都市、国、ウェブサイト、ソーシャルリンク、公開設定に対応しています。 |
update_guest_settings | ワークスペースのゲスト設定を更新します。読み取り専用ゲストのアクセスとゲスト登録の権限を制御します。 |
create_access_link | Hulyワークスペースのアクセスリンクを作成します。デフォルトのロールはGUESTです。personalized=falseとnotBeforeおよびexpirationを設定すると、匿名で再利用可能なゲストリンクを作成できます。また、spacesを使って特定のHulyスペースIDにアクセスを制限できます。 |
get_regions | ワークスペースの作成に利用できるリージョンを取得します。リージョンコードと表示名を返します。 |
関連付け
| ツール | 説明 |
|---|---|
list_associations | ワークスペース内の Huly Association 定義を一覧表示します。各 Association は、2 つのドキュメントクラス間の型付きリンクです(例:Person ↔ Organization、カーディナリティは 1:1 / 1:N / N:N)。classA または classB で絞り込めます。 |
create_association | 2 つのドキュメントクラス間に新しい Huly Association を作成します。同じ(classA, classB, nameA, nameB)タプルを持つ Association がすでに存在する場合は、それを返します。 |
list_relations | Huly Relation(ドキュメント間の具体的なリンク)を一覧表示します。association(ID)、docA(ソースドキュメント ID)、または docB(ターゲットドキュメント ID)で絞り込めます。 |
create_relation | 既存の Association を介して 2 つのドキュメントをリンクします。同じ Association を介して(docA, docB)をすでに結ぶ Relation が存在する場合は、それを返します。 |
delete_relation | 2 つのドキュメント間の Relation を削除します。Relation がすでに存在しない場合は、deleted=false を返します。 |
カード
| ツール | 説明 |
|---|---|
list_card_spaces | すべての Huly カードスペースを一覧表示します。カードスペースは名前順に返されます。カードスペースはカードを格納するコンテナーです。 |
list_master_tags | Huly カードスペースで利用可能なマスタータグ(カードタイプ)を一覧表示します。マスタータグは、そのスペースで作成できるカードのタイプ/スキーマを定義します。 |
list_cards | Huly カードスペース内のカードを一覧表示します。カードは更新日時の新しい順に返されます。タイプ(マスタータグ)、タイトルの部分一致、コンテンツ検索による絞り込みに対応しています。 |
get_card | Markdown コンテンツを含む Huly カードの詳細を取得します。カードの内容とメタデータを確認する際に使用します。 |
create_card | Huly カードスペースに新しいカードを作成します。マスタータグ(カードタイプ)が必要です。コンテンツは Markdown 形式に対応しています。作成されたカードの ID を返します。 |
update_card | 既存の Huly カードのフィールドを更新します。指定したフィールドのみが変更されます。コンテンツの更新は Markdown に対応しています。 |
delete_card | Huly カードを完全に削除します。この操作は取り消せません。 |
カスタムフィールド
| ツール | 説明 |
|---|---|
list_custom_fields | ワークスペース内のカスタムフィールド定義を一覧表示します。フィールドのラベル、タイプ、所有者クラス情報が返されます。カスタムフィールドは、カードタイプ、課題タイプ、その他のクラスに対して Huly UI で作成します。targetClass を使用すると、特定のクラスのフィールドに絞り込めます。 |
get_custom_field_values | ドキュメントからカスタムフィールドの値を読み取ります。ドキュメントの ID とクラス(list_cards、list_issues などから取得)を渡します。ドキュメントで見つかったすべてのカスタムフィールドの値と、そのラベルおよびタイプを返します。 |
set_custom_field | ドキュメントのカスタムフィールド値を設定します。ドキュメント ID、クラス、フィールド ID(list_custom_fields から取得)、値が必要です。値は自動的に解析されます。数値文字列は数値に、'true'/'false' はブール値に変換され、文字列はそのまま扱われます。 |
ラベル
| ツール | 説明 |
|---|---|
list_labels | ワークスペース内のラベル/タグ定義を一覧表示します。ラベルはグローバル(プロジェクト単位ではありません)です。トラッカーの課題に付けられたラベルを更新日時の新しい順に返します。 |
create_label | ワークスペースに新しいラベル/タグ定義を作成します。ラベルはグローバルで、任意の課題に付けられます。同じタイトルのラベルがすでに存在する場合は既存のラベルを返します(created=false)。特定の課題にラベルを付けるには add_issue_label を使用します。 |
update_label | ラベル/タグ定義を更新します。ラベル ID またはタイトルを指定できます。指定したフィールドのみが変更されます。 |
delete_label | ラベル/タグ定義を完全に削除します。ラベル ID またはタイトルを指定できます。この操作は取り消せません。 |
リード
| ツール | 説明 |
|---|---|
list_funnels | Huly のすべての営業ファネル(リードパイプライン)を一覧表示します。各ファネルの不変の ID と表示名を、名前順で返します。アーカイブ済みかどうかで絞り込めます。 |
list_leads | Huly のファネル内のリードを、任意のフィルターを指定して検索します。list_funnels で返されるファネル ID、または検索用のファネル名を渡します。リードを更新日時の降順(新しい順)で返します。ステータス、担当者、タイトル検索で絞り込めます。 |
get_lead | Huly のリードの詳細情報を取得します。Markdown の説明、顧客名、ファネル ID とファネル名、ステータスが含まれます。リード識別子は 'LEAD-1' のような上流の Huly 形式です。 |
create_lead | Huly のファネルにリードを作成します。'customer' は組織名です。同じ名前の既存の組織があれば再利用し、なければ Customer ミックスインを使って新規作成します。Markdown の説明、初期ステータス名、担当者は任意で指定できます。LEAD-N 形式の識別子、リード ID、ファネル ID を返します。ファイルを添付するには、objectClass に 'lead:class:Lead'、objectId に返された ID、space に返された funnelId を指定して add_attachment を使用します。 |
update_lead | LEAD-N で識別される Huly のリードを更新します。指定されたフィールドのみ更新します。ステータス(名前で指定)、タイトル、Markdown の説明、担当者(メールアドレスまたは名前。割り当て解除する場合は null)を指定できます。 |
プロセス
| ツール | 説明 |
|---|---|
list_processes | ワークスペース内の Huly プロセス定義を一覧表示します。各プロセスは、カードクラス(マスタータグ)に関連付けられたワークフローです。特定のカードタイプのプロセスを探すには、任意で masterTag による絞り込みができます。読み取り専用です。 |
get_process | ID または表示名を指定して、単一の Huly プロセス定義を取得します。名前、説明、マスタータグ、開始フラグ、自動化フラグを返します。読み取り専用です。 |
list_executions | プロセス実行(特定のカードに対して進行中または完了済みのワークフロー実行)を一覧表示します。process(ID または名前)、card(カード ID)、status(active/done/cancelled)で絞り込めます。各実行行には現在のワークフロー状態とエラーフラグが含まれます。読み取り専用です。 |
start_process | カードに対する新しいプロセス実行を開始します。ID または表示名でプロセスを特定し、最初のワークフロー状態(最小ランク)でアクティブな実行を作成します。その後、Huly サーバーのプロセスエンジンが OnExecutionStart トリガーを自動的に発火させ、実行を進めます。 |
cancel_execution | 実行中のプロセス実行のステータスを 'cancelled' に設定してキャンセルします。冪等です。すでにキャンセル済みの実行では cancelled=false が返されます。 |
タグカテゴリ
| ツール | 説明 |
|---|---|
list_tag_categories | ワークスペース内のタグ/ラベルカテゴリを一覧表示します。カテゴリはラベルをグループ化します(例:'Priority Labels'、'Type Labels')。targetClass で任意に絞り込めます(デフォルトではすべてが対象です)。 |
create_tag_category | 新しいタグ/ラベルカテゴリを作成します。冪等です。同じラベルと targetClass を持つカテゴリがすでに存在する場合は、そのカテゴリを返します(created=false)。targetClass のデフォルトはトラッカーの課題です。 |
update_tag_category | タグ/ラベルカテゴリを更新します。カテゴリ ID またはラベル名を指定できます。指定されたフィールドのみ変更されます。 |
delete_tag_category | タグ/ラベルカテゴリを完全に削除します。カテゴリ ID またはラベル名を指定できます。このカテゴリ内のラベルは孤立します(削除されません)。この操作は元に戻せません。 |
タスク管理
| ツール | 説明 |
|---|---|
list_project_types | Huly トラッカーのプロジェクトタイプ/ワークフローテンプレートを一覧表示します。ID、表示名、説明、タスクタイプ数、ステータス数、およびデフォルトの Classic トラッカータイプと思われるかどうかを返します。 |
get_project_type | Huly トラッカーのプロジェクトタイプを 1 回の呼び出しで調査します。projectType は ID または表示名で指定できます。省略した場合は、一意に特定できる Classic トラッカータイプを使用します。タスクタイプ、ステータス、カテゴリ、およびタスクタイプとステータスの対応関係を返します。 |
list_task_types | Huly の課題/タスクタイプを一覧表示します。任意でプロジェクトタイプの ID または表示名を指定して絞り込めます。タスクタイプの識別情報、親プロジェクトタイプ、種類、課題クラス、および利用可能なステータス数を返します。 |
create_task_type | 正規化された名前に基づいて、Huly の課題/タスクタイプをプロジェクトタイプに冪等に追加します。templateTaskType が指定されていない場合は、既存のテンプレートタスクタイプから必要なワークフロー設定をコピーします。作成されたかどうか、ID、影響を受けたタスクタイプの ID、およびワークスペースレベルのワークフローに関する警告を返します。 |
create_issue_status | プロジェクトタイプとタスクタイプの範囲内で、正規化された名前に基づいて Huly の課題ワークフローのステータスを冪等に追加します。カテゴリには backlog、todo、active、done、canceled を指定できます。taskType は ID または表示名で指定できます。省略すると、そのプロジェクトタイプのすべてのタスクタイプにステータスを適用します。 |
テスト管理
| ツール | 説明 |
|---|---|
list_test_projects | テスト管理プロジェクトを一覧表示します。名前順に並べたテストプロジェクトを返します。トラッカープロジェクトとは別です。 |
list_test_suites | テストプロジェクト内のテストスイートを一覧表示します。プロジェクト ID または名前を指定できます。ネストされたスイート用の任意の親フィルターを指定できます。 |
get_test_suite | テストプロジェクト内の ID または名前で、単一のテストスイートを取得します。スイートの詳細とテストケース数を返します。 |
create_test_suite | テストプロジェクトにテストスイートを作成します。同じ名前のスイートが存在する場合は既存のスイートを返す冪等操作です(created=false)。ネスト用の親を任意で指定できます。 |
update_test_suite | テストスイートを更新します。スイート ID または名前を指定できます。指定したフィールドのみが変更されます。 |
delete_test_suite | テストスイートを完全に削除します。スイート ID または名前を指定できます。この操作は取り消せません。 |
list_test_cases | テストプロジェクト内のテストケースを一覧表示します。スイート(ID または名前)、担当者(名前またはメールアドレス)で任意に絞り込めます。 |
get_test_case | テストプロジェクト内の ID または名前で、単一のテストケースを取得します。 |
create_test_case | スイートに紐付けてテストケースを作成します。プロジェクトとスイートが必要です。デフォルト値:type=functional、priority=medium、status=draft。 |
update_test_case | テストケースを更新します。テストケース ID または名前を指定できます。指定したフィールドのみが変更されます。担当者を解除するには、assignee に null を設定します。 |
delete_test_case | テストケースを完全に削除します。テストケース ID または名前を指定できます。この操作は取り消せません。 |
list_test_plans | テスト管理プロジェクト内のテスト計画を一覧表示します。計画名と ID を返します。プロジェクト ID または名前が必要です。 |
get_test_plan | テストケースを含むテスト計画の項目など、テスト計画の詳細を取得します。プロジェクト内の計画 ID または名前を指定できます。 |
create_test_plan | プロジェクトにテスト計画を作成します。同じ名前の計画が存在する場合は既存の計画を返す冪等操作です(created=false)。 |
update_test_plan | テスト計画の名前または説明を更新します。指定したフィールドのみが変更されます。説明をクリアするには description=null を渡します。 |
delete_test_plan | テスト計画を完全に削除します。関連付けられたテスト実行は削除されません。取り消せません。 |
add_test_plan_item | テストケースをテスト計画に追加します。ID または名前でテストケースを解決します。メールアドレスまたは名前で担当者を任意で割り当てられます。 |
remove_test_plan_item | 項目 ID を指定して、テストケースをテスト計画から削除します。項目 ID は get_test_plan で取得できます。 |
list_test_runs | テスト管理プロジェクト内のテスト実行を一覧表示します。実行名、ID、期限を返します。 |
get_test_run | すべての結果を含むテスト実行の詳細を取得します。プロジェクト内の実行 ID または名前を指定できます。 |
create_test_run | プロジェクトにテスト実行を作成します。計画から一括作成する場合は、代わりに run_test_plan を使用してください。 |
update_test_run | テスト実行の名前、説明、期限を更新します。指定したフィールドのみが変更されます。任意のフィールドをクリアするには null を渡します。 |
delete_test_run | テスト実行を完全に削除します。関連付けられたテスト結果は削除されません。取り消せません。 |
list_test_results | テスト実行内のテスト結果を一覧表示します。結果名、ステータス、担当者を返します。 |
get_test_result | テスト結果の詳細を取得します。結果 ID または名前を指定できます。 |
create_test_result | 実行内にテスト結果を作成します。ID または名前でテストケースを解決します。ステータスのデフォルト値は 'untested' です。 |
update_test_result | テスト結果のステータス、担当者、説明を更新します。ステータス値:untested、blocked、passed、failed。 |
delete_test_result | テスト結果を完全に削除します。取り消せません。 |
run_test_plan | テスト計画を実行します。テスト実行を作成し、計画内の項目ごとにテスト結果を 1 つ作成します。実行 ID と作成された結果の件数を返します。実行名と期限を任意で指定できます。 |
ユーザーステータス
| ツール | 説明 |
|---|---|
list_user_statuses | Huly ユーザーのプレゼンス記録を一覧表示します。現在オンラインのユーザーと、そのアカウント UUID、最後にステータスが変更されたタイムスタンプを確認できます。online(true/false)または user(アカウント UUID)で絞り込めます。読み取り専用です。プレゼンスは WebSocket 接続の状態に基づいてサーバー側で管理されます。 |
トラブルシューティング
特殊文字を含むパスワード
Huly のパスワードに *、%、!、# などの文字が含まれている場合、シェルがこれらの文字をプロセスに渡す前に解釈するため、CLI の -e フラグで渡すと失敗することがあります。
解決方法:claude mcp add -e を使用する代わりに、MCP 設定ファイルを直接編集してください。~/.claude.json(ユーザースコープ)または .mcp.json(プロジェクトスコープ)では、JSON がすべての特殊文字をネイティブに処理します。
{
"mcpServers": {
"huly": {
"type": "stdio",
"command": "node",
"args": ["path/to/dist/index.cjs"],
"env": {
"HULY_URL": "https://your-huly-instance.com",
"HULY_EMAIL": "[email protected]",
"HULY_PASSWORD": "p@ss*w0rd!#%",
"HULY_WORKSPACE": "your-workspace"
}
}
}
}
または、パスワード認証を完全に回避するために、メールアドレスとパスワードの代わりに HULY_TOKEN を使用してください(環境変数を参照)。
MCP クライアントに「Failed to reconnect」と表示される
MCP 設定を変更した後、一部のクライアント(Claude Code など)では、再接続するだけでなく、完全な再起動が必要です。アプリケーションを完全に終了してから、再度開いてください。
次の方法で、接続が独立して正常に機能することを確認できます。
claude mcp list # Should show "Connected"
セルフホスト Huly:ログイン失敗の繰り返しによりアカウントがロックされる
Huly は、API 認証に 5 回失敗すると、パスワードログインをロックします。これは通常、初期設定時にパスワードの設定を誤った場合に発生します。このロックはサービスを再起動してもデータベースに保持されます。
症状:MCP サーバーから PasswordLoginLocked エラーが返され、Huly の Web UI に「パスワードログインは失敗回数が多すぎるためロックされています。アカウントのロックを解除するには OTP ログイン方式を使用してください」と表示されます(SMTP が設定されていない場合、OTP は機能しません)。
修正方法 — CockroachDB でロックカウンターをリセットします。
# Find your account UUID and check lock status
docker exec -e PGPASSWORD=<your_cockroach_password> <cockroach_container> \
cockroach sql --host=localhost --user=<db_user> --database=defaultdb --insecure \
-e "SELECT uuid, failed_login_attempts FROM global_account.account;"
# Reset the counter
docker exec -e PGPASSWORD=<your_cockroach_password> <cockroach_container> \
cockroach sql --host=localhost --user=<db_user> --database=defaultdb --insecure \
-e "UPDATE global_account.account SET failed_login_attempts = 0 WHERE uuid = '<your_account_uuid>';"
CockroachDB の認証情報は、Huly の compose.yml または docker exec <cockroach_container> env | grep COCKROACH で確認できます。
Windows 固有の注意事項
- Bash ラッパースクリプト(
.envファイルを読み込むもの)は、Windows 上で MCP クライアントから起動すると、正常に動作しない場合があります。MCP 設定 JSON で環境変数を直接設定することをおすすめします。 - SSH 経由の Docker イメージ取得は、認証情報マネージャーの問題により Windows で失敗することがあります。必要に応じて、サーバーのデスクトップからイメージを取得してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。