mcpField
T
THE PROJECT IS MOVED

THE PROJECT IS MOVED

ローカル
youtube.comメモリ・ナレッジ10787 週間前に更新

THE PROJECT IS MOVED について

このリポジトリは移行済みです。GitLab、Jira、Confluence、YouTube を統合した MCP サーバーでしたが、README によると機能は複数の独立したリポジトリに分割されています。本項目は参考のため、元のツールグループと設定情報を残しています。

主な機能

  1. 01ENABLE_TOOLS によるツールグループの有効化
  2. 02GitLab と Jira のツール
  3. 03Confluence ページの検索と編集
  4. 04Google Calendar と Gmail のツール

活用シーン

  1. 01GitLab マージリクエストの一覧取得とコメント投稿
  2. 02Confluence ページの検索と更新
  3. 03JQL による Jira チケットの検索

MCP 対応

このプロジェクトは MCP サーバーであり、GitLab、Jira、Confluence、Google サービスのツールを MCP クライアントに公開します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"all-in-one-model-context-protocol": {
"command": "npx",
"args": [
"-y",
"@smithery/cli"
]
}
}
}
起動コマンドnpx -y @smithery/cli

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@smithery/cli

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

プロジェクトの移転について

プロジェクトは分割され、個別のリポジトリに移転しました。

  • Google Kit:Gmail、Google Calendar、Google Chat 用のツール
  • RAG Kit:RAG、メモリー用のツール
  • Dev Kit:開発者向けツール、jira、confluence、gitlab、github など
  • Fetch Kit:取得、スクレイピング用のツールなど
  • Research Kit:調査、学術研究、推論用のツールなど

MyMCP Server

smithery badge GitLab、Jira、Confluence、YouTube などと連携する、強力な Model Context Protocol(MCP)サーバー実装です。このサーバーは、AI を活用した検索機能と、開発ワークフロー向けのさまざまなユーティリティツールを提供します。

チュートリアル

コミュニティ

コミュニティサポート、ディスカッション、最新情報については、community.aiocean.io のフォーラムをご覧ください。

前提条件

  • Go 1.23.2 以降
  • 使用するサービスの各種 API キーとトークン

インストール

Smithery 経由でインストール

Smithery 経由で Claude Desktop 用の MyMCP Server を自動的にインストールするには、以下を実行します(対話形式の CLI セットアップが案内されます)。

npx -y @smithery/cli install @nguyenvanduocit/all-in-one-model-context-protocol --client claude

注:Smithery は必要な設定値を対話形式で尋ね、自動的に環境をセットアップします。

Go 経由でインストール
  1. サーバーをインストールします:
go install github.com/nguyenvanduocit/all-in-one-model-context-protocol@latest
  1. 手動でのセットアップが必要です — 設定を記述した .env ファイルを作成します:
ENABLE_TOOLS=
QDRANT_HOST=
ATLASSIAN_HOST=
ATLASSIAN_EMAIL=
GITLAB_HOST=
GITLAB_TOKEN=
BRAVE_API_KEY=
ATLASSIAN_TOKEN=
GOOGLE_AI_API_KEY=
PROXY_URL=
OPENAI_API_KEY=
DEEPSEEK_API_KEY=
QDRANT_PORT=
GOOGLE_TOKEN_FILE=
GOOGLE_CREDENTIALS_FILE=
QDRANT_API_KEY=
  1. Claude の設定を構成します:
{
  "mcpServers": {
    "my_mcp_server": {
      "command": "all-in-one-model-context-protocol",
      "args": ["-env", "/path/to/.env"],
    }
  }
}

シークレット

GOOGLE_TOKEN_FILE は、Gemini、Google Search、Google Calendar などの Google AI に使用されます。

GOOGLE_CREDENTIALS_FILE は、Google Chat などの高度な機能に使用するサービスアカウントです。Google Cloud Console でプロジェクトとサービスアカウントを作成する必要があります。その後、Google Cloud Chat bot も作成する必要があります。これらの作成には、LLM モデルに依頼できます。

ツールを有効にする

環境変数には非表示の変数 ENABLE_TOOLS があります。これは有効にするツールグループをカンマ区切りで指定するリストです。設定されていない場合は、すべてのツールが有効になります。空のままにすると、すべてのツールが有効になります。

ツールグループの一覧は次のとおりです。

  • gemini:Gemini を活用した検索
  • fetch:取得ツール
  • confluence:Confluence ツール
  • youtube:YouTube ツール
  • jira:Jira ツール
  • gitlab:GitLab ツール
  • script:スクリプトツール
  • rag:RAG ツール
  • deepseek:Deepseek AI ツール

