Jump to:

What is Marabot?

ISL Marabot (pronounced /mæɹəbɑt/) is a portmanteau of ISL Marathon and Robot. The ISL Marathon is a self-paced training process where one solves randomly selected International Mathematical Olympiad (IMO) Shortlist problems, committing to solve whatever problems come up, no matter how intimidating they appear. Marabot automates the marathon process, giving marathoners a few problems from IMO Shortlists since the year 1998 to work on at a time and gradually increasing problem difficulty as marathoners progress.

Practicing with Marabot sharpens marathoners' problem-solving skills, broadens their comfort zones, builds confidence, and can benefit anyone who wants to prepare for national or international math olympiads or improve their problem-solving abilities.

What's New?


Getting Started

Marabot now communicates over Discord. If you don't have Discord set up, you'll need to create a Discord account. Marathoners can do ISL Marathons individually, in groups, or both; ISL Marathons in different channels are independent of each other and each channel has one marathon.

To begin an ISL Marathon, visit Marabot's profile page. If you are a solo user, press the "Send Message" button to begin directly messaging Marabot.

Groups of users who want to marathon together will need to have a Discord server in order to interact with Marabot. The owner of the server can press the "Add to Server" button on Marabot's profile page. This server icon is recommended for marathoning duos. If you want to use the :mbt: emoji, you can download it here and add it to your server.

Commands can be sent in two ways: via a plaintext message or a slash command. To use a plaintext message, you can send Marabot a message prefixed with mbt, marabot, or a mention (@ISL Marabot). In any case, your command should immediately follow. Commands are case insensitive and punctuation at the end of words is ignored. To use a slash command, simply type a forward slash, like /, and the full list of comannds will pop-up.

A list of all Marabot commands is provided below. For the best experience, familiarize yourself with the full list.


In the following command list,

Available commands

hello, hi, or hey

Displays a brief welcome message.

help [COMMAND]

If COMMAND is a complete command, explains its purpose; otherwise, provides possibilities for the next word of the command.


Sends a link to the AoPS contest collection of the IMO shortlist problems from YEAR, which must be a year from 1998 onwards.

mark [my] YEAR PROBLEM

Marks IMO shortlist problem PROBLEM from YEAR as solved.

set [my] SIZE

Changes the size of your active problem set to SIZE, which must be an integer from 3 to 6, inclusive.

show [my] current

Lists problems in your current active set.

show [my] solved

Lists problems you have previously marked as solved.

show [my] stat[istic]s

Displays various statistics about your solved problems.


Provides some general Marabot usage guidance.

undo [my]

Reverts to the previous problem set, i.e., the one prior to the most recent sucessful mark or set command.



Displays welcome message.

mbt help

Gives a list of available commands.


Explains the tips command.

@ISL Marabot show current, please

Displays problems in the channel's working set.

/link year:2008

Provides a link to the AoPS contest collection for the 2008 IMO Shortlist.

Marabot, mark 2008 C1!

Marks 2008 IMO shortlist problem C1 as solved.

Frequently Asked Questions

Why use Discord?

Discord has many functionalities and is a bot-friendly platform. I've used Marabot in combination with text channels, voice channels, DMs, and the TeXit bot.

Can I mark a problem outside of my current problem set?

Focus on solving more problems instead of dwelling over your past solves.

Why can't I mark a problem in my current problem set?

Check that you are using the "my" modifier consistently. If you requested your personal problems with "mbt show my current", your response should begin "mbt mark my". One way to avoid this confusion is to DM Marabot privately instead of messaging Marabot in a server, so that it does not matter whether or not you remember to use the "my" modifier.

Why did my problem disappear even though I did not mark it?

Marabot varies problem numbers, so you can get harder problems in a set even if your average problems are easier. Thus, to avoid hard problems sticking in your set permanently, Marabot replaces an additional random problem from your current set when you mark a problem as solved. If you focus on one problem at a time, other problems disappearing is not a concern and they will return eventually.

Can you make an AIME Marabot?

Since Marabot does not impose time limits, it is unsuitable for short-answer problems. The more effective way to practice AIME is to take past/mock exams in a timed setting.

When is Marabot online?

24 hours a day, 7 days a week.

Privacy Policy

Marabot only tracks the data that is necessary for it to function. When you initiate contact with Marabot, it will start logging which problems you have marked so as to not provide them again. It does not read any message content it does not need to; in particular, it will take no action if your message is not adressed to Marabot.

Contact the Creator

You can contact me if you have any questions or feedback about Marabot. My Discord tag is N3dS3#0001.

Copyright © 2020 Espen Slettnes. All rights reserved.