When the agents are competitive, the protocol ends up in a marketplace organization, very similar to auctions.
In order to solve this problem, the contractor can answer a call for proposals even if they are already working for another contract.
This trick can be used to prevent a situation where the manager makes call for proposals without getting any answer because the contractors are all busy.
Beyond extensions proposed by the author, several works have extended the Contract Net Protocol.
In the case where each contractor can make a range of proposals, this can lead to suboptimal solutions.
In the case where the agent is selfish, they therefore may have an incentive to make as many proposals as they can, and only fulfill the most profitable ones.
In a collaborative context, the agent has no way to know if opting out from a task in order to commit to another one is good for the overall system.
An extension of the protocol has been released in 1995 by Tuomas Sandholm and Victor Lesser in order to take these elements into account and define beforehand a commitment cost for the contractor to pay if they cannot accomplish the task.