Selected project experience
AI Research Workspace
AI tools for research and analysis.
- Scope
- AI integration and application development
- Service
- AI systems & integrations
- Next step
- Discuss similar work

From a question to a research workflow
Research tasks rarely end with a single answer. An analyst needs to request information, follow the progress of external searches and work with the material that comes back. The application has to connect those steps without hiding where the information originated.
This case brings together work across Lens, Labrador and related AI integrations. It is a composite account of engineering experience, rather than a claim that the illustrated workspace was shipped as one product.
Connecting the interface to the tools
In Lens, the conversational interface can invoke an investigation tool. The tool submits a request to the search service, receives a job identifier and follows the job until a result or a terminal failure is available. The interface and the service have distinct responsibilities: one supports the interaction, while the other coordinates the search.
MCP connections provide another route to external capabilities. Keeping these integrations behind explicit interfaces makes the tool request and its returned data separate from the surrounding conversation.
Making long-running work understandable
External searches do not all finish at once. Pending, in-progress, completed and failed states need to survive the journey from the service to the interface. A successful HTTP response alone cannot establish that the requested research has completed.
The workflow diagram shows how a request becomes a background job and then a structured result. Its example labels describe the interaction; they do not represent real subjects or live research.

Engineering the handoff
The integration work includes typed request and result contracts, asynchronous job polling and handling tool responses. Structured dossier data and raw integration results remain separate, so presentation does not have to depend on the wording of a generated answer.
Failure handling matters at this boundary. A cancelled or failed section needs to leave the pending state, and an incomplete response should not be presented as a finished dossier.
What this work demonstrates
The resulting experience spans AI interfaces, service integration and background processing. It shows how these parts can support a research workflow, with the user-facing result grounded in the data returned by the tools. The wireframes communicate the system design without exposing operational records.

