Kibela MCP Server

Integrations

  • Provides containerized deployment of the MCP server through Docker, with environment variable configuration for Kibela authentication.

  • Interacts with Kibela through its GraphQL API, allowing operations like searching notes, managing folders, creating and updating notes, and handling comments within the Kibela knowledge management platform.

  • Supports development setup using pnpm package manager, with commands for installation and dependency management.

概要

Kibela MCP サーバーは現在、STDIO を使用するローカル サーバーとしてのみ使用可能で、Claude Desktop や VSCode などの任意の MCP クライアントで使用できます。

公開されており、MCP に適した GraphQL API のみがツールとして実装されています。

ユースケース

  • キベラの情報について尋ねる
  • Kibelaでフォルダと記事を整理する
  • KibelaでAIを活用してライティングを支援

要件

  1. Dockerがインストールされている
  2. Dockerが実行されている必要があります
  3. Kibelaアクセストークンが発行される
  4. MCPクライアントを実装したアプリケーションをインストールする必要があります

インストール

例: クロードデスクトップ

claude_desktop_config.jsonに以下の設定を記述します。Kibelaのオリジンとアクセストークンを環境変数として設定します。

{ "mcpServers": { "kibela": { "command": "docker", "args": [ "run", "-i", "-e", "KIBELA_ORIGIN", "-e", "KIBELA_ACCESS_TOKEN", "ghcr.io/kibela/kibela-mcp-server" ], "env": { "KIBELA_ORIGIN": "https://your-subdomain.kibe.la", "KIBELA_ACCESS_TOKEN": "***" } } } }

ドッカーなし

次に、スクリプトを実行コマンドとして設定します。このとき、スクリプトへのパスが絶対パスであることを確認してください。

{ "mcpServers": { "kibela": { "command": "/path/to/kibela-mcp-server/bin/cli.mjs", "env": { "KIBELA_ORIGIN": "https://your-subdomain.kibe.la", "KIBELA_ACCESS_TOKEN": "***" } } } }

利用可能なツール

ノート操作

  • search_kibela_note - ノートを検索
    • query : 検索キーワード(必須)
    • resources : リソースタイプフィルター(オプション)
    • coediting : 共同編集フラグ(オプション)
    • updated : 更新日の範囲(オプション)
    • groupIds : グループIDフィルター(オプション)
    • folderIds : フォルダーIDフィルター(オプション)
    • likerIds : ライカー ユーザー ID フィルター (オプション)
    • isArchived : アーカイブフラグ(オプション)
    • sortBy : 並べ替え順(オプション)
  • get_kibela_note_by_relay_id - リレーIDでメモを取得する
    • id : ノートのリレーID(必須)
  • get_kibela_note_from_path_or_url - パスまたは URL からメモを取得する
    • path : ノートのパスまたはURL(必須)
  • get_kibela_notes - フォルダー内のメモを取得する
    • folderId : フォルダーID(必須)
    • first : 先頭からのレコード数(オプション)
    • last : 後ろからのレコード数(オプション)
  • create_kibela_note - 新しいメモを作成する
    • title : ノートのタイトル(必須)
    • content : メモの内容(必須)
    • draft : ドラフトフラグ(オプション)
    • groupIds : 所属するグループIDのリスト(必須)
    • folders : フォルダ情報(オプション)
      • groupId : グループID
      • folderName : フォルダ名
  • update_kibela_note_content - ノートの内容を更新する
    • id : ノートID(必須)
    • newContent : 新しいコンテンツ(必須)
    • baseContent : オリジナルコンテンツ(必須)

