Communitygithub.com

Tamarind Bio

存取 Tamarind Bio 平台上的開源分子設計與結構生物學工具集合,透過其 REST API 或 MCP 伺服器執行——無需本機 GPU。

Tamarind Bio 是什麼?

Tamarind Bio 是一個雲端平台,提供一系列開源的計算生物學工具,用於結構預測、蛋白質與抗體設計、分子對接、結合親和力預測、多序列比對 (MSA) 生成以及分子動力學模擬。使用者可以提交序列或結構,而無需自行配置 GPU 硬體,即可獲得預測的結構、設計方案和生物物理學評分。該平台支援多種受歡迎的模型,包括 AlphaFold、Boltz-2、Chai-1、RFdiffusion、ProteinMPNN、DiffDock 等,並透過統一的作業 API 以及適合 AI 代理的 MCP 伺服器 (模型上下文協定) 提供服務。這個技能對於需要在雲端執行批次序列篩選、建構多步驟生物學工作流程,或需要無縫整合尖端分子建模工具到 AI 驅動的開發環境中的開發者與研究人員來說至關重要。

相容平台~Claude Code~Codex CLI~Cursor✓Antigravity
npx skills add https://github.com/K-Dense-AI/scientific-agent-skills/tree/main/skills/tamarind

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

Tamarind Bio 是做什麼的?

Tamarind Bio 是一個雲端平台,可在受管理的 GPU 上執行計算生物學工具——結構預測、蛋白質與抗體設計、對接、結合親和力、多序列比對 (MSA) 生成以及分子動力學模擬。使用者提交序列或結構,即可獲得預測的結構、設計方案和生物物理學評分,無需自行配置硬體。它透過一個統一的作業 API,公開了數百種工具(AlphaFold、Boltz-2、Chai-1、RFdiffusion、ProteinMPNN、BoltzGen、ESMFold2、DiffDock、Autodock Vina 等)。

官方文件: app.tamarind.bio/api-docs · 平台 UI 位於 app.tamarind.bio

規範來源——請取得這些資料,不要依賴過時的副本

Tamarind 發布即時、機器可讀的來源。建議在執行時期取得這些資料,而非信任任何硬編碼的清單——工具名稱、架構和端點會頻繁變更:

  • https://app.tamarind.bio/llms.txt — LLM 索引:指向規格、API 文件和 MCP 指南的連結。
  • https://app.tamarind.bio/openapi.yaml — 針對 8 個核心作業端點(submit-job/-batch、jobs、result、upload、files、delete-job/-file;認證方式為 ApiKeyAuth)的 OpenAPI 3.0 規格。請取得它以了解確切的資料結構。探索/管理端點(/tools、/usage-statistics、pipeline…)並未包含在其中——請為此使用 MCP/REST 探索工具。
  • https://docs.tamarind.bio/llms.txt — 文件索引;每個頁面都有 .md 格式(例如 docs.tamarind.bio/tamarind/batch.md、/tamarind/api.md、/tamarind/pipelines.md)。
  • 即時工具探索 — GET /tools (REST) 或 MCP getAvailableTools + getJobSchema(jobType) 是了解存在哪些工具及其參數的事實來源。

此技能教授表象 + 這些來源未說明的非顯著行為(請參閱參考檔案)。若對資料結構有疑問,請取得 openapi.yaml。

何時使用此技能

當使用者想要以下操作時,請使用 Tamarind:

  • 預測結構 蛋白質、複合物或蛋白質-配體系統(AlphaFold、Boltz-2、Chai-1、ESMFold2、Chai/Boltz 共折疊)
  • 設計蛋白質或結合劑(RFdiffusion、BoltzGen、BindCraft、ProteinMPNN/LigandMPNN 逆向折疊)
  • 設計或表徵抗體/奈米抗體(序列生成、人源化、可開發性、免疫原性)
  • 對接小分子 至蛋白質(DiffDock、Autodock Vina)或預測 結合親和力
  • 生成 MSA 以供下游折疊使用
  • 在受管理的 GPU 上執行分子動力學 或其他生物物理工作流程
  • 批次篩選 許多序列或設計通過相同工具
  • 將工具串聯成管道(例如,設計 → 折疊 → 評分),使用一個作業的輸出作為下一個作業的輸入

此技能是正確的選擇,當工作應在 Tamarind 的受管理雲端上執行,而非在本機安裝時。對於純本機的化學資訊學或一次性序列 I/O,請改用本機函式庫(RDKit、BioPython)。

