Skip to main content

MCP server for Matrix — interact with Matrix homeservers via Model Context Protocol

Project description

mcp-server-matrix

README на русском

A Model Context Protocol (MCP) server for Matrix — the open, decentralized communication protocol.

Built on matrix-nio, this server lets any MCP-compatible AI assistant (Claude, OpenClaw, etc.) send and read messages, manage rooms, and interact with any Matrix homeserver (Synapse, Dendrite, Conduit).

Features

Tool Description
send_message Send a message (text, HTML, or Markdown) with optional reply
read_messages Read recent messages (with pagination)
get_messages_by_date Get messages filtered by date range
list_rooms List all joined rooms
get_room_info Room details — name, topic, members, encryption status
get_room_members List joined members with display names and avatars
get_notification_counts Unread and mention counts per room
get_direct_messages List DM conversations with unread status
send_direct_message Send a DM (auto-creates room if needed)
get_user_profile User profile — display name, avatar
join_room Join a room by ID or alias
leave_room Leave a room
create_room Create a new room (with optional invites)
invite_user Invite a user to a room
send_reaction React to a message with an emoji
resolve_alias Resolve #alias:server to a room ID

Installation

pip install mcp-server-matrix

Or with uv:

uvx mcp-server-matrix

Configuration

Set environment variables:

Variable Required Description
MATRIX_HOMESERVER Yes Homeserver URL (e.g. https://matrix.org)
MATRIX_USER Yes Full user ID (e.g. @bot:matrix.org)
MATRIX_PASSWORD Yes* Account password
MATRIX_ACCESS_TOKEN Yes* Access token (alternative to password)
MATRIX_STORE_PATH No Path for nio session store (default: ~/.mcp-server-matrix/nio_store/)
MCP_LOG_LEVEL No Log level: DEBUG, INFO, WARNING, ERROR (default: INFO)

* Provide either MATRIX_PASSWORD or MATRIX_ACCESS_TOKEN.

Usage

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "matrix": {
      "command": "mcp-server-matrix",
      "env": {
        "MATRIX_HOMESERVER": "https://matrix.example.com",
        "MATRIX_USER": "@bot:example.com",
        "MATRIX_PASSWORD": "your-password"
      }
    }
  }
}

Claude Code

{
  "mcpServers": {
    "matrix": {
      "command": "mcp-server-matrix",
      "env": {
        "MATRIX_HOMESERVER": "https://matrix.example.com",
        "MATRIX_USER": "@bot:example.com",
        "MATRIX_ACCESS_TOKEN": "syt_..."
      }
    }
  }
}

OpenClaw

Add to openclaw.json:

{
  "mcp": {
    "servers": {
      "matrix": {
        "command": "mcp-server-matrix",
        "env": {
          "MATRIX_HOMESERVER": "https://matrix.example.com",
          "MATRIX_USER": "@bot:example.com",
          "MATRIX_PASSWORD": "your-password"
        }
      }
    }
  }
}

Direct (stdio)

export MATRIX_HOMESERVER=https://matrix.example.com
export MATRIX_USER=@bot:example.com
export MATRIX_PASSWORD=your-password

mcp-server-matrix

Examples

Once connected, your AI assistant can:

  • Read messages: "What are the latest messages in #general?"
  • Send messages: "Send 'Hello everyone!' to #announcements"
  • Manage rooms: "Create a room called 'Project X' and invite @alice:matrix.org"
  • Get info: "How many members are in #team-chat?"

Supported Homeservers

Tested with:

  • Synapse (reference implementation)
  • Should work with any spec-compliant homeserver (Dendrite, Conduit, etc.)

Requirements

  • Python 3.10+
  • A Matrix account on any homeserver
  • Network access to the homeserver

License

MIT

Links

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcp_server_matrix-0.2.0.tar.gz (12.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mcp_server_matrix-0.2.0-py3-none-any.whl (11.5 kB view details)

Uploaded Python 3

File details

Details for the file mcp_server_matrix-0.2.0.tar.gz.

File metadata

  • Download URL: mcp_server_matrix-0.2.0.tar.gz
  • Upload date:
  • Size: 12.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.11

File hashes

Hashes for mcp_server_matrix-0.2.0.tar.gz
Algorithm Hash digest
SHA256 2b687990d755775116cb062901f813eac83a723d5cee0f039ef526a0d55163c7
MD5 72bc779f832cbc62da3b64e15b327e36
BLAKE2b-256 044952cac178dedbc15317ab02d8d61b46de9ec83f4dbcf7e16e78785ec7c6e9

See more details on using hashes here.

File details

Details for the file mcp_server_matrix-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for mcp_server_matrix-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d852a08aa9ce6e4714fd388439c0ddea16a1ba17cc16132eb028aae6225b7cdb
MD5 0fe709772d7921704b0cc5bc0ec1733f
BLAKE2b-256 41bfb59ad595c99a02d2f234eba35e18f353ae31b65d2dfae3d69fbe1513e171

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page