Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog
Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

AllMCPs on GitHub (opens in a new tab)
Launched onTiny Startupstinystartups.com
Explore
  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Random discovery New
  • Submit a server
  • Pricing & Boost Boost
Learn
  • Guides hub
  • What is MCP?
  • Install guide
  • Build an MCP server
  • Deploy an MCP server
  • Security guide
  • Troubleshooting
  • MCP for SEO & AEO
  • Protocol versioning
  • Blog & updates
Tools
  • All developer tools
  • Config generator
  • Config validator
  • Config auditor
  • MCP playground
  • Token calculator
  • OpenAPI β†’ MCP
  • Badge generator
For agents
  • REST API docs
  • Trust & traffic Live
  • Remote MCP server SSE β†— (opens in a new tab)
  • llms.txt β†— (opens in a new tab)
  • Catalog JSON β†— (opens in a new tab)
Company
  • About
  • Advertise Sponsor
  • Contact
  • GitHub β†— (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZoneAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZone
Β© 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. πŸ’¬ Communication
  3. Chatmux
Chatmux logo
Health: ActiveRecent health check succeeded.Last checked 9/7/2026, 7:47:05 PM

Chatmux

User RatingsBe the first to rate and review this MCP server! Enrichment pendingWe haven’t run our AI enrichment pass on this listing yet, so the overview, use cases, and FAQ below may be sparse or missing. We work through the catalog over time β€” check back soon.
View Repository1 GitHub StarsTotal stargazers on GitHub for the source repository (1 stars).Visit Website

Local-first MCP server for your own LINE and Telegram chats. Data stays on your machine.

Quick Install

Automated & IDE Setup

Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β€” or use 1-click editor setup below.

Add to CursorAdd to VS Code
Manual Client & Custom JSON ConfigExpand JSON β–Ύ

Client Config & Setup

Choose your client or environment
Target File:~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "chatmux": {
      "command": "npx",
      "args": [
        "-y",
        "chatmux"
      ]
    }
  }
}

πŸ’‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.

Install Directory Badge Claim listing AlternativesπŸ’¬ More in Communication

Documentation Overview

chatmux

Local-first personal chat data layer daemon. Connects IM platforms (v0.1: LINE) via child-process adapters, stores messages to JSONL + SQLite/FTS5, exposes MCP tools for AI clients.

The three repos

chatmux is the core. Platforms plug in below it, consumers sit above it, and both sides of that boundary live in their own repos:

RepoRole
chatmux (this one)Core daemon: storage, safety rail, MCP server, LINE adapter
chatmux-adapter-telegramSecond platform adapter (Telegram, MTProto user session)
chat.nvimReference consumer: read and reply to chats inside Neovim

Adapters speak the adapter protocol; consumers speak MCP. Either side can be replaced without touching the other.

Quickstart

1. Install

bash
git clone https://github.com/echoedinvoker/chatmux.git
cd chatmux
bun install

2. Decide whether to connect an account yet

With no adapters.json, bun run start launches the LINE adapter, which means step 3 puts your LINE account on the line β€” read Account Risk Warning before you run it. If you would rather look around first, start with no adapter at all:

bash
mkdir -p ~/.local/share/chatmux
cat > ~/.local/share/chatmux/adapters.json <<'JSON'
{
  "adapters": [],
  "mcp": { "port": 7717 }
}
JSON
bun run start

The daemon comes up with storage and the full MCP interface β€” you can initialize, list tools, and read resources. There is simply no chat data behind them until an adapter is connected. Set CHATMUX_DATA_DIR to keep this trial run out of your real data directory:

bash
CHATMUX_DATA_DIR=/tmp/chatmux-trial bun run start

Each entry in adapters takes platform, a command string, and an args array (plus optional cwd and env):

config.json
{ "platform": "telegram", "command": "python", "args": ["-m", "chatmux_adapter_telegram"] }

For Telegram, follow the setup in chatmux-adapter-telegram β€” it has its own credentials and login flow, and does not involve LINE.

3. First login (QR code)

bash
bun run start
# A QR code will appear in the terminal
# Open LINE on your phone β†’ open the QR scanner β†’ scan
#   iOS:     Home β†’ the scan icon
#   Android: Home β†’ Add friends β†’ QR code
# After successful login, authToken is saved for future auto-login

