Element MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PORT | No | Port for HTTP mode | 3000 |
| TRANSPORT | No | Transport type: 'stdio' or 'http' | stdio |
| MATRIX_HOMESERVER | No | Your Matrix homeserver URL | https://matrix.org |
| MATRIX_ACCESS_TOKEN | Yes | Your Matrix access token (REQUIRED). Get it from Element Settings > Help & About > Access Token |
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
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| matrix_list_roomsA | List all Matrix rooms that the user has joined. Returns room IDs, names, and basic information about each room. Use this to discover which rooms are available before fetching messages. Returns:
|
| matrix_get_messagesA | Retrieve messages from a specific Matrix room. Use matrix_list_rooms first to get available room IDs. Args:
Returns:
|
| matrix_search_messagesA | Search for messages across Matrix rooms. Search for specific content within messages. Can search all rooms or a specific room. Args:
Returns:
|
| matrix_get_room_infoB | Get detailed information about a specific Matrix room. Returns room name, topic, members, and other state information. Args:
Returns:
|
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 4 tools
Each tool has a clearly distinct purpose with no overlap: list_rooms discovers available rooms, get_room_info provides room metadata, get_messages retrieves message history, and search_messages performs content searches. The descriptions clearly differentiate these functions, making tool selection unambiguous for an agent.
All tools follow a perfect 'matrix_verb_noun' pattern with consistent snake_case throughout: matrix_list_rooms, matrix_get_room_info, matrix_get_messages, and matrix_search_messages. This predictable naming convention makes the tool set highly readable and organized.
Four tools is reasonable for a Matrix server, covering core room discovery, metadata retrieval, message reading, and search functionality. However, the absence of write operations (like sending messages or creating rooms) makes the count feel slightly lean for a complete Matrix integration, though still well-scoped for read-only use cases.
The tool set provides excellent read-only coverage for rooms and messages, but lacks any write capabilities (e.g., send_message, create_room, join_room) or room management operations (e.g., leave_room, update_room_info). This creates notable gaps that could limit agent workflows, though the existing tools form a coherent read-only surface.