list_kb_items
Lists knowledgebase articles (ID, slug, title, category, last change – without content), most recently changed first. Use folder to filter by folder: "engineering" returns all articles whose slug starts with "engineering/". Requirements: role Viewer or higher, key scope "read" or higher, module "Knowledgebase" enabled.
- category
- Optional · string — Only articles of this category.
- folder
- Optional · string — Folder path, e.g. "engineering" or "engineering/backend".
- limit
- Optional · number — Maximum number of results (default 50, max 200).
get_kb_item
Returns a knowledgebase article with full content – by id or slug. Without either the error "Provide id or slug" is returned. Requirements: role Viewer or higher, key scope "read" or higher, module "Knowledgebase" enabled.
- id
- Optional · string — Article ID.
- slug
- Optional · string — Article slug (alternative to id).
search_kb
Semantic search across all knowledgebase articles – use it to find relevant articles before answering questions. If vector search is unavailable or finds nothing, a text search over title and content is used. The fields of vector hits can differ from the text search, which returns ID, slug, title, category and last change. Requirements: role Viewer or higher, key scope "read" or higher, module "Knowledgebase" enabled.
- query
- Required · string — Search query.
- limit
- Optional · number — Maximum number of results (default 5, max 20).
create_kb_item
Creates a knowledgebase article. Without a slug one is generated from the title plus a timestamp; with folder the article is placed in a folder (folder="engineering" yields "engineering/article-title"). The search embedding is generated in the background. Requirements: role Member or higher, key scope "write" or higher, module "Knowledgebase" enabled.
- title
- Required · string — Title.
- slug
- Optional · string — URL-safe slug. Generated from title and timestamp if omitted.
- folder
- Optional · string — Folder path to create the article in; it is prepended to the slug.
- bodyMd
- Required · string — Article content as Markdown.
- category
- Optional · string — Category as free text.
update_kb_item
Updates an article. Use folder to move it to another folder and slug to rename the slug basename. When title or content change, the search embedding is regenerated in the background. Requirements: role Member or higher, key scope "write" or higher, module "Knowledgebase" enabled.
- id
- Required · string — ID of the article.
- title
- Optional · string — Title.
- slug
- Optional · string — New slug basename (without folder) – only the last segment, not the full path.
- folder
- Optional · string — Target folder, e.g. "engineering". An empty string moves the article to the root.
- bodyMd
- Optional · string — Article content as Markdown.
- category
- Optional · string — Category as free text.
delete_kb_item
Deletes a knowledgebase article. Requires at least the Admin role and a key with the delete scope. Requirements: role Admin or higher, key scope "delete" or higher, module "Knowledgebase" enabled.
- id
- Required · string — ID of the article.
list_notes
Lists notes (ID, title, color, pinned, last change – without content), most recently changed first; filter by pinned. Requirements: role Viewer or higher, key scope "read" or higher, module "Notes" enabled.
- pinned
- Optional · boolean — Only pinned (true) or unpinned (false) notes.
- limit
- Optional · number — Maximum number of results (default 50, max 200).
get_note
Returns a note with full content. Requirements: role Viewer or higher, key scope "read" or higher, module "Notes" enabled.
- id
- Required · string — ID of the note.
create_note
Creates a note; every field is optional (title defaults to "Untitled"). You are stored as its creator. Requirements: role Member or higher, key scope "write" or higher, module "Notes" enabled.
- title
- Optional · string — Title.
- content
- Optional · string — Note content (plain text or Markdown).
- color
- Optional · string — Color label: default, yellow, green, blue, red or purple.
- pinned
- Optional · boolean — Pins the note.
update_note
Updates title, content, color or pinned state of a note; only the fields you send are changed. Requirements: role Member or higher, key scope "write" or higher, module "Notes" enabled.
- id
- Required · string — ID of the note.
- title
- Optional · string — Title.
- content
- Optional · string — New note content.
- color
- Optional · string — New color label.
- pinned
- Optional · boolean — Pins the note.
delete_note
Deletes a note. Requires at least the Admin role and a key with the delete scope. Requirements: role Admin or higher, key scope "delete" or higher, module "Notes" enabled.
- id
- Required · string — ID of the note.
list_meetings
Lists meeting notes (ID, title, topic, date, attendees, folder, summary, creation time – without notes and transcript), newest first; filter by folder. Belongs to the Meetings module. Requirements: role Viewer or higher, key scope "read" or higher, module "Meetings" enabled.
- folderId
- Optional · string — Only meetings from this folder.
- limit
- Optional · number — Maximum number of results (default 50, max 200).
get_meeting
Returns a meeting note with full content, notes, transcript and action items. Requirements: role Viewer or higher, key scope "read" or higher, module "Meetings" enabled.
- id
- Required · string — ID of the meeting.
create_meeting
Creates a meeting note. Title and date are required. The date should include a UTC offset or Z. Notes, summary and action items can be provided directly. Requirements: role Member or higher, key scope "write" or higher, module "Meetings" enabled.
- title
- Required · string — Title.
- topic
- Optional · string — Topic of the meeting.
- date
- Required · string — Date and time of the meeting (ISO 8601, with UTC offset or Z).
- durationMin
- Optional · number — Duration in minutes.
- attendees
- Optional · string — Attendees as free text.
- notes
- Optional · string — Meeting notes as Markdown.
- transcript
- Optional · string — Transcript of the meeting.
- summary
- Optional · string — Summary of the meeting.
- actionItems
- Optional · object[] — Action items as a list of objects with text and done (true/false).
- color
- Optional · string — Color label of the meeting.
- isOnline
- Optional · boolean — Marks the meeting as an online meeting.
- folderId
- Optional · string — ID of the folder for the meeting (see list_meeting_folders).
update_meeting
Updates title, notes, summary or action items of a meeting note. Date, topic, attendees, folder or transcript cannot be changed with this tool. If you pass actionItems, the new list replaces the previous one completely. Requirements: role Member or higher, key scope "write" or higher, module "Meetings" enabled.
- id
- Required · string — ID of the meeting.
- title
- Optional · string — Title.
- notes
- Optional · string — New meeting notes as Markdown.
- summary
- Optional · string — Summary of the meeting.
- actionItems
- Optional · object[] — Action items as a list of objects with text and done (true/false).
delete_meeting
Permanently deletes a meeting note. Requires at least the Admin role and a key with the delete scope. Requirements: role Admin or higher, key scope "delete" or higher, module "Meetings" enabled.
- id
- Required · string — ID of the meeting.
list_meeting_folders
Lists the meeting folders of the organization – you need their IDs for folderId in list_meetings and create_meeting. Requirements: role Viewer or higher, key scope "read" or higher, module "Meetings" enabled. This tool takes no parameters.
list_files
Lists files of the organization (ID, name, MIME type, size in bytes, folder, starred, creation time), newest first; deleted files do not appear. Without folderId no folder filter is applied; only an explicitly sent null returns just top-level files. The tool returns metadata, not file contents. Requirements: role Viewer or higher, key scope "read" or higher, module "Files" enabled.
- folderId
- Optional · string — Only files of this folder. An explicitly sent null returns only top-level files.
- limit
- Optional · number — Maximum number of results (default 50, max 200).
list_file_folders
Lists file folders of the organization (excluding hidden folders): without parentFolderId the top-level folders, otherwise the subfolders of the given folder. Requirements: role Viewer or higher, key scope "read" or higher, module "Files" enabled.
- parentFolderId
- Optional · string — Only subfolders of this folder. Omit for top-level folders.
Common pitfalls
Files as metadata only
list_files and list_file_folders return no contents. Without folderId, list_files does not filter by folder; only an explicitly sent null returns top-level files.
Folders are slug prefixes
In the knowledgebase a folder is the slug prefix (engineering/…). update_kb_item with folder moves the article; an empty string moves it to the root.
The Meetings module is internally called Reviews
The meeting tools belong to the "Meetings" module and are independent of the weekly reviews (see the goals and metrics article).
Action items are replaced
update_meeting with actionItems replaces the whole list. Read the current state with get_meeting first and send the complete list back.
