US senators have sharply criticized Pentagon leaders for not completing a new strategy for the 16-year-old war in Afghanistan, as the defense secretary, James Mattis, admitted: “We are not winning in Afghanistan right now.”

John McCain demanded that Mattis wrap up the plan now, threatening: “Unless we get a strategy from you, you’re going to get a strategy from us.” He said he had expected the plan in the first 30 to 60 days of the new administration and snapped: “We want a strategy. I don’t think that’s a hell of a lot to ask.”

Mattis, in response, told the Senate armed services committee that he would provide details on the new strategy for the war in mid-July.

“We’re putting it together now and there are going to be – there are actions being taken to make certain that we don’t pay a price for the delay,” he said. “But we recognize the need for urgency and your criticism is fair, sir.”

Mattis did not say what those steps were.

The US has about 8,400 troops in Afghanistan. Gen John Nicholson, the top US commander in Afghanistan, has told Congress that he could use an infusion of US and allied troops to bolster support for the Afghan army.

Earlier this year, the Pentagon was considering a request for roughly 3,000 more troops, mainly for training and advising. That decision, however, has been stalled by the broader administration review of Afghan policy and a push for Nato to contribute more troops.

Mattis, when pressed again about the plan, said getting a government-wide strategy could not be done quickly, and that there were efforts to ensure Nato participation so that it was “not all on the backs of American taxpayers”.

“We are not winning in Afghanistan right now. And we will correct this as soon as possible,” he said.

The Taliban’s resurgence has been coupled with a growing threat from Islamic State militants trying to establish a foothold in the country. The expanded fight has led to a recent string of American deaths.

Three US soldiers were killed and another wounded on Saturday when they were attacked by an Afghan soldier, who was then killed. And two US army Rangers died in a 27 April raid on an Isis compound in eastern Afghanistan. Officials were investigating whether they were killed by friendly fire in the opening minutes of the three-hour battle. Their deaths came just days after a US army special forces soldier was also killed in the region.

The Afghanistan war has been dragging on since October 2001, and the US-led coalition ended its combat mission against the Taliban in 2014 but is increasingly involved in backing up Afghan forces on the battlefield.

Asked what he hoped the situation in Afghanistan would look like a year from now, Mattis said violence would be down, government corruption would be reduced and the Taliban would be “rolled back”, with less freedom of movement on the battlefield.

Marine Gen Joseph Dunford, chairman of the Joint Chiefs of Staff, added that he hoped Afghan troop casualties would be lower a year from now.

McCain listed the names of the three 101st airborne division soldiers who were killed Saturday and said: “Let’s not ask these families to sacrifice any further without a strategy which we can then take and implement and help you. I’m fighting as hard as I can to increase defense spending. It’s hard when we have no strategy to pursue.”