In short: An MPChat bot is an MPChat account controlled by your backend through the Bot API. It can send messages into existing conversations, receive user and group events, and open MiniApps — but it cannot start a conversation from nothing, and a subset of Telegram-style methods are not available yet.
Overview
This page gives you the mental model before you write any code. A bot uses a secret bot token to call the Bot API on a single predictable path shape:
https://call.mp.net/bot/bot{MPCHAT_BOT_TOKEN}/{methodName}
The real token only ever appears in the bot{token} path segment, never in headers, frontend code, logs, or screenshots.
What a bot can do
Send text and media messages into conversations the bot already has context for.
Receive incoming user/group events (Updates) by polling or webhook.
Read chat and member metadata, manage messages (edit/pin/forward/copy/recall), and manage its command menu.
Open a MiniApp from a message button and let your backend verify the signed user identity.
Data flow
Every integration is the same two-way loop:
Inbound: user message → Update → your
getUpdatesloop or webhook handler.Outbound: parse
chat_id→sendMessagewithreply_markup(inline buttons:url/web_app/callback_data/copy_text; or a Reply Keyboard). Optionally set the left-side menu viasetChatMenuButton.
What is supported
The Bot API covers Core, Message, Management, Group, Bot Commands, Bot Profile, Bot Menu, Webhook, and User. Endpoint counts change with the platform — use the official methods reference as the source of truth; this help center covers the core integration path and a scannable method matrix.
What is NOT supported yet
Bots cannot start conversations. A user or chat must establish context first, then the bot can reply.
Some methods return HTTP 501 (currently
sendChatAction,sendLocation,sendPoll).file_id reuse is not supported — send media via a public URL or multipart upload.
MiniApp client return flows are limited (
web_app_data/sendData/answerWebAppQueryare not available). Message-button callbacks (callback_query→answerCallbackQuery) are a separate, supported path.
Where to go next
Non-developers: try a bot in 10 minutes on Windows or iOS (see "Try a bot in 10 minutes").
Developers: jump to the curl + Node.js quickstart.
Then read Integration Basics (concepts, auth, errors, polling vs webhook).
Related
The supported method set and MP differences may change. The parameter-level source of truth is always core.mp.net/bots.