存取與認證

  1. 在 app.tamarind.bio 登入,並從帳戶/API 設定中建立一個 API 金鑰。
  2. 使用 x-api-key 標頭驗證每個 REST 請求。
  3. 切勿對金鑰進行硬編碼。 從 TAMARIND_API_KEY 環境變數或 .env 檔案(使用 python-dotenv)讀取它。切勿將金鑰提交到版本控制。

定價: 每位使用者可獲得 10 個免費作業。若需更大量使用,請聯絡 [email protected] 購買訂閱。

export TAMARIND_API_KEY="your_api_key"
# 列出可用的工具
curl https://app.tamarind.bio/api/tools \
  -H "x-api-key: $TAMARIND_API_KEY"

基礎 URL: https://app.tamarind.bio/api/

沒有官方的 Python SDK — 名為 tamarind 的 PyPI 套件是一個不相關的 Neo4j 工具。請勿執行 uv pip install tamarind。請撰寫純 requests 呼叫來使用 REST API(端點資料結構在 openapi.yaml 中),或為代理主機使用 MCP 伺服器。

兩種呼叫 Tamarind 的方式

MCP 伺服器(最適合 AI 代理)

Tamarind 在 https://mcp.tamarind.bio/mcp 託管一個 MCP 伺服器(透過 X-API-Key 標頭進行 API 金鑰認證)。當您的代理主機支援 MCP 時,建議優先使用它——這些工具鏡像 REST API,並具有適合代理的架構:

  • listModalities() / listTags() — 即時過濾詞彙(分子類型/功能),包含標籤和工具計數;呼叫這些來學習有效的 modality/function 值,而不是對其進行硬編碼
  • getAvailableTools(modality?, function?, search?, custom?) — 探索工具(category/tag 是已棄用但仍然有效的別名)
  • getJobSchema(jobType) — 某個工具的準確參數架構,以及一個 exampleJob 起始負載(在提交之前驗證它)
  • validateJob(jobName, type, settings) — 在提交之前進行乾執行驗證
  • submitJob(jobName, type, settings) / submitBatch(batchName, type, settings[], jobNames[])
  • getJobs(jobName?, batch?, limit?, includeSequences?) — 列出/檢查作業和狀態(預設會省略龐大的每作業輸入 blob;傳遞 includeSequences=true 以保留它)
  • getJobLogs(jobName) — 取得輸出日誌以進行除錯
  • listJobFiles(jobName) — 列出輸出檔案(傳回 s3Path 以供串聯)
  • getResult(jobName, fileName?) — 下載結果
  • uploadFile(filename) — 預先簽署的上傳 URL;或 uploadFileContent(filename, content, encoding?) 以在代理主機無法存取 S3 時(沙盒代理)透過 MCP 傳送檔案內容

範圍說明:MCP 查詢工具(getJobs、getResult、listJobFiles…)的作用範圍限定於已認證的帳戶。

REST API(通用)

使用帶有 requests 的純 HTTP——端點資料結構在 openapi.yaml 中。核心迴圈如下;references/workflows.md 包含完整的範例。

核心工作流程

請務必遵循探索 → 架構 → 驗證 → 提交 → 輪詢 → 結果的順序。請勿對工具名稱或設定進行硬編碼——目錄經常變更。

import os, time, requests

BASE = "https://app.tamarind.bio/api"
HEADERS = {"x-api-key": os.environ["TAMARIND_API_KEY"]}

# 1. 探索工具。REST /tools 傳回完整清單;在客戶端進行過濾。
tools = requests.get(f"{BASE}/tools", headers=HEADERS).json()
alphafold = next(t for t in tools if t["name"] == "alphafold")

# 2. 取得所選工具的準確架構。
#    REST:每個 /tools 條目已包含其內聯的 `settings` 架構
#          (參數清單)——找到名稱與您的作業類型相符的條目。
#    MCP: getJobSchema(jobType) 傳回相同的每工具詳細資訊。

# 3. 提交作業。`settings` 是特定於工具的——請準確比對架構。
payload = {
    "jobName": "my-alphafold-run",          # ^[a-zA-Z0-9_-]+$,最多 100 個字元,唯一
    "type": "alphafold",
    "settings": {
        "sequence": "MKTVRQERLKSIVRILERSKEPVSGAQLAEELSVSRQVIVQDIAYLRSLGYNIVATPRGYVLAGG",
        "numRecycles": 3,
    },
}
resp = requests.post(f"{BASE}/submit-job", headers=HEADERS, json=payload)
resp.raise_for_status()   # 200 成功;400 錯誤請求;403 超過預算;401 未經授權