4. Connect Claude Code

Register the daemon's MCP endpoint with Claude Code:

Terminal
claude mcp add --transport http chatmux http://127.0.0.1:7717/mcp
claude mcp list   # chatmux: ... - βœ” Connected

The daemon listens on two transports at once: a TCP port on 127.0.0.1 (default 7717) for standard MCP clients like Claude Code, and a unix socket for same-host sidecar consumers like chat.nvim. Use the TCP url for Claude Code β€” the MCP spec only defines stdio and streamable HTTP transports, so no MCP client accepts a unix socket path.

Port is configurable via CHATMUX_MCP_PORT, or mcp.port in adapters.json; set it to 0 to disable the TCP listener. See docs/mcp-interface.md.

Architecture

Code
LINE adapter ←── stdio JSON-RPC ──→ core daemon ←── MCP Streamable HTTP ──→ Claude Code
(Node+tsx)        (child process)    (Bun)         (127.0.0.1 TCP / unix)     (MCP client)
                                     β”œβ”€ SafetyRail
                                     β”œβ”€ Storage (JSONL β†’ SQLite/FTS5)
                                     β”œβ”€ Adapter Runner
                                     └─ MCP Server
  • Core daemon (Bun): central process managing storage, safety, and MCP server
  • LINE adapter (Node+tsx): child process connecting to LINE via IOSIPAD slot
  • Storage: JSONL append-only truth source + SQLite/FTS5 queryable view
  • MCP server: Streamable HTTP over TCP (standard MCP clients; loopback by default, settable for containers) + unix socket (same-host sidecars), 8 tools + 4 resources

MCP Tools

ToolDescription
list_chatsList chats with last message preview, search, pagination
read_messagesRead messages from a chat, paginated by timestamp
read_eventsTail the event log from an opaque cursor β€” resumable, survives backfill reordering, and re-delivers a message when it is edited or retracted
search_messagesFull-text search (CJK supported via FTS5 trigram + LIKE fallback)
send_messageSend message through SafetyRail (rate-limited, error-tracked)
get_mediaLocal file path for a message's image or sticker; downloads and caches on first call
probe_latestDiagnostic, read-only: ask the adapter for a chat's newest N messages without landing them
get_statusSystem status: adapter connection + storage stats

MCP Resources

URIDescription
chat://chatsAll chat list
chat://chats/{id}/messagesRecent messages for a chat
chat://chats/{id}/infoChat details with members
chat://statusSystem status

Writing a consumer

Core exposes primitives, not policy. Anything that decides what matters β€” which chats are worth surfacing, where a notification goes, when to stay quiet β€” belongs in a consumer, on the far side of the MCP boundary.

examples/notifier/ is a working reference: it tails the event log with a persisted cursor and hands each message to a hook you fill in. Its mcp-client.ts uses raw fetch rather than the TypeScript SDK, so it doubles as a wire-protocol reference for consumers in any language.

systemd Service

bash
cp config/chatmux.service ~/.config/systemd/user/
systemctl --user daemon-reload
systemctl --user enable --now chatmux

Edit WorkingDirectory to point at your clone before copying it.

How it comes back

The unit ships Restart=always, not on-failure. A chat backend is supposed to be there all day, and there are three ways it can stop being there β€” it crashes, something sends it a signal, or it exits cleanly β€” of which on-failure only recovers from the first. systemctl --user stop still stops it: a stop you asked for is not a failure, under either setting.

⚠️ If you are on an older unit with Restart=on-failure, kill -TERM will not bring it back β€” and that is not a missing restart policy. systemd counts SIGTERM, SIGHUP, SIGINT and SIGPIPE as an intended stop, so on-failure leaves the service sitting in inactive after any of them. Only kill -9 (SIGKILL) counts as a failure there.

With the Restart=always this unit now ships, TERM comes back too β€” measured 2026-08-02: kill -TERM $MainPID moved NRestarts 1 β†’ 2 and produced a new MainPID within the 10s RestartSec. That makes TERM the useful test: kill -9 restarts under either setting, so it cannot tell you which one is in effect. If you want to confirm always is live, send TERM and watch systemctl --user show chatmux -p MainPID,NRestarts change.

