/tm redirects to /teammsg in the command tree; both run the same command.
/teammsg only works while you are on a scoreboard team. An operator creates one with /team add and adds players with /team join. Build those commands with the Team Command Generator.
Alex stands in for your username and Red Team for your team's display name, shown in the team's color when one is set. Players outside the team see nothing.
Every player can run /teammsg, no OP needed, but you must be on a scoreboard team first. /tm sends the identical team message.
/teammsg sends a chat message that only the players on your scoreboard team can read. Type /teammsg followed by your message, or use the shorter /tm alias. Any player can run it without OP, but it fails unless you are on a team.
Unlike /msg, the command takes no target argument. It always delivers to the team of whoever runs it: you see -> [Team] <You> message and every teammate sees [Team] <You> message, with the team name shown in the team's color. Players outside the team see nothing in chat, which makes /teammsg the vanilla way to call plays in UHC, capture the flag and bed wars style minigames, or to coordinate privately on a survival server without plugins.
The command was added in Java Edition 1.14 alongside the modern /team command, and it is Java only: Bedrock Edition has no scoreboard teams in chat and no /teammsg. Permission level is 0, so everyone on a team can use it; the only part of team chat that needs an operator is creating the team in the first place.
The full syntax is /teammsg <message>, and /tm takes the same single argument:
Two practical limits apply. Chat input holds at most 256 characters including the command itself, so longer announcements need a command block with /execute as. And the message is plain text only: there is no color or formatting in /teammsg. If you want styled text for one team, send /tellraw to the selector @a[team=yourteam] instead.
Ready-to-use team messages. Copy any of them and adjust the text:
Every online player on your team gets the line; nobody else sees it. No OP needed.
/tm is the short alias of /teammsg; the result is identical and faster to type mid-game.
At permission level 2 the @p expands to the nearest player's name before the message is sent. Regular players see the literal @p.
A command block is not on a team, so it borrows a red player as the executor; the whole red team gets the message.
Team chat is just chat: anything after /tm goes out as plain text to your teammates.
/teammsg needs a scoreboard team to exist before it does anything. The setup takes an operator about thirty seconds:
1. Create the team: /team add red. The name is the internal id; add a display name in quotes after it if you want a prettier one in chat.
2. Put players on it: /team join red @s for yourself, or /team join red Steve Alex to add others by name.
3. Optionally color it: /team modify red color red sets the color the team name and member names show in.
4. Chat away: every member can now run /teammsg or /tm with no OP, and the message reaches the whole team privately.
Pick the right chat command for the job: /teammsg reaches your whole team at once, /msg whispers to specific players you name, and /say broadcasts to the entire server at permission level 2. All the team setup commands in the steps above can be generated with our Team Command Generator linked below.
Join a scoreboard team, then open chat with T and type /teammsg followed by your message, for example /teammsg rally at the base. Every online player on your team sees it and nobody else does. /tm is a shorter alias that does exactly the same thing. There is no toggle that locks all your chat to the team; you send each team message with the command.
Nothing. /tm is an alias that redirects to /teammsg in the game's command tree, so both parse the same message argument and send the identical team message. /tm exists purely to save typing in the middle of a fight.
That error means the player or entity running the command is not on any scoreboard team. /teammsg has no target argument; it always sends to the executor's own team, so without one there is nowhere for the message to go. Have an operator run /team add followed by /team join to put you on a team, then the command works.
No. /teammsg has permission level 0, so any player can use it as long as they are on a team. Creating teams is the part that needs OP: /team add and /team join require permission level 2. The other exception is embedding target selectors like @p inside the message text, which also needs level 2.
Run /team add teamname to create the team, then /team join teamname @s to join it yourself or /team join teamname PlayerName to add someone else. Both commands need operator permission. Once players are on the team, /teammsg works for all of them without OP, and /team modify teamname color sets the color their team name shows in.
Not by itself. A command block is not an entity and is never on a team, so a bare /teammsg in it fails. Wrap it in /execute as a player or entity that is on a team, for example /execute as @a[team=red,limit=1] run teammsg The vault is open. The message then goes to that executor's team.
Need to create the team first? Or browse more Minecraft tools: