IVsUIShell.ShowContextMenu, and define your menu items as part of your VSCT. It's quite convoluted if you are used to just working in a WPF tool window, but you can see an example here: https://github.com/tunnelvisionlabs/InheritanceMargin/blob/102eaca2d5a0c3a387711339d16024c77c48b82d/Tvl.VisualStudio.InheritanceMargin/CommandTranslation/CommandRouter.cs#L47