mcp-superthread-plus

steveclarke/mcp-superthread-plus

3.2

If you are the rightful owner of mcp-superthread-plus and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.

MCP server for SuperThread app integration

MCP Superthread Plus Server

A community-maintained MCP server for Superthread, a powerful project management platform. This server enables AI assistants to manage cards, boards, documentation, and more through natural conversation—perfect for teams using AI to streamline project setup, task creation from requirements, and workspace automation.

Table of Contents

Features

  • 📋 Card Management - Create and manage cards with full workflow control (tags, checklists, relationships, assignments)
  • 📊 Boards & Spaces - Organize work with customizable boards and organizational spaces
  • 🗺️ Roadmap Projects - Plan and track large initiatives (epics)
  • 📝 Documentation - Create and maintain pages
  • 💬 Collaboration - Thread discussions on cards and pages with comments
  • 🔍 Search - Find anything across all entities
  • 🎯 Meeting Notes - Manage meeting notes and transcriptions

⚠️ Important: Pre-Release Software

This is very much a work in progress. Please read this carefully before using:

  • Interim Solution: Superthread has an official MCP server which they're actively developing. Our goal is to provide a more complete toolset with full read/write API access until their official server expands. We are not trying to replace their official server—we're confident they're building it out—we just wanted more comprehensive functionality now. This is something to use in the meantime.

  • Not Production-Ready: This server is not yet at version 1.0 and should be used with caution. It may never reach version 1.0 as Superthread continues to expand their official MCP server.

  • Unofficial & Independent: This is a community project and is not officially affiliated with or endorsed by Superthread.

  • Direct API Passthrough: This server makes direct API calls to the Superthread API and returns all data exactly as received. We do not perform any caching, data reduction, or transformation. This means responses can be large and may impact performance.

  • Use at Your Own Risk: While we've taken reasonable security precautions, this is experimental software. Test thoroughly in non-critical environments before relying on it for important workflows.

  • Limited Support: This is a community project maintained in spare time. Issues and pull requests are welcome.

Bottom line: If you need something stable and production-ready, wait for Superthread's official solution. If you need functionality now and understand the risks, this server aims to help bridge the gap.

Installation

Add to your MCP settings file (e.g., Claude Desktop config):

{
  "mcpServers": {
    "superthread": {
      "command": "npx",
      "args": ["-y", "mcp-superthread-plus"],
      "env": {
        "SUPERTHREAD_API_KEY": "your-api-key-here"
      }
    }
  }
}

Requirements: Node.js 22+

Getting Your API Key

  1. Log into Superthread → Settings & Preferences → Account → API Access
  2. Create token
  3. Add to your MCP config above

Configuration

All configuration is done via environment variables:

VariableRequiredDefaultDescription
SUPERTHREAD_API_KEY✅ Yes-Personal Access Token from Superthread account
SUPERTHREAD_API_BASE_URLNohttps://api.superthread.com/v1API endpoint (only change for testing)
SUPERTHREAD_ENABLED_TOOLSNo(all enabled)Comma-separated list of tool domains to enable. If not set or empty, ALL tools are enabled. Available domains: users, cards, boards, projects, spaces, sprints, pages, comments, notes, tags, search
SUPERTHREAD_LISTS_ADD_TO_TOPNo(none)Comma-separated list of list name patterns for smart positioning. Cards moved/created in matching lists are positioned at top (position 0). Supports wildcards (*). Example: "Done,Complet*,*finished,*archive*"

Selective Tool Enabling

By default, all tool domains are enabled when SUPERTHREAD_ENABLED_TOOLS is not set. This ensures backward compatibility and full functionality out of the box.

To reduce tool clutter in your AI client, you can explicitly specify which domains to enable. Only the domains you list will be enabled - all others will be disabled.

Enable only cards and boards:

{
  "mcpServers": {
    "superthread": {
      "command": "npx",
      "args": ["-y", "mcp-superthread-plus"],
      "env": {
        "SUPERTHREAD_API_KEY": "your-api-key-here",
        "SUPERTHREAD_ENABLED_TOOLS": "cards,boards"
      }
    }
  }
}

Enable most tools except notes and tags:

{
  "env": {
    "SUPERTHREAD_API_KEY": "your-api-key-here",
    "SUPERTHREAD_ENABLED_TOOLS": "users,cards,boards,projects,spaces,sprints,pages,comments,search"
  }
}

Important:

  • Not set or empty = All domains enabled (full functionality)
  • Set to specific domains = Only those domains enabled, all others disabled
  • This is backward compatible - existing configs without this setting will continue to work with all tools enabled

Smart Card Positioning