# 4. 輪詢以確認完成。
#    注意回應形狀:GET /jobs?jobName=<name> 會直接傳回作業行
#    (沒有 "jobs" 包裝器);清單查詢(無 jobName)會傳回
#    {"jobs": [...]}。請勿在按名稱查詢的回應上索引 ["jobs"][0]。
while True:
    job = requests.get(f"{BASE}/jobs", headers=HEADERS,
                       params={"jobName": "my-alphafold-run"}).json()
    if job["JobStatus"] in ("Complete", "Stopped", "Deleted"):
        break
    time.sleep(30)

# 5. 取得結果。POST /result 會傳回一個預先簽署的 URL *字串*;
#    取得該 URL 以下載實際的結果 zip 檔(兩步驟)。
url = requests.post(f"{BASE}/result", headers=HEADERS,
                    json={"jobName": "my-alphafold-run"}).text.strip('"')
open("my-alphafold-run.zip", "wb").write(requests.get(url).content)

有關使用 MCP 工具的此迴圈的代理化版本,以及更豐富的範例,請參閱 references/workflows.md。

探索工具

目錄中有數百種工具。請務必在執行時期進行列舉——切勿依賴硬編碼的清單。

REST GET /tools 傳回完整清單(它不會在伺服器端進行過濾);每個項目是 {name, displayName, github, paper, description, settings},其中 settings 是該工具的內聯參數架構。在客戶端進行過濾:

tools = requests.get(f"{BASE}/tools", headers=HEADERS).json()   # 一個清單
boltz = [t for t in tools if "boltz" in t["name"].lower()]

注意:兩個介面都為每個工具名稱傳回一行——REST /tools 和 MCP getAvailableTools 都已去重(MCP 保留最新的工具版本),因此名稱相符會傳回單一行。

MCP getAvailableTools(search=..., modality=..., function=...) 在伺服器端進行過濾,並為每個工具新增 categories/tags(category/tag 是已棄用的 modality/function 別名,仍然有效)。請勿對詞彙進行硬編碼——它會發生變化。從 listModalities() / listTags() 取得即時值(每個都會傳回 value、label、description 和 toolCount),或讀取每個 getAvailableTools 回應上傳回的 availableCategories / availableTags 方面陣列。Modalities 是分子類型(protein、antibody、peptide、small-molecule、nucleic-acid…);functions 是工具的功能(structure-prediction、binder-design、protein-ligand-docking…)。

一組具有代表性的廣泛使用工具(請使用 /tools 驗證):alphafold、boltz (Boltz-2)、chai (Chai-1)、esmfold / esmfold2、rfdiffusion、proteinmpnn、ligandmpnn、boltzgen、bindcraft、diffdock。請參閱 references/tool_catalog.md 以了解完整的類別/標籤對應圖以及如何讀取工具元資料。

選擇正確的工具

目錄中每個任務都有許多工具;請勿對喜好進行硬編碼——請依 function(和 modality)進行過濾,然後閱讀每個候選工具的 description,並將其與使用者的實際目標進行比對(您擁有的輸入、您需要的輸出、速度或「無 MSA」等約束條件)。description 和 tags 欄位是公開的「用途」訊號;讓它們,以及 validateJob,來驅動選擇。按任務快速導覽:

  • 折疊單一蛋白質/複合物 (function=structure-prediction):AlphaFold3 類的復刻版——boltz/chai/openfold/protenix/intfold——是所有情況(包括僅蛋白質系統)的準確預設選擇;它們也能處理核酸 + 小分子複合物,因此當系統中包含配體/RNA/DNA 時請使用它們(而 boltz 還新增了結合親和力)。alphafold (AF2) 對於單體 + 多聚體(使用 : 連接鏈)仍然是可靠的選擇。esmfold 是單一序列(無 MSA)且速度快——當您想要速度且沒有 MSA 時使用它;esmfold2 較新,並且預設以 MSA 為條件(其 model 設定提供更快的單一序列模式)。存在針對抗體(abodybuilder、immunebuilder)、環狀肽(highfold)和構象集合(afcluster、alphaflow)的專業折疊工具——請進行過濾並閱讀描述。
  • 設計結合劑 (function=binder-design):bindcraft(從頭設計微型蛋白結合劑)和 boltzgen(針對蛋白質和小分子目標的結合劑,包括奈米抗體/抗體/胜肽)是首選的從頭結合劑工具;rfdiffusion 也能進行結合劑設計,並且是基序支架 / 多樣化現有主鏈的選擇。抗體專用生成器位於 function=antibody-design 下。
  • 為已知主鏈設計序列 (function=inverse-folding):proteinmpnn(通用)、ligandmpnn(配體感知),以及耐熱/可溶性/抗體 MPNN 變體。逆向折疊接受一個結構並輸出序列——將它們折疊回來以進行驗證(請參閱串聯)。
  • 對接小分子 (function=protein-ligand-docking):建議優先使用 boltz/chai——它們將配體共折疊到複合物中,並預測結合結構,而不是對接到固定的受體;當您需要針對已知口袋進行快速、大規模篩選時,請使用 autodock-vina。
  • 預測結合親和力 (function=binding-affinity) 或 生成 MSA(搜尋 msa)——請進行過濾並閱讀。

