Kibela
STDIOKibela API集成服务器,让大模型交互笔记内容
Kibela API集成服务器,让大模型交互笔记内容
MCP server implementation for Kibela API integration, enabling LLMs to interact with Kibela content.
[!TIP] This extension performs GraphQL schema introspection using the buildClientSchema, getIntrospectionQuery, and printSchema functions from the graphql package to reverse engineer Kibela's API. For more details, see her
KIBELA_TEAM: Your Kibela team name (required)KIBELA_TOKEN: Your Kibela API token (required)Add to your ~/.cursor/mcp.json:
{ "mcpServers": { "kibela": { "command": "npx", "args": ["-y", "@kiwamizamurai/mcp-kibela-server"], "env": { "KIBELA_TEAM": "YOUR_TEAM_NAME", "KIBELA_TOKEN": "YOUR_TOKEN" } } } }
If you want to use docker instead
{ "mcpServers": { "kibela": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "KIBELA_TEAM", "-e", "KIBELA_TOKEN", "ghcr.io/kiwamizamurai/mcp-kibela-server:latest" ], "env": { "KIBELA_TEAM": "YOUR_TEAM_NAME", "KIBELA_TOKEN": "YOUR_TOKEN" } } } }
Search Kibela notes with given query
query (string): Search querycoediting (boolean, optional): Filter by co-editing statusisArchived (boolean, optional): Filter by archive statussortBy (string, optional): Sort by (RELEVANT, CONTENT_UPDATED_AT)userIds (string[], optional): Filter by user IDsfolderIds (string[], optional): Filter by folder IDsGet your latest notes from Kibela
limit (number, optional): Number of notes to fetch (default: 15)Get content and comments of a specific note
id (string): Note IDinclude_image_data (boolean, optional): Whether to include image data URLs in the response (default: false)Get list of accessible groups
Get folders in a group
groupId (string): Group IDparentFolderId (string, optional): Parent folder ID for nested foldersGet notes in a group that are not attached to any folder
groupId (string): Group IDGet notes in a folder
folderId (string): Folder IDlimit (number, optional): Number of notes to fetch (default: 100)Get list of users
Like a note
noteId (string): Note IDUnlike a note
noteId (string): Note IDGet your recently viewed notes
limit (number, optional): Number of notes to fetch (max 15)Get note content by its path or URL
path (string): Note path (e.g. '/group/folder/note') or full Kibela URL (e.g. 'https://team.kibe.la/notes/123')include_image_data (boolean, optional): Whether to include image data URLs in the response (default: false)npm installFor local development, update your ~/.cursor/mcp.json:
{ "mcpServers": { "kibela": { "command": "node", "args": ["path/to/mcp-kibela-server/dist/src/index.js"], "env": { "KIBELA_TEAM": "YOUR_TEAM_NAME", "KIBELA_TOKEN": "YOUR_TOKEN" } } } }
npx @modelcontextprotocol/inspector node ./dist/src/index.js
and set environemtns
Build and run locally:
docker build -t mcp-kibela-server .
Then use this configuration:
{ "mcpServers": { "kibela": { "command": "docker", "args": [ "run", "-i", "--rm", "-e", "KIBELA_TEAM", "-e", "KIBELA_TOKEN", "mcp-kibela-server" ], "env": { "KIBELA_TEAM": "YOUR_TEAM_NAME", "KIBELA_TOKEN": "YOUR_TOKEN" } } } }
For SSE transport, ensure the server URL is set to: http://localhost:3000/sse