Skip to content

feat: MCP server for Slackdump archives#618

Merged
rusq merged 2 commits intomasterfrom
mcp
Feb 21, 2026
Merged

feat: MCP server for Slackdump archives#618
rusq merged 2 commits intomasterfrom
mcp

Conversation

@rusq
Copy link
Copy Markdown
Owner

@rusq rusq commented Feb 21, 2026

Summary

  • Adds a new slackdump mcp subcommand that starts a read-only Model Context Protocol (MCP) server backed by any Slackdump archive (SQLite database, chunk directory, Slack Export ZIP/dir, or Dump ZIP/dir)
  • Supports both stdio transport (for agent-managed integrations like Claude Desktop and VS Code Copilot) and HTTP transport (Streamable HTTP, for terminal-managed use where the archive can be swapped without reconfiguring the AI client)
  • Exposes six tools: list_channels, get_channel, list_users, get_messages, get_thread, get_workspace_info, plus a CLI-layer command_help tool

New files

File Purpose
internal/mcp/server.go Server struct, transports, helper functions
internal/mcp/tools.go Tool definitions and handlers
internal/mcp/doc.go Package documentation
internal/mcp/server_test.go Tests for server construction and helpers
internal/mcp/tools_test.go Table-driven tests for all six tool handlers
cmd/slackdump/internal/mcp/mcp.go CLI command wiring (CmdMCP)
cmd/slackdump/internal/mcp/assets/mcp.md Long-form help with integration instructions for Claude Desktop, VS Code, and OpenCode

Changes

  • cmd/slackdump/main.go — registers mcp.CmdMCP in the command list
  • go.mod / go.sum — adds github.com/mark3labs/mcp-go v0.44.0

Notes

  • The HTTP server listens at /mcp (not /); a plain GET hangs by design as it opens an SSE stream
  • resultJSON serialises data as text content only (no StructuredContent) to avoid MCP client schema rejections when the payload is a JSON array

Discussed in #525
Fixes #619
Fixes #518

@rusq rusq merged commit c75cad5 into master Feb 21, 2026
3 checks passed
@rusq rusq deleted the mcp branch February 21, 2026 22:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Slackdump as an MCP server Slackdump as an MCP server

1 participant