フォルダー操作

  • search_kibela_folder - フォルダを検索
    • query : 検索キーワード(必須)
  • get_kibela_folder_by_relay_id - リレーIDでフォルダーを取得する
    • id : フォルダのリレーID(必須)
    • first : 先頭からのレコード数(オプション)
  • get_kibela_folder_from_path_or_url - パスまたは URL からフォルダーを取得する
    • path : フォルダのパスまたはURL(必須)
    • first : 先頭からのレコード数(オプション)
  • get_kibela_folders - フォルダーリストを取得する
    • first : 先頭からのレコード数(オプション)
    • last : 後ろからのレコード数(オプション)
  • create_kibela_folder - 新しいフォルダを作成する
    • groupId : グループID(必須)
    • fullName : フォルダのフルパス名(必須)
  • move_kibela_note_to_another_folder - メモを別のフォルダに移動する
    • id : ノートID(必須)
    • fromFolder : ソースフォルダ情報(必須)
      • groupId : グループID
      • folderName : フォルダ名
    • toFolder : 保存先フォルダ情報(必須)
      • groupId : グループID
      • folderName : フォルダ名
  • attach_kibela_note_to_folder - メモをフォルダーに関連付ける
    • id : ノートID(必須)
    • folder : フォルダ情報(必須)
      • groupId : グループID
      • folderName : フォルダ名

コメント操作

  • create_kibela_comment - ノートにコメントを作成する
    • content : コメント内容(必須)
    • noteId : 対象ノートID(必須)
  • create_kibela_comment_reply - コメントへの返信を作成する
    • content : 返信内容(必須)
    • commentId : 対象コメントID(必須)

その他の操作

  • get_kibela_groups - グループリストを取得する
    • first : 先頭からのレコード数(オプション)
    • last : 後ろからのレコード数(オプション)
  • get_kibela_feed_sections - フィードセクションリストを取得する
    • kind : フィードの種類(必須)
    • groupId : グループID(必須)

利用可能なプロンプト

レビュープロンプト

URL を入力として受け取り、指定されたメモを確認します。

入力スキーマ:

{ url: string; // URL format }

検索プロンプト

クエリを入力として受け取り、関連する情報を検索します。

入力スキーマ:

{ query: string; }

関連ノートプロンプト

URL を入力として受け取り、関連するメモを調べます。

入力スキーマ:

{ url: string; // URL format }

コメントプロンプトを反映

URL を入力として受け取り、そのコメントをメモに反映します。

入力スキーマ:

{ url: string; // URL format }

カスタマイズ

次の形式の JSON ファイルを用意することで、ツールの説明とプロンプトをカスタマイズできます。

ツールとプロンプトのキーについては、 server.ts参照してください。

{ "tools": { "search_kibela_note": { "description": "New description" } }, "prompts": { "review": { "prompt": "New review prompt" } } }

そして、次のようにコンテナにマウントします。

{ "mcpServers": { "kibela": { "command": "docker", "args": [ "run", "-i", "-e", "KIBELA_ORIGIN", "-e", "KIBELA_ACCESS_TOKEN", "-v", "/path/to/kibela-mcp-server-config.json:/usr/src/app/kibela-mcp-server-config.json", "ghcr.io/kibela/kibela-mcp-server" ], "env": { "KIBELA_ORIGIN": "https://your-subdomain.kibe.la", "KIBELA_ACCESS_TOKEN": "***" } } } }

発達

docker compose run mcp pnpm install
docker compose up

MCP Inspectorによるテスト

npx @modelcontextprotocol/inspector \ -e KIBELA_ORIGIN=https://your-subdomain.kibe.la \ -e KIBELA_ACCESS_TOKEN=*** \ docker compose exec mcp bin/cli.mjs

ライセンス

このパッケージは、 MITライセンスの条件に基づいてライセンスされます。

-
security - not tested
A
license - permissive license
-
quality - not tested

AI アプリケーションが Kibela ナレッジ ベースと対話し、ユーザーが自然言語でコンテンツを検索、作成、更新、整理できるようにするモデル コンテキスト プロトコル サーバー。

  1. Use Cases
    1. Requirements
      1. Installation
        1. Example: Claude Desktop
        2. No Docker
      2. Available Tools
        1. Note Operations
        2. Folder Operations
        3. Comment Operations
        4. Other Operations
      3. Available Prompts
        1. Review Prompt
        2. Search Prompt
        3. Related Note Prompt
        4. Reflect Comment Prompt
      4. Customization
        1. Development
          1. Testing with MCP Inspector
        2. License
          ID: 6utn596w3i