streamfind¶
streamfind is a DuckDB-backed framework for analytical data processing. It provides native C++ and Rust backends, mass-spectrometry data access, a shared semantic catalogue, and MCP servers for applications and AI agents.
Start here¶
- Download the current native packages.
- Use the C++ MCP server.
- Use the Rust MCP server.
- Check supported interfaces and limitations.
- Use the existing R package.
Version 0.2.0
The native C++ and Rust project version is now 0.2.0. The latest
downloadable archives are currently the v0.1.0 Windows and Linux preview
packages; the Releases page will be updated when the v0.2.0
archives are published. Cross-version API and ABI stability is not yet
guaranteed.
Interfaces¶
| Interface | Provides | Availability |
|---|---|---|
| C++ core | Native project API, mass-spectrometry operations, and MCP server | Available as a native package |
| Rust backend | Native project API, CLI, mass-spectrometry operations, and MCP server | Available as a native package |
| MCP | JSON-RPC over stdio for applications and AI agents | Available through both native backends |
| R package | Existing R workflows, non-target screening, and Shiny application | Preserved and functional |
| Python package | Public Python API | Not released |
| Cogniflow integration | Cogniflow adapter | Separate future integration path |
MCP at a glance¶
The C++ and Rust MCP servers expose the same catalogue-backed interface.
- Call
initializeto receive the server capabilities and usage guidance. - Call
tools/listto discover callable Operations. - Use
create, thendescribe,get_domain, orget_metadatafor a new project. - Use domain Operations with explicit
database_pathandproject_id. - Use
connectonly when running workflow Methods. - Call
get_available_methodsto discover workflow Methods and their schemas. - Build and validate a workflow, then run it with
run_workfloworrun_method.
Operations are stateless. Workflow Methods are session-bound and are not advertised as MCP tools. See the MCP quickstarts for request examples.
Shared contract¶
The semantic catalogue defines operation names, parameters, nested input schemas, results, units, constraints, and agent-facing guidance. C++ and Rust implement the contract independently but expose the same public concepts.
The architecture page explains the relationship between the catalogue, native APIs, and MCP.