> ## Documentation Index
> Fetch the complete documentation index at: https://docs.krithiv.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Murder Mystery Bot

> A self-hostable Discord social deduction game, with links to the invite, source, and the rest of this guide.

Murder Mystery Bot is a self-hostable Discord game of social deduction. One player is the murderer. Everyone else has to find and execute them before the murderer kills the town.

One bot process can run many games in many servers at the same time. Server data stays on the machine that runs the bot, in SQLite.

## Invite and source

Guild invite for the published application:

[Add Murder Mystery Bot](https://discord.com/oauth2/authorize?client_id=1452886075621249024\&permissions=137439332416\&integration_type=0\&scope=applications.commands+bot)

`client_id` is the Discord application id. The scope includes `applications.commands`. In the developer portal, enable the **Message Content** and **Server Members** intents before you invite the bot.

<Columns cols={2}>
  <Card title="Support server" icon="discord" href="https://discord.gg/kriti">
    Questions about the bot go to the support Discord.
  </Card>

  <Card title="Bot repository" icon="github" href="https://github.com/Krithiv-7/Murder-Mystery-Bot-main">
    Public source for this bot, on the Krithiv-7 account.
  </Card>

  <Card title="More projects" icon="github" href="https://github.com/justkrithiv">
    Further work is on the justkrithiv GitHub account.
  </Card>

  <Card title="Playing and setup" icon="play" href="/projects/murder-mystery/playing-setup">
    Join a lobby, or clone the bot and run it yourself.
  </Card>
</Columns>

If you self-host, replace the application id in that invite. The steps are on [Playing and setup](/projects/murder-mystery/playing-setup).

## What the bot does

* Lobbies, day and night rounds, voting, and win conditions
* Roles including murderer, doctor, detective, banker, thief, jailer, broadcaster, fool, hunter, werewolf, cupid, mayor, bodyguard, and medium
* Prefix commands (`!join`) and slash commands (`/join`) that share the same game rules
* An admin settings panel for timers, disabled commands, the prefix, and live games
* Wildcard permissions such as `admin.*` and `member.join`

A game starts in a lobby. Codes look like `MM-7F2A`. During the day, the town votes. Executing the murderer wins the game for the town. At night, role actions and the shop happen in DMs. Public status stays in the server’s setup channel, or in the channel where the lobby was created. The bot does not create a channel, category, role, or voice channel for a game.

`!help` and `/help` show Murder Mystery Bot v2.0.0 plus the command catalog.

## Guide

<Columns cols={2}>
  <Card title="Roles" icon="users" href="/projects/murder-mystery/roles">
    Roles that are always seated, and roles that need more players.
  </Card>

  <Card title="Items" icon="shopping-bag" href="/projects/murder-mystery/items">
    Night shop items, gold costs, and how you use them.
  </Card>

  <Card title="Commands" icon="terminal" href="/projects/murder-mystery/commands">
    Prefix and slash commands for players, admins, and debug.
  </Card>

  <Card title="Settings" icon="settings" href="/projects/murder-mystery/settings">
    Player limits, timers, the prefix, and where status is posted.
  </Card>
</Columns>

The same role list is available in Discord with `!wiki` and `/wiki`.

## Bot privacy and terms

The bot has its own privacy notice and terms, dated September 29, 2026 in the project source. They apply to Murder Mystery Bot. They are separate from the docs site [Privacy Policy](/public/privacy-policy) and [Terms of Use](/public/terms-of-use).

From that notice:

* The bot processes Discord server ids and user ids so settings and statistics stay with the right person and server.
* Gold is not saved between games. XP, level, objectives, win statistics, permissions, and server settings are saved.
* Prefix commands and night replies are read so the game can respond. That text is not stored as a chat log.
* The default store is `data/bot.sqlite`. A live lobby stays in memory and is discarded when the game ends or the process stops.
* If you self-host, you are the operator of that instance. Publish a notice that fits your deployment.
* Report a bot issue on the [support server](https://discord.gg/kriti) or in the [repository](https://github.com/Krithiv-7/Murder-Mystery-Bot-main). Leave the bot token out of the report.

<Columns cols={2}>
  <Card title="Bot privacy" icon="shield" href="/projects/murder-mystery/privacy">
    What the bot processes, where it is stored, and how to ask for a deletion.
  </Card>

  <Card title="Bot terms" icon="file-contract" href="/projects/murder-mystery/terms">
    Acceptable use, the guild invite, and the license for the source.
  </Card>
</Columns>

Source code is under the MIT License. See [LICENSE](https://github.com/Krithiv-7/Murder-Mystery-Bot-main/blob/master/LICENSE) in the repository. The project also has a [Code of Conduct](https://github.com/Krithiv-7/Murder-Mystery-Bot-main/blob/master/CODE_OF_CONDUCT.md).


## Related topics

- [Project overview](/public/overview/projects.md)
- [Murder Mystery Bot terms](/projects/murder-mystery/terms.md)
- [Murder Mystery Bot privacy](/projects/murder-mystery/privacy.md)
- [Roles](/projects/murder-mystery/roles.md)
- [Items](/projects/murder-mystery/items.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.