i think you really get into too much development and design effort when such a simple task can be accomplished by using resources that are already available. wikipedia already exists, and they already have servers to handle the search requests. i still say developing a small application (whether it's some javascript, a new add-on, or something that already exists) to add links to wikipedia entries that have alternate internal wiki entries, since according to the parent question the employees are going to be using wikipedia a lot, anyway. you can make the link apparent so that employees can simply take a quick glance to see whether they need to do any more internal research. you don't have to waste time downloading, restoring, and implementing the wikipedia database internally, and you don't have to waste time updating it, writing scripts to do so automatically, or finding scripts that will.
as to the api approach, i think that would be fun, but it seems like a waste of server power to have a machine dedicated to doing something that could be done on client computers dynamically with a relatively minute bit of javascript, and would be just as functional and ultimately less effort to upkeep. for future changes to the api you may have to alter your entire application, but if wikipedia just changes the html layout all you have to do is modify a regular expression and the rest of the code is still usable.