StartLimitIntervalSec=300 / StartLimitBurst=5 cap a crash loop: five starts inside five minutes and systemd stops trying, leaving the unit failed for you to look at rather than restarting into the same wall forever. Clear it with systemctl --user reset-failed chatmux.

Containers

A systemd user service is the intended way to run chatmux. If you want it in a container instead, deploy/container/ is a reference that builds and answers β€” not an official image, and it runs zero adapters, because adapters hold logged-in sessions and a container you rebuild is the wrong home for those.

The one thing you cannot skip is CHATMUX_MCP_HOST. The daemon binds 127.0.0.1 by default, which inside a container is the container's own loopback β€” a published port then maps to a socket nobody is listening on, and every connection is refused while the logs look perfectly healthy. Read deploy/container/README.md before assuming your port mapping is broken.

Development

bash
bun run dev     # Start with --watch (auto-reload)
bun test        # Run all tests
bun run start   # Start daemon

See docs/ for detailed architecture and protocol documentation.

Limitations

Known and accepted, with what would make each worth revisiting.

Read the full README β†’View source on GitHub β†’

Related MCP Servers

View all in Communication View all alternatives
  • Agentmailkit logoAgentmailkit

    Local-first scheduled LLM email digests that read your own data and never leave your machine.

    πŸ’¬ Communication0 views
    Compare vs Agentmailkit β†’
  • Line Bot MCP Server logoLine Bot MCP Server
    Verified

    MCP Server for Integrating LINE Official Account

    πŸ’¬ Communication3 views
    Compare vs Line Bot MCP Server β†’
  • Slack MCP Server logoSlack MCP Server

    The most powerful MCP server for Slack Workspaces.

    πŸ’¬ Communication1 views
    Compare vs Slack MCP Server β†’
  • Abnormal Security MCP logoAbnormal Security MCP

    Abnormal Security email threats, cases, and reporting in your terminal and your AI agents.

    πŸ’¬ Communication0 views
    Compare vs Abnormal Security MCP β†’

Reviews

No reviews yet β€” be the first to share how this listing worked for you.

Frequently Asked Questions about Chatmux

Add the following block to your claude_desktop_config.json under mcpServers: "mcpServers": { "chatmux": { "command": "npx", "args": ["-y", "chatmux"] } }

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewChatmux AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/chatmux?style=directory)](https://allmcps.com/mcp/chatmux)
HTML Embed
<a href="https://allmcps.com/mcp/chatmux"><img src="https://allmcps.com/api/badge/chatmux?style=directory" alt="Chatmux on AllMCPs" /></a>

Technical Specs & Signals

CategoryπŸ’¬Communication
More technical detailsExpand β–Ύ
TransportSTDIO
RuntimeNode.js
Last updatedSep 7, 2026
Views0
Unique ViewsTotal visits recorded for this listing page on AllMCPs.
Installs0
Installs & Copy ActionsTotal times users copied install commands or configuration snippets for this server.
GitHub stars1
GitHub Star CountTotal stargazers on GitHub representing community popularity (1 stars).
29Quality signal: Emerging Β· 29/100How this signal is calculated β–Ύ
Server availabilityNot measured

Not scored for repo-hosted servers β€” we can't reach the running server, only its GitHub page. Hosted MCP endpoints are health-checked live.

Verified ownership10/20
Documentation & tools11/30
Adoption & activity1/15
Community engagement0/10

A guidance signal from public completeness & health data β€” not a user rating. New listings start lower and rise as they add docs, get verified, and grow adoption. Signals we can't observe for a listing are skipped, not counted against it.

β˜… Spotlight Slot

Feature Your MCP Server

Get maximum visibility for your server across our directory, search results, and detail pages.

Spotlight Your Server

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to unlock edit access and the Official badge β€” proof is checked automatically, then reviewed by our team.

Free dofollow backlink: add your website and place the AllMCPs badge on it β€” no claim needed. We detect it automatically and keep it verified as long as the badge stays live.

Claim & get free dofollow

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.

Explore more

More in πŸ’¬ Communication β†’Best MCP servers for Slack & Communication β†’Alternatives to Chatmux β†’Install in Claude DesktopInstall in CursorInstall in VS Code