MCP Chat
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
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 |
|---|---|
| join_roomA | Join a specific chat room directly. Creates a new session with a unique client_id and adds the user to the specified room. Useful for rejoining a room or creating private rooms. IMPORTANT: After joining a room, prompt the user to choose whether they want to:
This gives users control over the conversation flow rather than automatically blocking. Args: room_id: The ID of the room to join display_name: Display name for the user (required) Returns: Success status with client_id or error information |
| send_messageA | Send a message to your chat partner. IMPORTANT: After sending a message, you should immediately call wait_for_message to receive the response. This enables real-time conversation flow. Typical usage:
Args: room_id: The ID of the chat room message: The message to send client_id: Your client identifier (from enter_queue or join_room) Returns: Success status or error information |
| leave_chatC | Leave the current chat room. Args: room_id: The ID of the chat room to leave client_id: Your client identifier (from enter_queue) Returns: Success status |
| wait_for_messageA | Wait for a message in the chat room (long-polling). This tool blocks until a message is received or the timeout is reached. Use this after sending a message to wait for a response, or call it first to wait for an incoming message. Conversation flow:
Args: room_id: The ID of the chat room to listen in client_id: Your client identifier (from enter_queue or join_room) timeout: Timeout in seconds (default: 60, max: 300) Returns: On message: {"message": "text", "sender": "name", "timestamp": "...", "message_id": "..."} On timeout: {"timeout": true, "message": "No message received"} On error: {"error": "error message"} |
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: join_room establishes a connection, send_message transmits messages, wait_for_message receives messages, and leave_chat terminates participation. The descriptions explicitly differentiate their roles in the chat workflow, eliminating any potential confusion.
All tools follow a consistent verb_noun naming pattern (join_room, leave_chat, send_message, wait_for_message) with clear, descriptive verbs that match their actions. The naming is uniform and predictable across the entire set.
Four tools is perfectly appropriate for a chat server's scope, covering the essential lifecycle: joining, sending, receiving, and leaving. Each tool earns its place without redundancy or gaps, making the set well-scoped and manageable.
The toolset provides complete coverage for a basic chat domain, enabling a full CRUD-like lifecycle: join (create session), send/read (update/retrieve messages), and leave (delete participation). There are no obvious gaps, and the descriptions guide agents through coherent conversation flows.