By default, newly created or moved cards are added to the bottom of a list. While this works well for most lists (like "Backlog" or "To Do"), it's problematic for completion lists like "Done" or "Archived" where you typically want to see the most recently completed items at the top. Without smart positioning, recent completions get buried at the bottom, making it harder to track what was just finished.

Configure lists where cards should automatically be positioned at the top using SUPERTHREAD_LISTS_ADD_TO_TOP:

{
  "env": {
    "SUPERTHREAD_API_KEY": "your-api-key-here",
    "SUPERTHREAD_LISTS_ADD_TO_TOP": "Done,Completed,Finished"
  }
}

Features:

  • Wildcard support: Use * for pattern matching (e.g., "Done,Complet*,*finished,*archive*")
  • Case-insensitive: Matches "done", "Done", "DONE" equally
  • Comma escaping: Use backslash for list names with commas (e.g., "Tasks\\, Urgent")
  • LLM override: Explicit position parameter in tools always takes precedence
  • Graceful fallback: If board/sprint fetch fails, cards use default positioning

Available Tools

Users & Workspace Management
ToolDescription
user_get_my_accountGet current user account info and workspace memberships
user_get_membersList all members of a workspace
Card Management

Note: All card tools use batch operations with array parameters. Always pass arrays, even for single operations.

ToolDescription
card_createCreate one or more cards (batch operation)
card_updateUpdate one or more cards (batch operation)
card_getGet details for one or more cards (batch operation)
card_deleteDelete one or more cards permanently (batch operation)
card_duplicateClone one or more existing cards (batch operation)
card_get_assignedGet cards assigned to a specific user
card_add_relatedCreate card relationships in batch (blocks, related, etc.)
card_remove_relatedRemove card relationships in batch
card_get_tagsList all available tags in workspace
card_add_tagsAdd existing tags to a card (supports array via ids)
card_remove_tagRemove tags from cards in batch
card_add_memberAssign members to cards in batch
card_remove_memberRemove members from cards in batch
card_create_checklistCreate checklists on cards in batch
card_update_checklistUpdate checklist titles in batch
card_delete_checklistDelete checklists from cards in batch
card_add_checklist_itemAdd items to checklist in batch (supports checked param)
card_update_checklist_itemUpdate checklist items in batch (check/uncheck, edit text)
card_delete_checklist_itemDelete checklist items in batch
Tag Management

Note: All tag tools use batch operations with array parameters. Always pass arrays, even for single operations.

ToolDescription
tag_createCreate one or more tags (batch operation)
tag_updateUpdate one or more tags (batch operation)
tag_deleteDelete one or more tags permanently (batch operation)

Note: Tag management tools use undocumented API endpoints discovered via browser network inspection.

Project Management (Roadmap)

Note: All project tools use batch operations with array parameters. Always pass arrays, even for single operations. Available batch tools: project_get, project_create, project_update, project_delete, project_add_related, project_remove_related.

ToolDescription
project_get_allList all roadmap projects (epics)
project_getGet one or more projects (batch operation)
project_createCreate one or more projects (batch operation)
project_updateUpdate one or more projects (batch operation)
project_deleteDelete one or more projects (batch operation)
project_add_relatedLink cards to projects (batch operation)
project_remove_relatedRemove card-project links (batch operation)
Board Management

Note: All board tools use batch operations with array parameters. Always pass arrays, even for single operations. Available batch tools: board_get, board_create, board_update, board_delete, board_create_list, board_update_list, board_delete_list.

ToolDescription
board_get_allList all boards in a space
board_getGet one or more boards (batch operation)
board_createCreate one or more boards (batch operation)
board_updateUpdate one or more boards (batch operation)
board_duplicateClone an existing board
board_deleteDelete one or more boards (batch operation)
board_create_listCreate one or more lists (batch operation)
board_update_listUpdate one or more lists (batch operation)
board_delete_listDelete one or more lists (batch operation)
Sprint Management

Note: Sprint get operations use batch operations with array parameters. Always pass arrays, even for single operations. Available batch tool: sprint_get.

ToolDescription
sprint_get_allList all sprints for a space
sprint_getGet one or more sprints (batch operation)
Space Management

Note: All space tools use batch operations with array parameters. Always pass arrays, even for single operations. Available batch tools: space_get, space_create, space_update, space_delete, space_add_member, space_remove_member.

ToolDescription
space_get_allList all spaces (organizational containers)
space_getGet one or more spaces (batch operation)
space_createCreate one or more spaces (batch operation)
space_updateUpdate one or more spaces (batch operation)
space_deleteDelete one or more spaces (batch operation)
space_add_memberAdd members to spaces (batch operation)
space_remove_memberRemove members from spaces (batch operation)
Page Management

