Twist AI MCP Server
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TWIST_API_KEY | Yes | Your Twist API key. | |
| TWIST_CREATE_THREAD_DISPLAY_IN_INBOX | No | Set to true to unarchive every newly-created thread so it appears in the author's Inbox. | false |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| user-infoA | Get comprehensive user information including user ID, name, email, timezone, bot status, default workspace, and away mode status. |
| awayA | Manage the current user's away status. Supports getting, setting, and clearing away mode with types: parental, vacation, sickleave, other. |
| get-workspacesA | Get all workspaces that the user belongs to. Returns a list of workspaces with their IDs, names, creators, creation dates, and optional default channels, conversations, and plan information. |
| get-usersA | Get users from a workspace. Retrieves all workspace users by default, or specific users if userIds array is provided. Supports optional case-insensitive search filtering by name or email. |
| get-groupsA | Get groups from a workspace. Retrieves all workspace groups by default, or specific groups if groupIds array is provided. Supports optional case-insensitive search filtering by group name. Use this before passing group IDs to tools that support group notifications. |
| fetch-inboxA | Fetch inbox view with threads, conversations, unread counts, and unread IDs. Provides a complete picture of the inbox state. Use archiveFilter "all" to include threads marked as done alongside active threads. |
| load-threadA | Load a thread with its metadata and comments. Supports filtering by timestamp and pagination. |
| load-conversationB | Load a conversation (direct message) with its metadata and messages. Supports filtering by timestamp and pagination. |
| search-contentA | Search across a workspace for threads, comments, and messages. Supports filtering by channels, authors, dates, and mentions. |
| get-mentionsA | Fetch threads, comments, and messages that mention the current user. Supports filtering by channel, author, and date range. Use this instead of search-content when no keyword query is needed. |
| build-linkA | Build valid Twist URLs for threads, comments, conversations, or messages. Provide workspace_id and either (conversation_id + optional message_id) OR (thread_id + optional channel_id + optional comment_id). |
| create-threadA | Create a new thread in a workspace channel. Requires a channel ID, title, and content. Optionally notify specific users or groups. |
| create-conversationA | Start a direct or group conversation with one or more users and post an initial message. Reuses the existing conversation if one already exists for the same set of users. |
| update-objectA | Update an existing Twist object. |
| delete-objectA | Permanently delete a Twist object. |
| replyA | Post a reply to a thread (as a comment) or conversation (as a message). Thread replies notify everyone who has interacted with the thread by default unless specific user recipients, groups, or a notifyAudience are provided. |
| reactA | Add or remove an emoji reaction on a thread, comment, or conversation message. Use targetType to specify the type of object (thread, comment, or message) and targetId for the ID. |
| mark-doneA | Mark threads or conversations as done. Supports individual IDs or bulk operations (mark all in workspace/channel). For threads: can mark as read, archive in inbox, or clear all unread. For conversations: can mark as read and archive. |
| list-channelsA | List channels in a workspace. By default returns only active channels; set includeArchived to true to also include archived channels. Returns channel IDs, names, descriptions, visibility (public/private), archive status, creators, creation dates, URLs, and colors. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Doist/twist-ai'
If you have feedback or need assistance with the MCP directory API, please join our Discord server