Mr Mackay said investment in health and education would be prioritised along with measures to help “mitigate against UK austerity” and the impact of Brexit.
But the finance secretary is likely to ignore calls to bring the higher rate of income tax into line with the rest of the UK.
Devolution over powers of income tax last year led to the introduction of a new 41p higher rate for those earning more than £43,431.
In October’s Budget, Chancellor Philip Hammond raised the threshold for the 40p higher rate in the rest of the UK to £50,000.
Speaking ahead of presenting his third budget to Parliament, Mr Mackay said: “The programme for government sets out our vision to build on the progress of the last decade and the budget I present to the people of Scotland will help realise those ambitions and ensure we remain focused on delivering for the needs of today while investing for tomorrow.
“The 2019-20 budget will set out how we will prepare the country for the future. Our spending plans for the year ahead will include long-term strategic investments that allow us to protect our essential public services, boost our economy and deliver on our commitments to the people of Scotland.”
Mr Mackay said his budget was set against a backdrop of UK austerity, which was having “devastating impacts” on the most vulnerable.
He added: “This is also a budget presented under the shadow of the UK government’s chaotic approach to Brexit, which hangs over our economy, our public services and risks making us all poorer in the future.”
But Murdo Fraser, Scottish Conservative shadow finance secretary, said the SNP’s reliance on support from the Scottish Greens would mean higher taxes.
He said: “My message today to Derek Mackay is to back blue, not Green. Rule out a second referendum on independence, address the widening gap between tax rates in Scotland and the rest of the UK – and let’s talk.
“Thanks to decisions made by the Conservative UK Budget, he has an extra £950m in his back pocket to spend. There is no need to keep driving up taxes.”
Labour called for a range of measures to tackle poverty, including a £5 per week increase in child benefit, an end to the two-child cap on tax credits and a £10m cash injection into discretionary housing payments to tackle the roll-out of the UK government’s Universal Credit system.
Scottish Labour finance spokesman James Kelly said: “Our communities are being held back by Tory austerity and inaction from the SNP, who are failing the people of Scotland. The time for tinkering at the edges is over.”