Skip to main content
Glama
kibela
by kibela
config.ts3.74 kB
import { existsSync, readFileSync } from "node:fs"; import { join } from "node:path"; import { z } from "zod"; const configSchema = z.object({ tools: z .object({ search_kibela_note: z .object({ description: z.string().optional(), }) .optional(), search_kibela_folder: z .object({ description: z.string().optional(), }) .optional(), get_kibela_groups: z .object({ description: z.string().optional(), }) .optional(), get_kibela_folders: z .object({ description: z.string().optional(), }) .optional(), get_kibela_notes: z .object({ description: z.string().optional(), }) .optional(), get_kibela_note_by_relay_id: z .object({ description: z.string().optional(), }) .optional(), get_kibela_note_from_path_or_url: z .object({ description: z.string().optional(), }) .optional(), get_kibela_folder_by_relay_id: z .object({ description: z.string().optional(), }) .optional(), get_kibela_note_from_path_or_url_by_relay_id: z .object({ description: z.string().optional(), }) .optional(), get_kibela_note_by_relay_id_from_path_or_url: z .object({ description: z.string().optional(), }) .optional(), get_kibela_folder_from_path_or_url: z .object({ description: z.string().optional(), }) .optional(), get_kibela_feed_sections: z .object({ description: z.string().optional(), }) .optional(), create_kibela_note: z .object({ description: z.string().optional(), }) .optional(), create_kibela_comment: z .object({ description: z.string().optional(), }) .optional(), create_kibela_comment_reply: z .object({ description: z.string().optional(), }) .optional(), create_kibela_folder: z .object({ description: z.string().optional(), }) .optional(), move_kibela_note_to_another_folder: z .object({ description: z.string().optional(), }) .optional(), attach_kibela_note_to_folder: z .object({ description: z.string().optional(), }) .optional(), update_kibela_note_content: z .object({ description: z.string().optional(), }) .optional(), }) .strict() .optional(), prompts: z .object({ review: z .object({ prompt: z.string().optional(), }) .optional(), search: z .object({ prompt: z.string().optional(), }) .optional(), related_note: z .object({ prompt: z.string().optional(), }) .optional(), reflect_comment: z .object({ prompt: z.string().optional(), }) .optional(), }) .strict() .optional(), }); let config: z.infer<typeof configSchema> = { tools: {}, prompts: {}, }; if (existsSync(join(process.cwd(), "kibela-mcp-server-config.json"))) { const parsedConfig = configSchema.safeParse( JSON.parse( readFileSync( join(process.cwd(), "kibela-mcp-server-config.json"), "utf-8" ) ) ); if (!parsedConfig.success) { console.error("Invalid config:", parsedConfig.error.format()); process.exit(1); } config = parsedConfig.data; } export { config };

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/kibela/kibela-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server