Чтобы IDE делало автоматические контекстные подсказки при написании кода, нужно писать код с докстрингами, указывать типы аргументов, не злоупотреблять "магией" с геттерами, сеттерами, метаклассами, декораторами, замыканиями и прочей эквилибристикой с кодом. Чем проще и каноничнее код, тем проще IDE его анализировать.
А если вы интересуетесь как реалиовать эту функцию IDE амостоятельно, то по построению и содержанию вопроса могу заключить, что развернутый ответ вам не пригодится, ибо акими вопросами задаваться еще рано. Нужно подучиться.