Repository navigation
Releases
Releases · mims-harvard/ToolUniverse
Release v1.5.10
What's Changed
- The skills and plugin manifests advertise a catalogue a third the size, and the plugin version has never matched the package by @gasvn in #859
- The documentation standard was the source of the stale tool count, and it said 1000+ by @gasvn in #860
- 235 wrapper annotations promised a list or a string that the framework can answer with a dict by @gasvn in #861
- The guide told readers to catch an exception that a tool call never raises by @gasvn in #863
- The bundle told Desktop users an NCBI key covers 34 tools; 35 declare it by @gasvn in #865
- The two shipped skill trees are copies, and nothing checked they were current by @gasvn in #866
- Six wrappers returned a hand-picked part of a record as the record by @gasvn in #867
- Two tests measured UniProt's latency and gated CI on it by @gasvn in #868
- Measure the field axis for the 2,786 tools no static check can reach by @gasvn in #871
- test: use the active Python interpreter for SMCP subprocesses by @sixty-66 in #864
- The field axis: 2,704 tools measured, ~60 fixed, and nine false-positive classes out of the detector by @gasvn in #872
- Two READMEs disagreed about how many skills exist, and both were wrong by @gasvn in #878
- Three silent failures reported this month: a key check that always passed, a server that said nothing, and a zero that meant the opposite by @gasvn in #879
- Release tooluniverse 1.5.10 by @gasvn in #880
New Contributors
Full Changelog: v1.5.9...v1.5.10
Release v1.5.9
What's Changed
- Ten schema_error categories: schemas generated from one response, and two silent faults hiding behind one by @gasvn in #843
- Three dead endpoints: one had moved, one was renamed, one is gone by @gasvn in #841
- A tool can need a program pip cannot install, and three skips had no name by @gasvn in #842
- Declaring what the exposed arrays hold, and 30 schemas that reject their own failures by @gasvn in #846
- Remove a BixBench worked solution from two shipped skills, and make the detector able to find it by @gasvn in #847
- Follow a renamed upstream MCP tool instead of pinning one that is gone by @gasvn in #848
- Running BiomarkerDiscoveryWorkflow over MCP unloads every other tool by @LanGuo in #845
- Three more places a tool call replaced the whole registry by @gasvn in #852
- A sample is as wide as the queries behind it, not the rows it returned by @gasvn in #854
- Numeric AE subgroup filters were dropping every subject by @shuizhutieniu in #849
- feat: add AgingResearch.News aging-research MCP loader by @longevityboris in #851
- feat(web_search): add opt-in keenable backend (works without an API key) by @KGKallasmaa in #853
- Add Outcrawl Search as an opt-in web search backend by @heydryft in #850
- Over half the generated wrappers returned Any because oneOf has no top-level type by @gasvn in #855
- 18 return_schemas that are contracts on the whole return could not describe an error by @gasvn in #856
- Three tools told callers a record was missing when a bot wall was in front of it by @gasvn in #857
- A pool can let memory decide how many models stay resident by @gasvn in #835
- Release tooluniverse 1.5.9 by @gasvn in #858
New Contributors
- @LanGuo made their first contribution in #845
- @shuizhutieniu made their first contribution in #849
- @longevityboris made their first contribution in #851
- @KGKallasmaa made their first contribution in #853
- @heydryft made their first contribution in #850
Full Changelog: v1.5.8...v1.5.9
Release v1.5.8
What's Changed
- Lock the bundle against the release that just shipped, not uv's cached index by @gasvn in #804
- Add Carbon-A gene annotation as a remote tool, and its benchmark genomes by @gasvn in #805
- Let a hosting service say where its users add a missing login by @gasvn in #806
- Add a ToolUniverse Connect guide skill by @gasvn in #810
- Give the short ToolUniverse Connect address in the connect guide by @gasvn in #811
- Stop a workspace profile.yaml from turning load_tools(categories=...) into a no-op by @gasvn in #812
- Let a caller say whether load_tools() replaces what is loaded or adds to it by @gasvn in #813
- Add 29 model providers on the resident remote-tool standard, each held to a byte-equivalence gate by @gasvn in #809
- Fix sign-conditioned nominal p-values in GSEA_prerank by @starvingarc in #819
- Remove the stale devtu-remote-provider copy now that the harness one is pushed by @gasvn in #820
- Orange Book: return patents and exclusivity instead of a download link by @CyberNativeAI in #794
- Avoid classifying scientific token errors as authentication failures by @gasvn in #818
- Fix: FDA label tools can select a product's route and name a label's other sections by @gasvn in #807
- Add protein alpha and Ile/Thr beta stereochemistry checks by @gasvn in #800
- Add pH linkage postprocessing, campaign skills and a TNF exploration blog by @gasvn in #815
- Add offline pKAI side-chain pKa diagnostics by @gasvn in #808
- Fix: MAGICapp_list_guidelines reaches the whole public catalogue and searches it by @gasvn in #821
- Fix: ~300 tools returned part of a result as if it were all of it by @gasvn in #824
- Fix: SAbDab_search_structures searches by antigen again by @gasvn in #826
- CI regenerates the SDK before pytest, so the generated-file tests cannot fail by @gasvn in #823
- Fix main: regenerate the 713 wrapper hashes #824 left behind by @gasvn in #828
- Docs: the harness mistake list is 67, and that number keeps moving by @gasvn in #827
- Add RFD4-Proteina (seven protein-design tasks) via the hosted NVIDIA NIM by @gasvn in #829
- The provider pool reads memory per machine and costs from the manifests by @gasvn in #830
- Hold RFD4-Proteina resident behind one MCP tool by @gasvn in #831
- The pool measures a model where it is loaded, and a prewarm loads it by @gasvn in #832
- The provider counts in the pool's docs are the ones a reader can reproduce by @gasvn in #833
- Hold BioEmu-2 resident behind one MCP tool by @gasvn in #834
- Install the packages that exist on the runner we are given by @gasvn in #837
- Every LOVD call fails on a parameter the caller never sent by @gasvn in #840
- Make the weekly sweep and the wheel smoke test say what is actually wrong by @gasvn in #839
- Release tooluniverse 1.5.8 by @gasvn in #838
New Contributors
- @CyberNativeAI made their first contribution in #794
Full Changelog: v1.5.7...v1.5.8
Release v1.5.7
What's Changed
- Fix: an interrupted self-update broke the Desktop bundle's launch by @gasvn in #759
- Add bounded PDB inventory and coincident-coordinate diagnostics by @gasvn in #757
- Fix: the tool index lost its final newline on every build by @gasvn in #760
- Close skill/tool gaps vs. the life-sciences tool marketplace and beyond, plus a new protocols.io tool by @gasvn in #606
- Feature: reproduction code for the published benchmark results by @gasvn in #538
- Add a BixBench reproduction package under benchmarks/ by @gasvn in #510
- Add protein input diagnostics for MSA, SEQRES and PDB LINK records by @gasvn in #761
- Report SEQRES declarations and coordinate-only PDB inputs by @gasvn in #762
- Add local distance audit for explicit PDB LINK connections by @gasvn in #763
- Complete PROPKA partner comparisons with retained components and carboxylates by @gasvn in #765
- Retain explicitly selected components in free-partner PROPKA comparisons by @gasvn in #764
- Add protein design campaign skill and correct pH validation guidance by @gasvn in #766
- FDA_get_drug_label: find labels openFDA never linked (osimertinib/Tagrisso) by @gasvn in #767
- Fix: re-pin Genomic Intelligence predict_expression after upstream description change by @gasvn in #770
- Harden administrator-only Docker LLM provisioning by @gasvn in #422
- Add safe explicit Verified Source Directory core by @gasvn in #413
- Expose AgenticTool prompts and add scientific peer-review skill by @gasvn in #435
- Fix: say the iPTMnet API is down and name working PTM alternatives by @gasvn in #771
- Skills that let the assistant share, publish and set up logins for the user by @gasvn in #772
- Fix: PubMed_convert_article_ids failed on current Python builds (PMC 403) by @gasvn in #773
- Monarch searches keep items: [] when nothing matches by @gasvn in #774
- DDBJ reads the organism of BioProject records by @gasvn in #775
- GWAS: move SNP-by-gene and trait-name lookup off the retired v1 API by @gasvn in #776
- MediaDive_get_ingredient describes its usage counts correctly by @gasvn in #777
- SABIO-RK and BRENDA kinetics return the measured Km/kcat/Ki values by @gasvn in #778
- load_tools(categories=...) no longer returns tools from other categories by @gasvn in #779
- Bring the opt-in live test tier up to date with current tool contracts by @gasvn in #780
- Live-tier tests follow the GWAS v2 and SABIO-RK Json changes by @gasvn in #782
- Make sharing work when an assistant runs it: --detach, and skills from a real run by @gasvn in #781
- Add EWAS Atlas tools as the EWAS fallback while the EWAS Catalog is down by @gasvn in #783
- HTTP errors quote the service's reason, not its HTML error page by @gasvn in #784
- Fix #787: move USGS water tools to the Water Data OGC API by @gasvn in #790
- Add RFdiffusion2 as a validated remote tool by @krudo-taco in #768
- Link CCB workshop under Workshops and Education by @gasvn in #793
- OpenFDA_search_drug_labels: guide retries when a label has no openFDA fields by @gasvn in #792
- Add a GEANT4 depth-dose simulation tool (closes #252) by @gasvn in #796
- Fix: a tool needing any one API key gave network advice, and hid one of the keys by @gasvn in #795
- Refresh the tool hash #792 left stale by @gasvn in #797
- fix: keep DESeq2 and enrichGO result CSVs after R exits by @starvingarc in #791
- Reject gross protein backbone defects before PROPKA prediction by @gasvn in #785
- Add local protein sequence and structure similarity tools by @gasvn in #786
- Fix: clinical guideline searches that failed, timed out or never searched by @gasvn in #788
- Feature: StatPearls, LactMed and LiverTox from a local NCBI Bookshelf index, and case report search by @gasvn in #789
- Treat the R tools' arguments as data, not as R code by @gasvn in #798
- Let a gated tool be unlocked by the keys its error names by @gasvn in #799
- Ship every data file in the wheel, not just the directories named one by one by @gasvn in #801
- Release tooluniverse 1.5.7 by @gasvn in #803
Full Changelog: v1.5.6...v1.5.7
Release v1.5.6
What's Changed
- Call the account key a "connection key", as the website now does by @gasvn in #751
- Say "tool run limit": the platform now counts only tool runs by @gasvn in #752
- Fix: error results were cached and replayed on later calls by @Om-singhaI in #754
- Fix custom PDB uploads for ProteinsPlus ProtoSS by @gasvn in #749
- Add local PROPKA pKa prediction and partner comparisons by @gasvn in #750
- Fix: the other places a failure was cached, after #753 by @gasvn in #755
- Fix: a failed lookup was reported as "not found", and OpenAIRE errors as success by @gasvn in #756
- Release tooluniverse 1.5.6 by @gasvn in #758
Full Changelog: v1.5.5...v1.5.6
Release v1.5.5
What's Changed
- Fix: republish the bundle when it installs an older release than this one by @gasvn in #665
- Fix: let the bundle install on Python 3.14 by @gasvn in #666
- Fix: correct the MCPB manifest licence and listing metadata by @gasvn in #667
- Fix: validation errors named an array index instead of the parameter by @Om-singhaI in #669
- Fix: listing metadata that had drifted away from the catalogue by @gasvn in #670
- Feature: gather a drug-target profile from several databases in one call by @gasvn in #671
- Fix: notes that invited the wrong reading of an approved indication by @gasvn in #672
- Stop a domain noun from becoming a verb when one more tool is registered by @gasvn in #673
- Docs: state the macOS 14 requirement on Apple Silicon by @gasvn in #674
- Fix: regenerate the static lazy registry and pin it to its generator by @gasvn in #675
- Fix: stop reporting healthy tools as returning None against their schema by @gasvn in #676
- Fix: examples that the tool itself refuses to run by @gasvn in #677
- Feature: serve several remote providers from one process, starting each on demand by @gasvn in #679
- Record how a cold model is waited out, now that the platform absorbs it by @gasvn in #680
- Admit providers on measured GPU memory, not only on a count by @gasvn in #681
- Stop telling a caller about the host it is borrowing by @gasvn in #682
- Give a provider only the environment it declared, not the owner's whole shell by @gasvn in #686
- Feature: one command to share, whatever you are sharing by @gasvn in #687
- Fix: the Windows launcher could never start the bundle by @gasvn in #688
- Fix: FDA label tools that could not match, and schemas that rejected them by @gasvn in #678
- Fix ERepo CAid/ClinVar lookups returning false negatives by @milkshake0901 in #685
- Fix: the publish gate never started the bundle on Windows by @gasvn in #689
- Fix: five schema nodes that disagreed with what the API returns by @gasvn in #690
- Fix: three ways the Open Targets API moved on without us by @gasvn in #691
- Fix: validate against what the return_schema says it describes by @gasvn in #692
- Fix: DailyMed could not search, and the NCI resources API is gone by @gasvn in #693
- Fix: read RNA editing from UniProt, because EBI's dataset is empty by @gasvn in #694
- Name a shared machine after itself, so two machines are two machines by @gasvn in #695
- Say what is wrong in words someone can act on by @gasvn in #696
- Offer the command that removes the terminal from the picture by @gasvn in #697
- Fix: the weekly canary could not report, for three separate reasons by @gasvn in #698
- Fix: 24 weekly-check failures that were missing credentials, not defects by @gasvn in #699
- Fix: Rfam's /structures endpoint needs a query parameter, not a header by @gasvn in #700
- Fix: read SAbDab's API, which a trailing slash made look unreachable by @gasvn in #701
- Fix: declare the credentials four more tool families cannot work without by @gasvn in #703
- Fix: one blocked User-Agent took out every TDC dataset load by @gasvn in #706
- Fix: the 429s were our own concurrency, and the limiter already existed by @gasvn in #713
- Fix: a third of the weekly report's failures were the sweep skipping tools by @gasvn in #702
- Fix: the weekly report could not tell a broken tool from an overloaded upstream by @gasvn in #708
- Fix: a schema declaring
datainside a oneOf branch was read as a payload by @gasvn in #709 - Fix: "ols" is inside "tools", so one category tested 647 config files by @gasvn in #710
- Fix: four leftovers from the sweep triage, and STITCH recorded by @gasvn in #711
- Fix: three 403s, three causes — a default User-Agent, and naming Cloudflare by @gasvn in #707
- Fix: GtoPdb reads the open bulk downloads now that its REST service is gated by @gasvn in #704
- Fix: the xml category was OOM-killed at 120 GB on every weekly sweep by @gasvn in #705
- Fix: WormBase reads the Alliance API, since its own host is unreachable by @gasvn in #712
- Fix: report an upstream that cannot be repaired as what it is by @gasvn in #714
- Say when --pass-env names a variable that is not set by @gasvn in #715
- Fix: 157 wrappers had a file and no import line, so they imported as modules by @gasvn in #716
- Fix: NASA DONKI moved host, and the old one serves a web page by @gasvn in #717
- Fix: errors that blamed the caller, and a skip reason nothing read by @gasvn in #719
- Fix: MouseMine falls back to MGI's own reports while it is down by @gasvn in #721
- Fix: tu serve with a bare Namespace, broken by #687 by @gasvn in #718
- Fix: the borrower's path through tu connect, end to end by @gasvn in #720
- Fix: the AI-assistant path to a borrowed machine, through tu serve by @gasvn in #722
- Fix: register MCPProxyTool as the class again, not describe_remote_call_failure by @gasvn in #730
- Fix: using a published tool connected from the marketplace by @gasvn in #723
- Fix: tu remote login hung over SSH on a machine with a text browser by @gasvn in #725
- Fix: when a machine's owner withdraws access, say so instead of blaming the key by @gasvn in #726
- Fix: stop calling this computer's sharing key a "private connection" by @gasvn in #727
- Fix: what a caller gets back from a scientist's own @remote_tool function by @gasvn in #732
- Fix: from tooluniverse import remote_tool could return a module instead of the decorator by @gasvn in #733
- Fix: tu serve my_tool.py --share shared another program when its port was taken by @gasvn in #734
- Fix: a tool file's own helper modules failed to import outside its folder by @gasvn in #735
- Fix: an assistant now picks up a borrowed machine that comes back online by @gasvn in #736
- Fix: after tu connect, name the tools and say what to do next by @gasvn in #729
- Fix: a borrowed model call longer than five minutes failed in the client by @gasvn in #731
- Fix: say why a shared machine refused (request limit, ended period), not that it was offline by @gasvn in #737
- Fix: the weekly summary called skipped categories unreached by @gasvn in #724
- Fix NIM prediction output formats and false successes by @gasvn in #728
- Fix: a published tool that runs longer than two minutes failed for the person calling it by @gasvn in #739
- fix: correct Census presence matrix axis description by @starvingarc in #738
- Fix: the weekly report can say why a category failed, and RDKit is declared by @gasvn in #740
- Fix: ...
Release v1.5.4
What's Changed
- Fix: return a label section's tables with the section by @gasvn in #657
- Fix: honour limit when a fallback returns whole labels by @gasvn in #658
- Fix: when a label format lacks the requested section, return its matching sections by @gasvn in #659
- Fix: say which label section the child-safety and pediatric-use tools return by @gasvn in #662
- Fix: retry a drug name that misses only because of a bracketed name or dosage-form words by @gasvn in #660
- Fix: without a limit, show the first 8 labels and an inventory of the rest by @gasvn in #661
- docs: fix dead readthedocs links in the API keys guide by @pratikgx in #663
- Feature: ship the bundle as a launcher so a release reaches Desktop without resubmission by @gasvn in #655
- Fix: stop installing six packages nobody needs to start ToolUniverse by @gasvn in #656
- Release tooluniverse 1.5.4 by @gasvn in #664
New Contributors
Full Changelog: v1.5.3...v1.5.4
Release v1.5.3
What's Changed
Full Changelog: v1.5.2...v1.5.3
Release v1.5.2
What's Changed
- Fix: Tool_Finder_Keyword dropped matches after searching another category by @Om-singhaI in #635
- Fix: REST tools sent the requests default User-Agent, and Dataverse blocks it by @gasvn in #636
- Fix: the weekly health summary parsed nothing and reported that as clean by @gasvn in #637
- Fix the per-request deep copy of the whole tool catalogue by @gasvn in #639
- Retire the eQTL Catalogue tools: EBI removed the API by @gasvn in #640
- Feature: request-scoped credentials for hosted multi-user ToolUniverse by @gasvn in #617
- Move the GWAS summary-statistics tools to the v2 API; retire region queries by @gasvn in #642
- Score the keyword finder from postings instead of scanning the catalogue by @gasvn in #641
- Fix: refresh the eight SemanticScholar tool hashes left stale by #617 by @gasvn in #643
- Copy only what tool specification preparation writes by @gasvn in #644
- Add Firecrawl Search as an opt-in web search backend by @JuampiHernandez in #632
- Fix: strict input schemas crashed on a union typed parameter by @Om-singhaI in #649
- Fix: initialise each lazily loaded tool once under concurrent first use by @gasvn in #645
- Fix: load encoders chosen per call from the local cache unless downloads are opted in by @gasvn in #646
- Fix: disease known-drugs tool declares the stages and mechanisms it returns by @gasvn in #638
- Feature: Tool_Finder_Jev, wide lexical retrieval with graded relevance scoring by @gasvn in #647
- Fix: array element coercion never ran, so list arguments stayed strings by @Om-singhaI in #651
- Fix: pin the bundle's interpreter, collect keys in Desktop, and answer for documented tool names by @gasvn in #653
- Release tooluniverse 1.5.2 by @gasvn in #652
New Contributors
- @Om-singhaI made their first contribution in #635
- @JuampiHernandez made their first contribution in #632
Full Changelog: v1.5.1...v1.5.2
Release v1.5.1
What's Changed
- Start the built .mcpb in CI instead of only inspecting it by @gasvn in #603
- Publish the .mcpb from CI instead of by hand by @gasvn in #604
- Retry the publish verification before calling it a mismatch by @gasvn in #605
- Update stale tool and skill counts in the setup skill by @gasvn in #607
- Feature: resolve gene and protein identifiers across namespaces by @gasvn in #615
- Feature: gather a drug profile from several databases in one call by @gasvn in #616
- fix: coerce HumanBase gene_list strings into gene names by @krudo-taco in #611
- Fix: Cellosaurus
fieldsemptied the record instead of trimming it by @gasvn in #619 - Fix: page_size did nothing, a documented annotation_type returned nothing, and HTTP errors hid why by @gasvn in #620
- Fix: OmniPath read limit=0 as a result and refused list gene input (supersedes #612) by @gasvn in #622
- Fix: CellMarker hid records behind an unreachable cap; SCP matched everything by @gasvn in #623
- fix: accept lowercase Europe PMC article ID prefixes by @krudo-taco in #608
- fix: reject blank Single Cell Portal search queries by @krudo-taco in #609
- fix: reject blank CellMarker gene symbols by @krudo-taco in #610
- Fix: HumanBase returned networks for genes nobody asked about (builds on #611) by @gasvn in #621
- Fix: blank CellMarker gene_symbol reported the wrong kind of error (follow-up to #610) by @gasvn in #625
- Fix: eight tools converted an input type their schema refused by @gasvn in #626
- Fix: reported counts described lists longer than the ones returned by @gasvn in #628
- Fix: 119 tools were missing from the Python SDK, and the build could not show why by @gasvn in #629
- Fix: change-detection hashes depended on the checkout directory by @gasvn in #630
- Fix: the secrets ignore rules hid source files, including a generated tool wrapper by @gasvn in #631
- Fix: stop an identifier search from trimming away the label text it returns by @gasvn in #618
- Fix: one failed abstract fetch no longer ends a Europe PMC guideline search by @gasvn in #627
- Feature: exact RxNorm lookup that reports every match instead of choosing one by @gasvn in #624
- Release tooluniverse 1.5.1 by @gasvn in #633
Full Changelog: v1.5.0...v1.5.1