當使用者指定特定工具時,請評估該工具並對其 tag 群組中的替代方案進行合理性檢查——通常會存在更快或更適合的同類工具。當不確定時,請使用 getJobSchema/validateJob 在提交前確認候選工具確實接受您擁有的輸入。

作業設定、架構與驗證

每個工具都有自己的 settings 架構。請在提交前取得它:

  • REST /tools 條目:每個 settings 參數是一個精簡的字典。只有 name 和 required 始終存在;type、default、description、options 僅在相關時才會出現(約 60% 有 type)——因此請使用 param.get("type"),而非 param["type"]。進階門控金鑰(exclude、conditionals)完全不在 REST 回應中。
  • MCP getJobSchema(jobType):完整架構,包括 exclude、conditionals 和邊界。當您需要推理這些門控金鑰時,請使用 MCP。(restrictOrgs 在兩個介面上都被剝離——您無法使用的組織門控參數會被直接省略;請參閱 references/api_reference.md。)

在提交前請務必執行 validateJob (MCP)——它是可靠的防護。它在不提交的情況下執行與 /submit-job 相同的驗證,並顯示第一個缺少或無效的欄位。請勿嘗試手動推導應從架構金鑰中剝離哪些欄位(無論如何,您透過 REST 都看不到它們)——讓 validateJob 告訴您。(回應可能包含一個 source 欄位,例如 "static-fallback"——一個關於哪個架構來源進行驗證的內部註記;valid: true/false 是您應據以行動的訊號。)

validateJob 會回顯一個 normalized 的設定檢視,並填入預設值。請提交您驗證過的相同乾淨 settings;將 normalized 視為參考資訊(它可能包含您未設定的預設值,並且對於某些工具,還包含平台管理的欄位),因此請根據您自己的設定來建構提交內容,而不是根據標準化的 blob。

序列: 胺基酸字串;使用

…

[因翻譯而截斷]

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

adaptyv

How to use the Adaptyv Bio Foundry API and Python SDK for protein experiment design, submission, and results retrieval. Use this skill whenever the user mentions Adaptyv, Foundry API, protein binding assays, protein screening experiments, BLI/SPR assays, thermostability assays, or wants to submit protein sequences for experimental characterization. Also trigger when code imports `adaptyv`, `adaptyv_sdk`, or `FoundryClient`, or references `foundry-api-public.adaptyvbio.com`.

aeon

This skill should be used for time series machine learning tasks including classification, regression, clustering, forecasting, anomaly detection, segmentation, and similarity search. Use when working with temporal data, sequential patterns, or time-indexed observations requiring specialized algorithms beyond standard ML approaches. Particularly suited for univariate and multivariate time series analysis with scikit-learn compatible APIs.

alphagenome

Look up precomputed AlphaGenome Atlas effects for any GRCh38 single-nucleotide variant (AVI score with Phred and 18 SHAP feature attributions, plus raw and quantile scores for RNA-seq, DNase, ATAC, ChIP-TF, ChIP-histone, CAGE, PRO-cap, splicing, polyadenylation and contact-map tracks), score variants or scan windows on demand with the AlphaGenome model for human and mouse (variant scoring, in silico mutagenesis, REF-versus-ALT track prediction), and build Atlas website deep links. Use when the user mentions AlphaGenome, AlphaGenome Atlas, AVI or AlphaGenome Variant Impact, DeepMind variant effect prediction, or wants to prioritise or mechanistically interpret non-coding, regulatory, splicing, enhancer, promoter, or chromatin-accessibility effects of SNVs from a VCF, credible set, or region. Research use only; not a clinical tool.

analytical-method-validation

Plan, execute, and document validation, verification, and transfer of analytical procedures under the governing framework - ICH Q2(R2) and Q14, USP <1220>/<1225>/<1226>, ICH M10 bioanalytical, CLSI EP, or ISO/IEC 17025. Use for HPLC, LC-MS/MS, GC, CE, ICP-MS, dissolution, qNMR, qPCR, NIR, and ligand binding or cell-based assays whenever the question is whether a procedure is fit for its intended purpose. Triggers include