Note: All page operations use batch operations with array parameters. Always pass arrays, even for single operations. Available batch tools: page_get, page_create, page_update, page_archive, page_delete.

ToolDescription
page_getGet one or more pages (batch operation)
page_createCreate one or more pages (batch operation)
page_updateUpdate one or more pages (batch operation)
page_get_allList all pages in workspace
page_duplicateClone an existing page
page_archiveArchive one or more pages (batch operation)
page_deleteDelete one or more pages (batch operation)
Note Management

Note: All note operations use batch operations with array parameters. Always pass arrays, even for single operations. Available batch tools: note_get, note_create, note_delete.

ToolDescription
note_getGet one or more notes (batch operation)
note_createCreate one or more notes (batch operation)
note_get_allList all notes
note_deleteDelete one or more notes (batch operation)
Comments & Collaboration

Note: All comment tools use batch operations with array parameters. Always pass arrays, even for single operations. Available batch tools: comment_get, comment_create, comment_update, comment_delete, comment_reply, comment_update_reply, comment_delete_reply.

ToolDescription
comment_getGet one or more comments (batch operation)
comment_createCreate one or more comments (batch operation)
comment_updateUpdate one or more comments (batch operation)
comment_deleteDelete one or more comments (batch operation)
comment_replyReply to one or more comments (batch operation)
comment_update_replyUpdate one or more replies (batch operation)
comment_delete_replyDelete one or more replies (batch operation)
comment_get_repliesGet all replies to a comment

Note: Comment tools support @mentions and HTML formatting. You can ask the AI to mention team members by name in comments and use HTML tags for rich formatting (headers, bold, italic, lists, links, etc.).

Search
ToolDescription
search_getSearch across boards, cards, pages, and more

Usage Examples

Initial Setup - Discover Your Workspaces

User: Get my Superthread account info
AI: *calls user_get_my_account*
→ Your account: user@example.com
→ Workspaces available:
  - Main Team 
  - Side Project

Create Workspace Structure

User: Set up a new project workspace
AI: I'll create the structure:
1. Creating space "Q1 2025 Launch"...
2. Creating boards: Development, Design, Marketing...
3. Adding lists: To Do, In Progress, Review, Done...
✓ Workspace ready! Space ID: space_789

Task Creation from Requirements

User: Create tasks for implementing user authentication
AI: *calls card_create with 5 cards in single batch operation*
✓ Created 5 tasks in one call:
- Set up auth provider (High priority, 8 points)
- Design login UI (Medium, 5 points)
- Implement JWT tokens (High, 8 points)
- Add password reset flow (Medium, 5 points)
- Write auth tests (Low, 3 points)

Manage Cards with Checklists

User: Add a checklist to card 123 for deployment steps, mark the first two as done
AI: *creates checklist, then adds 5 items with checked status in single batch call*
✓ Created deployment checklist with items:
  - [x] Run tests
  - [x] Update changelog
  - [ ] Build production bundle
  - [ ] Deploy to staging
  - [ ] Deploy to production

Collaborate with Comments

User: Comment on card 456 and mention Sarah Chen: "Can you review the API changes?"
AI: *creates comment with mention*
✓ Added comment with mention to @Sarah Chen

Requirements

  • Node.js 22+
  • Superthread account with API access
  • Personal Access Token from Superthread account settings

Development

Setup

git clone https://github.com/steveclarke/mcp-superthread-plus.git
cd mcp-superthread-plus
pnpm install
pnpm run build

Commands

# Watch mode for development
pnpm run dev

# Build
pnpm run build

# Test
pnpm run test

# Lint
pnpm run lint
pnpm run lint:fix

# Format
pnpm run format

Running Locally

Configure your MCP client to run from your local development directory:

{
  "mcpServers": {
    "superthread": {
      "command": "node",
      "args": ["/absolute/path/to/mcp-superthread-plus/dist/index.js"],
      "env": {
        "SUPERTHREAD_API_KEY": "your-token"
      }
    }
  }
}

Architecture

This server uses a composition-based API client architecture with resource classes for each domain (cards, boards, projects, etc.). The client handles authentication, error handling, and automatic terminology mapping between Superthread's modern UI terms and legacy API terms.

For contributors: See for detailed architectural information and for API terminology mapping.

Important notes: See for information about API quirks, limitations, and undocumented endpoints.

Contributing

Contributions welcome! We're focused on comprehensive API coverage with full read/write capabilities.

Areas for contribution:

  • Enhanced response filtering and formatting
  • Performance optimizations
  • Documentation improvements

License

MIT