Slite MCP connector
OAuth 2.1/DCR CollaborationProductivityFiles & DocumentsConnect to Slite MCP. Create and manage notes, channels, collections, and comments in Slite from AI workflows.
Slite MCP connector
-
Install the SDK
Section titled “Install the SDK”Terminal window npm install @scalekit-sdk/nodeTerminal window pip install scalekit -
Set your credentials
Section titled “Set your credentials”Add your Scalekit credentials to your
.envfile. Find values in app.scalekit.com > Developers > API Credentials..env SCALEKIT_ENVIRONMENT_URL=<your-environment-url>SCALEKIT_CLIENT_ID=<your-client-id>SCALEKIT_CLIENT_SECRET=<your-client-secret> -
Authorize and make your first call
Section titled “Authorize and make your first call”quickstart.ts import { ScalekitClient } from '@scalekit-sdk/node'import 'dotenv/config'const scalekit = new ScalekitClient(process.env.SCALEKIT_ENV_URL,process.env.SCALEKIT_CLIENT_ID,process.env.SCALEKIT_CLIENT_SECRET,)const actions = scalekit.actionsconst connector = 'slitemcp'const identifier = 'user_123'// Generate an authorization link for the userconst { link } = await actions.getAuthorizationLink({ connectionName: connector, identifier })console.log('Authorize Slite MCP:', link)process.stdout.write('Press Enter after authorizing...')await new Promise(r => process.stdin.once('data', r))// Make your first callconst result = await actions.executeTool({connector,identifier,toolName: 'slitemcp_list-channels',toolInput: {},})console.log(result)quickstart.py import osfrom scalekit.client import ScalekitClientfrom dotenv import load_dotenvload_dotenv()scalekit_client = ScalekitClient(env_url=os.getenv("SCALEKIT_ENV_URL"),client_id=os.getenv("SCALEKIT_CLIENT_ID"),client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),)actions = scalekit_client.actionsconnection_name = "slitemcp"identifier = "user_123"# Generate an authorization link for the userlink_response = actions.get_authorization_link(connection_name=connection_name,identifier=identifier,)print("Authorize Slite MCP:", link_response.link)input("Press Enter after authorizing...")# Make your first callresult = actions.execute_tool(tool_input={},tool_name="slitemcp_list-channels",connection_name=connection_name,identifier=identifier,)print(result)
What you can do
Section titled “What you can do”Connect this agent connector to let your agent:
- List-comment-threads records — List all non-archived comment threads on a note, oldest-first, with full content
- Create-comment-thread records — Create a new comment thread on a note, optionally anchored to a specific block or highlighted text
- Modify-block records — Replace a single block in a note with new sliteml content, identified by block ID
- Ask-slite records — Ask a question and get an AI-generated answer with source citations from your workspace
- Get-user-group records — Retrieve a user group by ID, including its name, description, and members
- Set-note-review-state records — Set the review state and optional review owner of a note
Tool list
Section titled “Tool list”Use the exact tool names from the Tool list below when you call execute_tool. If you’re not sure which name to use, list the tools available for the current user first.
slitemcp_append-blocks
#
Append sliteml content blocks to an existing note, optionally anchoring them before or after a specific block. 5 params
Append sliteml content blocks to an existing note, optionally anchoring them before or after a specific block.
noteId string required The ID of the note to append blocks to. sliteml string required sliteml content blocks to insert. Block IDs are auto-generated and returned in changedContent. afterBlockId string optional Block ID to insert after; read from trailing {#blockId} markers in a get-note response. beforeBlockId string optional Block ID to insert before; read from trailing {#blockId} markers in a get-note response. returnFullDocument boolean optional If true, include the full updated document in the response. Defaults to false. slitemcp_archive-note
#
Archive a note, hiding it from navigation and search until restored. 1 param
Archive a note, hiding it from navigation and search until restored.
noteId string required The ID of the note to archive. slitemcp_ask-slite
#
Ask a question and get an AI-generated answer with source citations from your workspace. 2 params
Ask a question and get an AI-generated answer with source citations from your workspace.
question string required The question to ask Slite. parentNoteId string optional Optional filter to only search within notes under this parent note id. slitemcp_create-channel
#
Create a new channel (top-level container for notes) and become its first member. 4 params
Create a new channel (top-level container for notes) and become its first member.
name string required The name of the channel to create. iconColor string optional Optional icon color. Paired with iconShape. iconShape string optional Optional icon shape. Use an icon key like 'rocket' or 'book' (no colons). type string optional Channel visibility. "public" (default) is open to all org members, "private" is restricted to invited members. slitemcp_create-collection
#
Create a new collection (structured database of notes) with typed columns. 3 params
Create a new collection (structured database of notes) with typed columns.
columns array required Column definitions for the collection. The Title column is always included automatically. title string required The title of the collection to create. parentNoteId string optional Optional ID of the parent note. If not specified, the collection will be created in your personal channel. slitemcp_create-comment-thread
#
Create a new comment thread on a note, optionally anchored to a specific block or highlighted text. 5 params
Create a new comment thread on a note, optionally anchored to a specific block or highlighted text.
content string required Plain-text content of the first comment. noteId string required The ID of the note to open the thread on. blockId string optional Optional: when anchoring inline, the ID of the block to edit. Same as `modify-block`. highlight string optional Optional quoted snippet shown alongside the thread in the sidebar. sliteml string optional For inline anchoring, the updated block sliteml containing a <comment> tag with the thread ID. slitemcp_create-note
#
Create a new note with a title, optional sliteml content, and optional parent. 7 params
Create a new note with a title, optional sliteml content, and optional parent.
title string required The title of the note to create. contentWidth string optional Doc layout: 'regular' (default centered) or 'wide' (expanded). fields object optional Field values for collection records, keyed by column ID. Only applies when parentNoteId is a collection. iconColor string optional Optional icon color. Paired with iconShape. iconShape string optional Optional icon shape. Use an icon key like 'rocket' or 'book' (no colons). parentNoteId string optional Optional ID of the parent note. If not specified, the note will be created in your personal channel. sliteml string optional Optional sliteml content for the note body. Do not duplicate the title as a heading. slitemcp_get-comment-thread-on-note
#
Retrieve a single comment thread by its note and thread IDs. 2 params
Retrieve a single comment thread by its note and thread IDs.
noteId string required The ID of the note the thread belongs to. threadId string required The ID of the comment thread to retrieve. slitemcp_get-note
#
Retrieve a note's content by ID, returning sliteml with block IDs or plain Markdown. 6 params
Retrieve a note's content by ID, returning sliteml with block IDs or plain Markdown.
noteId string required The ID of the note to retrieve. cursor string optional Pass the nextCursor from a previous partial response to continue reading the document. endBlockId string optional Return only blocks up to and including this one (inclusive). Combine with startBlockId for a slice. format string optional Content format to return: 'sliteml' (default, with block IDs) or 'md' (plain Markdown). fullContent boolean optional Return the full document. Defaults to true; set false to fetch only a preview. startBlockId string optional Return only blocks from this block onward (inclusive). Combine with endBlockId for a slice. slitemcp_get-note-children
#
List child notes under a parent note (paginated). 2 params
List child notes under a parent note (paginated).
noteId string required The ID of the parent note. cursor string optional Cursor to use to continue fetching the note children (for pagination when there are more than 50 children). slitemcp_get-user
#
Retrieve a user by ID, including their name, email, and role. 1 param
Retrieve a user by ID, including their name, email, and role.
userId string required The ID of the user to retrieve. slitemcp_get-user-group
#
Retrieve a user group by ID, including its name, description, and members. 1 param
Retrieve a user group by ID, including its name, description, and members.
userGroupId string required The ID of the user group to retrieve. slitemcp_list-channels
#
List channels accessible to the current user (paginated). 1 param
List channels accessible to the current user (paginated).
cursor string optional Cursor for pagination when there are more results. slitemcp_list-comment-threads
#
List all non-archived comment threads on a note, oldest-first, with full content. 1 param
List all non-archived comment threads on a note, oldest-first, with full content.
noteId string required The ID of the note to list threads on. slitemcp_list-empty-notes-for-knowledge-management
#
List empty notes for knowledge management, filterable by channel, owner, and pagination cursor. 4 params
List empty notes for knowledge management, filterable by channel, owner, and pagination cursor.
channelIdList array optional Optional channel IDs to filter notes by channel. cursor string optional Cursor for pagination when there are more results. first integer optional Maximum number of notes to return. Defaults to 20. ownerIdList array optional Optional user or user group IDs to filter notes by owner. slitemcp_list-inactive-notes-for-knowledge-management
#
List inactive notes for knowledge management, filterable by channel, owner, and pagination cursor. 4 params
List inactive notes for knowledge management, filterable by channel, owner, and pagination cursor.
channelIdList array optional Optional channel IDs to filter notes by channel. cursor string optional Cursor for pagination when there are more results. first integer optional Maximum number of notes to return. Defaults to 20. ownerIdList array optional Optional user or user group IDs to filter notes by owner. slitemcp_list-notes-for-knowledge-management
#
List notes for knowledge management, filterable by review state, channel, owner, and age. 6 params
List notes for knowledge management, filterable by review state, channel, owner, and age.
channelIdList array optional Optional channel IDs to filter notes by channel. cursor string optional Cursor for pagination when there are more results. first integer optional Maximum number of notes to return. Defaults to 20. ownerIdList array optional Optional user or user group IDs to filter notes by owner. reviewStateList array optional Optional filter to return notes in special review states. sinceDaysAgo number optional Optional time window for popularity. slitemcp_list-public-notes-for-knowledge-management
#
List public notes for knowledge management, filterable by review state, channel, owner, and age. 6 params
List public notes for knowledge management, filterable by review state, channel, owner, and age.
channelIdList array optional Optional channel IDs to filter notes by channel. cursor string optional Cursor for pagination when there are more results. first integer optional Maximum number of notes to return. Defaults to 20. ownerIdList array optional Optional user or user group IDs to filter notes by owner. reviewStateList array optional Optional filter to return notes in special review states. sinceDaysAgo number optional Optional time window for public notes. slitemcp_list-recently-edited-notes
#
List the last 10 notes recently edited by the current user. 1 param
List the last 10 notes recently edited by the current user.
cursor string optional Cursor for pagination when there are more results. slitemcp_list-recently-visited-notes
#
List the last 10 notes recently visited by the current user. 1 param
List the last 10 notes recently visited by the current user.
cursor string optional Cursor for pagination when there are more results. slitemcp_modify-block
#
Replace a single block in a note with new sliteml content, identified by block ID. 4 params
Replace a single block in a note with new sliteml content, identified by block ID.
blockId string required ID of the block to replace; read from {#blockId} markers in a get-note response. noteId string required The ID of the note containing the block. sliteml string required Replacement sliteml content for the block. Do not include the block ID in the content. returnFullDocument boolean optional If true, include the full updated document in the response. Defaults to false. slitemcp_modify-range
#
Replace a consecutive range of blocks in a note with new sliteml content. 5 params
Replace a consecutive range of blocks in a note with new sliteml content.
endBlockId string required ID of the last block in the range to replace (inclusive); must follow startBlockId in document order. noteId string required The ID of the note containing the blocks. sliteml string required Replacement sliteml content. Pass an empty string to delete the range. startBlockId string required ID of the first block in the range to replace (inclusive). returnFullDocument boolean optional If true, include the full updated document in the response. Defaults to false. slitemcp_move-note
#
Move a note to become a child of another parent note. 2 params
Move a note to become a child of another parent note.
noteId string required The ID of the note to move. parentNoteId string required The ID of the target parent note to move the note into. slitemcp_remove-blocks
#
Remove one or more blocks from a note by their block IDs. 2 params
Remove one or more blocks from a note by their block IDs.
blockIds array required The block IDs to remove. Use get-note with format="sliteml" to see available block IDs. noteId string required The ID of the note containing the blocks. slitemcp_reply-to-comment-thread
#
Add a reply to an existing comment thread and return the updated thread. 2 params
Add a reply to an existing comment thread and return the updated thread.
content string required Plain-text content of the reply. threadId string required The ID of the comment thread to reply to. slitemcp_resolve-comment-thread
#
Mark a comment thread as resolved. 1 param
Mark a comment thread as resolved.
threadId string required The ID of the comment thread to resolve. slitemcp_restore-note
#
Restore an archived note, making it visible in navigation and search again. 1 param
Restore an archived note, making it visible in navigation and search again.
noteId string required The ID of the archived note to restore. slitemcp_search-notes
#
Search notes by keywords and return matching titles, IDs, and text highlights. 7 params
Search notes by keywords and return matching titles, IDs, and text highlights.
query string required The search query to perform. hitsPerPage number optional Specify how many notes to return per page. includeArchived boolean optional Optional filter to also include archived notes in the search results (default to false). lastEditedAfter string optional Optional filter to only return notes edited after a specific date (ISO 8601 format). page number optional Used to perform pagination on search. parentNoteId string optional Optional filter to only return notes under this parent note id. reviewState string optional Optional filter to return notes in a special review state. slitemcp_search-user-groups
#
Search and list user groups in the organization by name. 2 params
Search and list user groups in the organization by name.
cursor string optional Cursor for pagination when there are more results. query string optional Optional search query to filter groups by name. slitemcp_search-users
#
Search and list users in the organization by name or email. 2 params
Search and list users in the organization by name or email.
cursor string optional Cursor for pagination when there are more results. query string optional Optional search query to filter users by name, email, or username. slitemcp_set-note-review-state
#
Set the review state and optional review owner of a note. 5 params
Set the review state and optional review owner of a note.
noteId string required The ID of the note. message string optional Optional message. Only applicable for "out_of_date" and "verification_requested" states. reviewState string optional The new review state to set. Optional if only updating the review owner. reviewStateManagedBy string optional Optional user ID to set as the review owner for this note. reviewStateManagedByUserGroup string optional Optional user group ID to set as the review owner for this note. Mutually exclusive with reviewStateManagedBy. slitemcp_unresolve-comment-thread
#
Reopen a previously resolved comment thread. 1 param
Reopen a previously resolved comment thread.
threadId string required The ID of the comment thread to unresolve. slitemcp_update-channel
#
Rename a channel or change its icon color and shape. 4 params
Rename a channel or change its icon color and shape.
channelId string required The ID of the channel to update. iconColor string optional Optional new icon color. Pass null to clear. iconShape string optional Optional new icon shape. Pick an icon dictionary key (e.g. "book", "rocket") — no colons. Pass null to clear. name string optional Optional new name for the channel. slitemcp_update-collection
#
Add or remove columns in a collection (structured database of notes). 3 params
Add or remove columns in a collection (structured database of notes).
noteId string required The ID of the collection note to update. columns array optional New columns to add to the collection. removeColumns array optional Column IDs to remove. Errors if any ID does not match an existing column. slitemcp_update-note
#
Update an existing note's title, content, icon, or layout settings. 7 params
Update an existing note's title, content, icon, or layout settings.
noteId string required The ID of the note to update. contentWidth string optional Doc layout: 'regular' (default centered) or 'wide' (expanded). fields object optional Field values for collection records, keyed by column ID. Only applies when the note is inside a collection. iconColor string optional Optional new icon color. Pass null to clear. iconShape string optional Optional new icon shape. Use an icon key like 'rocket' or '#collection_table' for collection views. sliteml string optional Optional new sliteml content. Replaces the entire note body. title string optional Optional new title for the note. slitemcp_verify-note
#
Mark a note as verified, optionally with an expiration date. 2 params
Mark a note as verified, optionally with an expiration date.
noteId string required The ID of the note to verify. until string optional Optional ISO 8601 date in the future when the verification should expire.