利用可能なツール

calendar_create_event

Google Calendar に新しい予定を作成します

引数:

  • summary(String)(必須):予定のタイトル
  • description(String):予定の説明
  • start_time(String)(必須):RFC3339 形式での予定の開始時刻(例:2023-12-25T09:00:00Z)
  • end_time(String)(必須):RFC3339 形式での予定の終了時刻
  • attendees(String):参加者のメールアドレスをカンマ区切りで指定したリスト
calendar_list_events

Google Calendar の今後の予定を一覧表示します

引数:

  • time_min(String):RFC3339 形式での検索開始時刻(デフォルト:現在)
  • time_max(String):RFC3339 形式での検索終了時刻(デフォルト:現在から1週間後)
  • max_results(Number):返す予定の最大数(デフォルト:10)
calendar_update_event

Google Calendar の既存のイベントを更新します

引数:

  • event_id (String)(必須):更新するイベントの ID
  • summary (String):イベントの新しいタイトル
  • description (String):イベントの新しい説明
  • start_time (String):RFC3339 形式の新しいイベント開始時刻
  • end_time (String):RFC3339 形式の新しいイベント終了時刻
  • attendees (String):新しい参加者のメールアドレスをカンマ区切りで指定したリスト
calendar_respond_to_event

Google Calendar のイベント招待に返信します

引数:

  • event_id (String)(必須):返信するイベントの ID
  • response (String)(必須):返信内容(accepted、declined、または tentative)
confluence_search

Confluence を検索します

引数:

  • query (String)(必須):Atlassian Confluence Query Language(CQL)
confluence_get_page

Confluence ページの内容を取得します

引数:

  • page_id (String)(必須):Confluence ページ ID
confluence_create_page

新しい Confluence ページを作成します

引数:

  • space_key (String)(必須):ページを作成するスペースのキー
  • title (String)(必須):ページのタイトル
  • content (String)(必須):ストレージ形式(XHTML)のページ内容
  • parent_id (String):親ページの ID(任意)
confluence_update_page

既存の Confluence ページを更新します

引数:

  • page_id (String)(必須):更新するページの ID
  • title (String):ページの新しいタイトル(任意)
  • content (String):ストレージ形式(XHTML)の新しいページ内容
  • version_number (String):楽観的ロックに使用するバージョン番号(任意)
deepseek_reasoning

Deepseek の AI 機能を活用して、多段階の問題解決、批判的分析、戦略的な意思決定を支援する高度な推論エンジンです

引数:

  • question (String)(必須):詳細な分析と推論が必要な、構造化されたクエリまたは問題の説明
  • context (String)(必須):MCP エコシステム内におけるクエリの運用コンテキストと目的を定義します
  • knowledge (String):MCP に対応した推論のために、関連するチャット履歴、ナレッジベースの項目、構造化データのコンテキストを提供します
get_web_content

指定された HTTP/HTTPS URL からコンテンツを取得します。このツールを使うと、ウェブページ、API、またはアクセス可能な HTTP エンドポイントからテキストコンテンツを取得できます。生のコンテンツをテキストとして返します。

引数:

gchat_list_spaces

利用可能なすべての Google Chat スペース/ルームを一覧表示します

gchat_send_message

Google Chat のスペースまたはダイレクトメッセージにメッセージを送信します

引数:

  • space_name (String)(必須):メッセージの送信先となるスペースの名前
  • message (String)(必須):送信するテキストメッセージ
ai_web_search

Google AI Search を使ってウェブを検索します。リアルタイムの情報を取得するのに最適なツールです

引数:

  • question (String)(必須):質問する内容。質問形式にしてください
  • context (String)(必須):質問のコンテキスト/目的。Gemini が質問をよりよく理解するために役立ちます
gitlab_list_projects

GitLab プロジェクトを一覧表示します

引数:

  • group_id (String)(必須):gitlab グループ ID
  • search (String):複数の語句を指定する場合は、エスケープされたスペース、+、または %20 で区切ります。語句は AND 条件で検索されます。例:one+two は、順不同で one と two の部分文字列に一致します。
gitlab_get_project

GitLab プロジェクトの詳細を取得します

引数:

  • project_path (String)(必須):プロジェクト/リポジトリのパス
gitlab_list_mrs

マージリクエストを一覧表示します

引数:

  • project_path (String)(必須):プロジェクト/リポジトリのパス
  • state (String)(デフォルト:all):MR の状態(opened/closed/merged)
gitlab_get_mr_details

マージリクエストの詳細を取得します

