Kibela MCP 服
一种模型上下文协议服务器,允许AI应用程序与Kibela知识库进行交互,使用户能够通过自然语言搜索、创建、更新和组织内容。
服务介绍
概述
Kibela MCP 服务器目前仅作为使用 STDIO 的本地服务器可用,并且可以与任何 MCP 客户端(如 Claude Desktop 或 VSCode)一起使用。
只有那些公开可用且适合 MCP 的 GraphQL API 被实现为工具。
使用场景
- 查询 Kibela 中的信息
- 整理 Kibela 中的文件夹和文章
- 使用 AI 帮助你在 Kibela 中写作
需求
安装
示例:Claude Desktop
将以下配置写入 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": "***"
}
}
}
}
不使用 Docker
然后将脚本设置为执行命令。此时,请确保脚本路径是绝对路径。
{
"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- 通过 Relay ID 获取笔记id: 笔记的 Relay 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: 组 IDfolderName: 文件夹名称
-
update_kibela_note_content- 更新笔记内容id: 笔记 ID(必填)newContent: 新内容(必填)baseContent: 原始内容(必填)
文件夹操作
-
search_kibela_folder- 搜索文件夹query: 搜索关键词(必填)
-
get_kibela_folder_by_relay_id- 通过 Relay ID 获取文件夹id: 文件夹的 Relay 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: 组 IDfolderName: 文件夹名称
toFolder: 目标文件夹信息(必填)groupId: 组 IDfolderName: 文件夹名称
-
attach_kibela_note_to_folder- 将笔记关联到文件夹id: 笔记 ID(必填)folder: 文件夹信息(必填)groupId: 组 IDfolderName: 文件夹名称
评论操作
-
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 许可证的条款获得许可。