If you want to stick with BibTeX/natbib, you could proceed as follows. (The proposed solution may seem a bit kludgy at first, but I can't think of a better method if you want to use BibTeX/natbib. I suppose one could try to hack natbib or some particular style file, but I suspect that would be even more work.
Add each author's role as an additional "first name" in the author
field. E.g., instead of
author = "Joel Scherzer",
you'd write
author = "Sherzer, Joel {\relax (Researcher)}",
In a sense, (Researcher)
-- including the parentheses -- becomes an additional (though fake) first name. The purpose of encasing (Researcher)
in a {\relax ... }
wrapper is to prevent BibTeX from ever abbreviating this particular first name down to its first initial. Some bibliography styles don't abbreviate first names, whereas others do. The point of using \relax
is to make sure that the roles will never get abbreviated, regardless of the bibliography style's abbreviation settings.
There is one wrinkle that needs to be taken care of: The construction proposed in the preceding bullet point assumes that the author has both a first name and a surname. In case an author only has a single name (e.g., "Olowiktinappi"), you should proceed as follows:
Enter the author in question as {Olowiktinappi {\relax (Speaker, Translator)}
, say. Note (i) the absence of a comma between the "real" name and the {\relax ...}
part and (ii) the curly braces placed around the entire name, including the fake first name. The curly braces inform BibTeX to treat this author as a so-called "corporate" author. (BibTeX doesn't try to parse the components of a corporate author.)
For each such entry, (i) set up a \defcitealias
instruction (see below for a specific example) to provide a citation callout that does not include the role and (ii) cite that entry with \citetalias
instead of \citet
.
The point of taking this approach is to avoid having a spurious comma between the (real) name and the role (the fake first name) in the bibliographic entry.
Use a bibliography style that places surnames before first names. In case you're not already using such a style, I suggest you make a copy of the file plainnat.bst
and call the copy, say, myplainnat.bst
. In myplainnat.bst
, find the line (likely line 222) that says
{ s nameptr "{ff~}{vv~}{ll}{, jj}" format.name$ 't :=
and change it to
{ s nameptr "{vv~}{ll}{, jj}{, ff}" format.name$ 't :=
Incidentally, if you wanted to abbreviate any actual ("real") first names, you'd change the preceding line to
{ s nameptr "{vv~}{ll}{, jj}{, f}" format.name$ 't :=
Save this bibliography style file either to the directory that contains your main tex file or to some directory that's searched by BibTeX. (If you choose the second option, be sure to update the filename database of your TeX distribution.) Use the new bibliography style by issuing the instruction
\bibliographystyle{myplainnat}
After making this change, be sure to run LaTeX, BibTeX, and LaTeX twice more on the tex file to fully propagate all changes.

\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{filecontents}
\begin{filecontents*}{\jobname.bib}
@misc{sherzer:1970,
author = "Sherzer, Joel {\relax (Researcher)} and {Olowiktinappi {\relax (Speaker, Translator)}}",
year = 1970,
title = "Report of a curing specialist",
note = "Joel Sherzer Kuna Collection. Archive of the Indigenous Languages of Latin America: \url{www.ailla.utexas.org}. Media: audio, text. Access: public. Resource ID: CUK001R001",
}
@misc{rasch:1999,
author = "Rasch, Jeffrey {\relax (Researcher)} and Carmona, Cecilia {\relax (Speaker)} and Suárez Martínez, Martín {\relax (Transcriber, Translator)}",
year = 1999,
title = "{The Earthquake}",
note = "Chatino Language Documentation Project Collection. The Archive of the Indigenous Languages of Latin America: \url{www.ailla.utexas.org}. Media: audio, text. Access: public. Resource ID: CTP005R061",
}
\end{filecontents*}
\usepackage[authoryear,round]{natbib}
\defcitealias{sherzer:1970}{Sherzer and Olowiktinappi (1970)}
\usepackage{url}
\bibliographystyle{myplainnat}
\begin{document}
\citetalias{sherzer:1970}
\citet*{rasch:1999}
\bibliography{\jobname}
\end{document}