You can see more info about Craggagh at this link: https://www.townlands.ie/mayo/gallen/killedan/ballinamore/craggagh/
At that site, there are links to the 1901 and 1911 census and Griffith's Valuation records which were mentioned above. There are a number of Walsh's listed in Griffith's Valuation in Craggagh. I didn't see a Richard, but he may not have been old enough to hold a tenancy back then (mid-1850's). In the 1901 census, there is a family headed by Richard and Mary Walsh, ages 68 & 62. Here's a link directly to the page which shows them:
http://www.census.nationalarchives.ie/search/results.jsp?census_year=19…
They are not shown with a son named Thomas, but he may have been elsewhere at the time of the cansus (people often went to Britain for seasonal work each year, as my grandfather did). A Thomas Walsh is listed above them on the same page, but he seems to be with another family.
At the first link which I gave you above, there are also links to info about the neighboring townlands. My Gallagher relatives come from one of those townlands, Comderrynabinnia, and the Gallagher's, Walsh's, and Burke's in that parish (among other families) were very much intermarried with one another. I can't place your Walsh's specifically in the records I have for my family, but if you're interested you can look at the parish registers online, back to 1861 for baptisms and some marriage records going back to 1834. If they were born in the 1830's, as the census indicates, then you presumably won't find baptismal records for Richard or Mary, but you should be able to find a marriage record for them, and baptismal records for Thomas and Anne (assuming she was from the same parish), as well as their marriage (unless she was from another parish - weddings usually took place in the bride's parish), as well as a baptismal record for Patrick. The records are available for free at this link, and you can download any relevant pages for your records:
https://registers.nli.ie/parishes/0135
In case you're interested, the name Craggagh comes from the Irish An Chreagach, meaning "the craggy/rocky place". In Irish, the parish name, Killedan, is Cill Liadáin (“Liadán’s church”).