anndata

Data structure for annotated matrices in single-cell analysis. Use when working with .h5ad files or integrating with the scverse ecosystem. This is the data format skill—for analysis workflows use scanpy; for probabilistic models use scvi-tools; for population-scale queries use cellxgene-census.

arbor

Autonomously improve a real artifact (code, training recipe, agent harness, data pipeline, prompt) against an objective and an evaluator, using Hypothesis Tree Refinement (HTR) from the Arbor paper. Use this whenever someone wants to iteratively optimize something over many experiments without overfitting — e.g.

arboreto

Infer gene regulatory networks (GRNs) from gene expression data using scalable algorithms (GRNBoost2, GENIE3). Use when analyzing transcriptomics data (bulk RNA-seq, single-cell RNA-seq) to identify transcription factor-target gene relationships and regulatory interactions. Supports distributed computation for large-scale datasets.

astropy

Core Python library for astronomy and astrophysics workflows that need Astropy APIs, including units/quantities, coordinates, FITS I/O, tables, time systems, WCS, and cosmology. Use when implementing or debugging astronomical data analysis code with Astropy.

autoskill

Observe the user

benchling-integration

Benchling Python SDK and REST API integration for registry entities, inventory, ELN entries, workflows, Benchling Apps, and Data Warehouse queries. Use when automating lab data with benchling-sdk or the v2 API.

bgpt-paper-search

Search scientific papers and retrieve structured experimental data extracted from full-text studies via the BGPT MCP server. Returns 25+ fields per paper including methods, results, sample sizes, quality scores, and conclusions. Use for literature reviews, evidence synthesis, and finding experimental details not available in abstracts alone.

bids

>

biopython

Comprehensive molecular biology toolkit. Use for sequence manipulation, file parsing (FASTA/GenBank/PDB), phylogenetics, and programmatic NCBI/PubMed access (Bio.Entrez). Best for batch processing, custom bioinformatics pipelines, BLAST automation. For quick lookups use gget; for multi-service integration use bioservices.

bioservices

Unified Python interface to 40+ bioinformatics services. Use when querying multiple databases (UniProt, KEGG, ChEMBL, Reactome) in a single workflow with consistent API. Best for cross-database analysis, ID mapping across services. For quick single-database lookups use gget; for sequence/file manipulation use biopython.

bulk-rnaseq

End-to-end bulk RNA-seq orchestrator — takes raw FASTQ reads through QC and trimming (FastQC, fastp/Trim Galore), alignment and quantification (STAR, Salmon, featureCounts), assembles a gene-level counts matrix, then hands off to differential expression (pydeseq2), pathway/GSEA enrichment (pathway-enrichment), and publication figures (scientific-visualization). Use whenever the user has bulk RNA-seq reads or quant output and wants a complete, reproducible differential-expression workflow — e.g.

cellxgene-census

Query the CZ CELLxGENE Census programmatically for versioned public single-cell and spatial transcriptomics data. Use when you need population-scale cell metadata, gene expression slices, Census summary counts, source H5AD URIs/downloads, embeddings, spatial Census data, or reference atlas comparisons across organisms, tissues, diseases, assays, and cell types. For analyzing your own local single-cell data use scanpy, anndata, or scvi-tools.

cirq

Google quantum computing framework. Use when targeting Google Quantum AI hardware, designing noise-aware circuits, or running quantum characterization experiments. Best for Google hardware, noise modeling, and low-level circuit design. For IBM hardware use qiskit; for quantum ML with autodiff use pennylane; for physics simulations use qutip.

citation-management

Comprehensive citation management for academic research. Search OpenAlex, PubMed, and Google Scholar for papers, extract accurate metadata, validate citations, and generate properly formatted BibTeX entries. This skill should be used when you need to find papers, verify citation information, convert DOIs to BibTeX, or ensure reference accuracy in scientific writing.

clinical-decision-support

Prepare and validate research-only clinical decision-support evaluation, evidence-profile, cohort, survival, biomarker/model, privacy, and governance artifacts. Use for aggregate or synthetic research documentation and traceability—not patient care or live clinical operation.

clinical-reports

Create safety-bounded draft structures and run local deterministic checks for clinical case, diagnostic, trial, safety, and aggregate research reports. Use only with synthetic, de-identified, or aggregate inputs and verified source-fact manifests; every output requires qualified review.

相關技能