引数:

  • project_path (String)(必須):プロジェクト/リポジトリのパス
  • mr_iid (String)(必須):マージリクエストの IID
gitlab_create_MR_note

マージリクエストにコメントを作成します

Arguments:

  • project_path (String) (Required): プロジェクト/リポジトリのパス
  • mr_iid (String) (Required): マージリクエストの IID
  • comment (String) (Required): コメントのテキスト
gitlab_get_file_content

GitLab リポジトリからファイルの内容を取得します

Arguments:

  • project_path (String) (Required): プロジェクト/リポジトリのパス
  • file_path (String) (Required): リポジトリ内のファイルへのパス
  • ref (String) (Required): ブランチ名、タグ、またはコミット SHA
gitlab_list_pipelines

GitLab プロジェクトのパイプラインを一覧表示します

Arguments:

  • project_path (String) (Required): プロジェクト/リポジトリのパス
  • status (String) (Default: all): パイプラインのステータス(running/pending/success/failed/canceled/skipped/all)
gitlab_list_commits

指定した期間内の GitLab プロジェクトのコミットを一覧表示します

Arguments:

  • project_path (String) (Required): プロジェクト/リポジトリのパス
  • since (String) (Required): 開始日(YYYY-MM-DD)
  • until (String): 終了日(YYYY-MM-DD)。指定しない場合は現在の日付がデフォルトになります
  • ref (String) (Required): ブランチ名、タグ、またはコミット SHA
gitlab_get_commit_details

コミットの詳細を取得します

Arguments:

  • project_path (String) (Required): プロジェクト/リポジトリのパス
  • commit_sha (String) (Required): コミット SHA
gitlab_list_user_events

指定した期間内の GitLab ユーザーイベントを一覧表示します

Arguments:

  • username (String) (Required): GitLab ユーザー名
  • since (String) (Required): 開始日(YYYY-MM-DD)
  • until (String): 終了日(YYYY-MM-DD)。指定しない場合は現在の日付がデフォルトになります
gitlab_list_group_users

GitLab グループの全ユーザーを一覧表示します

Arguments:

  • group_id (String) (Required): GitLab グループ ID
gitlab_create_mr

新しいマージリクエストを作成します

Arguments:

  • project_path (String) (Required): プロジェクト/リポジトリのパス
  • source_branch (String) (Required): ソースブランチ名
  • target_branch (String) (Required): ターゲットブランチ名
  • title (String) (Required): マージリクエストのタイトル
  • description (String): マージリクエストの説明
gmail_search

Gmail の検索構文を使用してメールを検索します

Arguments:

  • query (String) (Required): Gmail の検索クエリ。Gmail の検索構文に従ってください
gmail_move_to_spam

メッセージ ID を指定して、該当するメールを Gmail の迷惑メールフォルダに移動します

Arguments:

  • message_ids (String) (Required): 迷惑メールに移動するメッセージ ID のカンマ区切りリスト
gmail_create_filter

指定した条件とアクションで Gmail のフィルタを作成します

Arguments:

  • from (String): この送信者からのメールをフィルタリングします
  • to (String): この宛先へのメールをフィルタリングします
  • subject (String): この件名のメールをフィルタリングします
  • query (String): 追加の検索条件
  • add_label (Boolean): 一致するメッセージにラベルを追加します
  • label_name (String): 追加するラベルの名前(add_label が true の場合は必須)
  • mark_important (Boolean): 一致するメッセージを重要としてマークします
  • mark_read (Boolean): 一致するメッセージを既読としてマークします
  • archive (Boolean): 一致するメッセージをアーカイブします
gmail_list_filters

アカウント内の Gmail フィルタをすべて一覧表示します

gmail_list_labels

アカウント内の Gmail ラベルをすべて一覧表示します

gmail_delete_filter

ID を指定して Gmail フィルタを削除します

Arguments:

  • filter_id (String) (Required): 削除するフィルタの ID
gmail_delete_label

ID を指定して Gmail ラベルを削除します

Arguments:

  • label_id (String) (Required): 削除するラベルの ID
jira_get_issue

特定の Jira 課題に関するステータス、担当者、説明、サブタスク、利用可能なトランジションなどの詳細情報を取得します

Arguments:

  • issue_key (String) (Required): Jira 課題の一意の識別子(例:KP-2、PROJ-123)
jira_search_issue

JQL(Jira Query Language)を使用して Jira 課題を検索します。一致する課題の概要、ステータス、担当者、優先度などの主要な詳細を返します

Arguments:

  • jql (String) (Required): JQL クエリ文字列(例:'project = KP AND status = "In Progress"')
jira_list_sprints

