My son was a HS '19. He sent out some emails to HA D1 coaches in January, some of them had contacted him the previous fall. I would say it got him nothing except for form emails and camp invites. He sent emails to D1 and D3 schools at the end of May, that time listing where his summer team would be playing. Most of the D3s said they wouldn't be at those tournaments, but would be at Headfirst and would hold camps. One D1 followed him at summer tournaments, and that led to some recommendations. He went to one D3 school camp in July. Then he got a lot of interest from Headfirst in early August.
There are D3 schools where admissions are extremely selective, where a "tip" or "slot" from a coach almost guarantees admission. These are highly sought after, and the coaches don't need to make decisions until August or later. They can wait until Ivies and other D1 decisions are done (maybe it's happening earlier now, I don't know).
There are other excellent D3 schools for which admission isn't so selective. They recruit into the fall, and even later - D3 teams have no roster limits, so they can take as many players as they want.
The point is, depending on what schools you are targeting, you can contact them now, but they are still likely to wait to see what they have in August.
Also, it depends on what you are telling them. If you say "my son's FB tops at 92 and he really really wants to go to your D3 school" I would expect you would get a personal response right now, or in season, or whenever. If you say "my son's FB tops at 83 and he really really likes your school," less so.
The other point is, depending on your son's skills, you can do this yourself, or you can pay someone to do it. I'm rather glad that I didn't know that paying an agent was an option.