特定の Jira ボードにあるアクティブなスプリントと今後のスプリントをすべて一覧表示します。スプリント ID、名前、状態、日付が含まれます。

Arguments:

  • board_id (String) (Required): Jira ボードの数値 ID(ボードの URL で確認できます)
jira_create_issue

指定した詳細情報で Jira の課題を新規作成します。作成された課題のキー、ID、URL を返します。

Arguments:

  • project_key (String) (Required): 課題の作成先となるプロジェクト識別子(例:KP、PROJ)
  • summary (String) (Required): 課題の簡潔なタイトルまたは見出し
  • description (String) (Required): 課題の詳細な説明
  • issue_type (String) (Required): 作成する課題のタイプ(一般的なタイプ:Bug、Task、Story、Epic)
jira_update_issue

既存の Jira 課題の詳細を変更します。一部更新に対応しており、指定したフィールドのみが変更されます。

Arguments:

  • issue_key (String) (Required): 更新する課題の一意の識別子(例:KP-2)
  • summary (String): 課題の新しいタイトル(任意)
  • description (String): 課題の新しい説明(任意)
jira_list_statuses

特定の Jira プロジェクトで利用できるすべての課題ステータス ID と名前を取得します。

Arguments:

  • project_key (String) (Required): プロジェクト識別子(例:KP、PROJ)
jira_transition_issue

有効なトランジション ID を使用して、課題をワークフロー内で遷移させます。利用可能なトランジションは jira_get_issue から取得できます。

Arguments:

  • issue_key (String) (Required): 遷移させる課題(例:KP-123)
  • transition_id (String) (Required): 利用可能なトランジション一覧にあるトランジション ID
  • comment (String): 遷移時に追加する任意のコメント
RAG_memory_index_content

コンテンツをメモリにインデックス登録します。新規挿入または更新が可能です。

Arguments:

  • collection (String) (Required): メモリのコレクション名
  • filePath (String) (Required): コンテンツファイルのパス
  • payload (String) (Required): プレーンテキストのペイロード
RAG_memory_index_file

ローカルファイルをメモリにインデックス登録します。

Arguments:

  • collection (String) (Required): メモリのコレクション名
  • filePath (String) (Required): インデックス登録するローカルファイルのパス
RAG_memory_create_collection

メモリに新しいベクターコレクションを作成します。

Arguments:

  • collection (String) (Required): メモリのコレクション名
RAG_memory_delete_collection

メモリ内のベクターコレクションを削除します。

Arguments:

  • collection (String) (Required): メモリのコレクション名
RAG_memory_list_collections

メモリ内のすべてのベクターコレクションを一覧表示します。

RAG_memory_search

クエリに基づいて、コレクション内のメモリを検索します。

Arguments:

  • collection (String) (Required): メモリのコレクション名
  • query (String) (Required): 検索クエリ。キーワードを指定してください。
RAG_memory_delete_index_by_filepath

filePath でベクターインデックスを削除します。

Arguments:

  • collection (String) (Required): メモリのコレクション名
  • filePath (String) (Required): 削除するローカルファイルのパス
execute_comand_line_script

セキュリティ制限のもと、ユーザーのシステム上でコマンドラインスクリプトを安全に実行します。サンドボックスでの実行、タイムアウト保護、出力の取得に対応しています。環境を自動検出し、クロスプラットフォームのスクリプト実行をサポートします。

Arguments:

  • content (String) (Required):
  • interpreter (String) (Default: /bin/sh): インタープリターのバイナリへのパス(例:/bin/sh、/bin/bash、/usr/bin/python、cmd.exe)。セキュリティのため、許可リストに照らして検証されます。
  • working_dir (String): 実行ディレクトリのパス(デフォルト:ユーザーのホームディレクトリ)。システム上の許可されていない場所へのアクセスを防ぐために検証されます。
web_search

Brave Search API を使用してウェブを検索します。

Arguments:

  • query (String) (Required): 検索するクエリ(最大 400 文字、50 語)
  • count (Number) (Default: 5): 検索結果の件数(1~20、デフォルトは 5)
  • country (String) (Default: ALL): 国コード
sequentialthinking

`思考を通じて、動的かつ内省的な問題解決を行うための詳細なツールです。 このツールは、柔軟な思考プロセスを通じて問題を分析するのに役立ち、状況に応じて適応し、進化できます。 理解が深まるにつれて、それぞれの思考は以前の洞察を発展させたり、問い直したり、修正したりできます。

このツールを使用する場面:

  • 複雑な問題を段階に分けて解決する場合
  • 修正の余地を残した計画や設計を行う場合
  • 途中で方向修正が必要になる可能性のある分析を行う場合
  • 当初は全体像がはっきりしていない可能性のある問題に取り組む場合
  • 複数段階の解決策が必要な問題に取り組む場合
  • 複数の段階にわたってコンテキストを維持する必要があるタスクを行う場合
  • 無関係な情報を取り除く必要がある状況に対処する場合

主な機能:

  • 進行に応じて total_thoughts を増減できます
  • 以前の思考を問い直したり、修正したりできます
  • 終わりだと思われる段階に達した後でも、さらに思考を追加できます
  • 不確実性を表明し、別のアプローチを探ることができます
  • すべての思考を直線的につなげる必要はありません。分岐したり、前の段階に戻ったりできます
  • 解決策の仮説を生成します
  • 思考の連鎖の段階に基づいて仮説を検証します
  • 納得できるまでプロセスを繰り返します
  • 正しい回答を提示します

パラメーターの説明:

  • thought:現在の思考段階。次の内容を含めることができます。
  • 通常の分析段階
  • 以前の思考の修正
  • 以前の判断に関する疑問
  • さらに分析が必要だという気づき
  • アプローチの変更
  • 仮説の生成
  • 仮説の検証
  • next_thought_needed:終わりだと思われる段階に達していても、さらに思考が必要な場合は True
  • thought_number:現在の順序番号(必要に応じて初期の合計を超えることがあります)
  • total_thoughts:必要な思考数の現在の推定値(増減できます)
  • is_revision:この思考が以前の思考を修正するものかどうかを示すブール値
  • revises_thought:is_revision が true の場合、再検討する思考の番号
  • branch_from_thought:分岐する場合、分岐元となる思考の番号
  • branch_id:現在の分岐の識別子(該当する場合)
  • needs_more_thoughts:終わりに達したものの、さらに思考が必要だと気づいた場合

次のことを行ってください:

  1. 必要な思考数の初期推定を設定します。ただし、必要に応じて調整できるようにします
  2. 以前の思考をためらわずに問い直したり、修正したりします
  3. 「終わり」に達した後でも、必要に応じてさらに思考を追加します
  4. 不確実な点があれば表明します
  5. 以前の思考を修正する場合や、新たな道筋に分岐する場合は、その旨を示します
  6. 現在の段階に関係のない情報は無視します
  7. 適切な場合は解決策の仮説を生成します
  8. 思考の連鎖の段階に基づいて仮説を検証します
  9. 解決策に納得できるまでプロセスを繰り返します
  10. 最終出力として、できる限り正確な回答を1つ提示します
  11. 真に完了し、満足できる回答に到達した場合にのみ、next_thought_needed を false に設定します`

引数:

  • thought(String)(必須):現在の思考段階
  • nextThoughtNeeded(Boolean)(必須):次の思考段階が必要かどうか
  • thoughtNumber(Number)(必須):現在の思考番号
  • totalThoughts(Number)(必須):必要な思考数の推定値
  • isRevision(Boolean):以前の思考を修正するものかどうか
  • revisesThought(Number):再検討する思考の番号
  • branchFromThought(Number):分岐元となる思考の番号
  • branchId(String):分岐の識別子
  • needsMoreThoughts(Boolean):さらに思考が必要かどうか
tool_manager

MCP ツールを管理します(有効化または無効化)

引数:

  • action(String)(必須):実行するアクション:list、enable、disable
  • tool_name(String):有効化または無効化するツール名
tool_use_plan

要求を解決するために、有効になっているツールの使用計画を作成します

引数:

  • request(String)(必須):計画の作成対象となる要求
  • context(String)(必須):要求に関連するコンテキスト
youtube_transcript

YouTube 動画の文字起こしを取得します

引数:

  • video_id(String)(必須):YouTube 動画の ID
youtube_update_video

YouTube 動画のタイトルと説明を更新します

引数:

  • video_id (String) (必須):更新する動画の ID
  • title (String) (必須):動画の新しいタイトル
  • description (String) (必須):動画の新しい説明
  • keywords (String) (必須):動画のキーワードをカンマ区切りで指定したリスト
  • category (String) (必須):動画のカテゴリ ID。詳しくは https://developers.google.com/youtube/v3/docs/videoCategories/list をご覧ください。
youtube_get_video_details

特定の動画の詳細(タイトル、説明など)を取得します

引数:

  • video_id (String) (必須):動画の ID
youtube_list_videos

ユーザーが管理する YouTube 動画を一覧表示します

引数:

  • channel_id (String) (必須):動画を一覧表示するチャンネルの ID
  • max_results (Number) (必須):返す動画の最大数

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。