Brenda enzyme database
Skill findscripter/everything-skills/09-verticals/brenda-enzyme-database
类书式 AI Agent 技能大典 · 精选/中文化/互见成网的 500+ 开源技能,可作为 Claude Code 插件市场一键安装。A curated, cross-referenced encyclopedia of 500+ open-source agent skills.
npx -y skills add findscripter/everything-skills --skill brenda-enzyme-databaseAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.
- 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
当需要按 EC 号/底物/物种查询酶动力学参数(Km、kcat、Vmax、Ki)、底物-产物、抑制剂、辅因子、最适 pH/温度或交叉 UniProt 时使用;用 Python zeep 调 BRENDA SOAP 服务(SHA256 鉴权、需免费学术注册)检索并产出可用于动力学建模的参数表。不适用于代谢网络约束建模(用 cobrapy)或代谢物结构(用 hmdb)。触发词:BRENDA、酶动力学、Km、kcat、Vmax、Ki、EC 号、米氏常数、底物特异性、抑制剂、辅因子、最适pH温度
The file declares its own license as CC-BY-4.0. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.
SKILL.md
8.5 KB, ~2.7k tokens by cl100k_base, as published. Nobody here has run it
何时使用
当你需要在 BRENDA(BRaunschweig ENzyme DAtabase:8 万+ 酶条目、覆盖全部 EC 号、700 万+ 实测动力学参数)中检索酶的动力学与功能数据时使用本技能。典型场景:
- 取某酶+底物组合的 Km / kcat / Vmax / Ki(米氏常数、转换数、抑制常数)
- 跨物种或跨突变体比较同一酶的动力学参数
- 查某 EC 号的天然底物-产物、抑制剂、辅因子
- 为代谢动力学模型提取米氏-门顿参数
- 查酶的最适 pH / 最适温度
- 把 EC 号交叉到 UniProt 登录号与物种分类
不该用本技能的边界:
- 做约束式代谢网络(FBA)建模 → 用
cobrapy-metabolic-modeling - 查代谢物 / 底物的化学结构与生物背景 → 用
hmdb-metabolome-database - 仅按通路上下文关联 EC → 用
kegg-database
注意 BRENDA 是 SOAP 而非 REST:必须用 zeep 解析 WSDL,密码须传 SHA256 散列(非明文),且需在官网免费学术注册后才能调用。
步骤 / 指令
-
准备环境:
pip install zeep pandas requests;到 https://www.brenda-enzymes.org/register.php 免费注册(学术)获取账号。 -
建客户端 + 算密码散列(密码须
hexdigest(),不是digest()):from zeep import Client import hashlib WSDL = "https://www.brenda-enzymes.org/soap/brenda_zeep.wsdl" client = Client(WSDL) EMAIL = "[email protected]" PWD = hashlib.sha256("your_password".encode()).hexdigest()生产中用环境变量
os.environ["BRENDA_EMAIL"]/["BRENDA_PASSWORD"],勿硬编码。 -
拼参数调方法。每个服务方法签名固定为 9 个位置参数:
(EMAIL, PWD, 过滤1, 过滤2, …, ""),过滤器是管道分隔的字段*值串,空位留""。核心方法:方法 返回 关键结果字段 getKmValueKm 记录 kmValue、kmValueMaximum、substrate、organism、literature(PMID)getTurnoverNumberkcat 记录(1/s) turnoverNumber、substrate、organismgetSubstrates底物-产物 substrate、organismgetInhibitors抑制剂 inhibitor、organism、ic50ValuegetPhOptimum/getTemperatureOptimum最适 pH / 温度(°C) phOptimum/temperatureOptimumgetUniprotAccessionUniProt 交叉 uniprotAccessionNumber、organismgetEcNumber名称→EC 号 ecNumber、recommendedName -
常用过滤字段:
ecNumber*1.1.1.27(必填,X.X.X.X 带点)、substrate*pyruvate、organism*Homo sapiens、commentary*<文本>、recommendedName*lactate dehydrogenase(配 getEcNumber 反查 EC)。 -
批量加节流:SOAP 服务较慢,循环里加
time.sleep(0.5~1)防超时;多结果聚合用中位数+IQR(同底物多文献常跨一个数量级),按物种过滤避免参数混杂。
示例
快速上手 — 取 LDH+丙酮酸 的 Km:
ec = "1.1.1.27" # 乳酸脱氢酶
params = (EMAIL, PWD, f"ecNumber*{ec}", "substrate*pyruvate", "", "", "", "", "")
result = client.service.getKmValue(*params)
print(f"Km 记录数: {len(result)}")
for r in result[:3]:
print(f" Km={r.kmValue} {r.kmValueMaximum or ''} mM | {r.organism} | PMID:{r.literature}")
按物种过滤 + kcat / 抑制剂 / 最适条件:
# 人源 GAPDH 的 Km(物种过滤放第 5 位)
hp = (EMAIL, PWD, "ecNumber*1.2.1.12", "", "organism*Homo sapiens", "", "", "", "")
human_km = client.service.getKmValue(*hp)
# LDH 的 kcat(1/s)
kc = client.service.getTurnoverNumber(EMAIL, PWD, "ecNumber*1.1.1.27", "", "", "", "", "", "")
# 碳酸酐酶(4.2.1.1)的抑制剂
inh = client.service.getInhibitors(EMAIL, PWD, "ecNumber*4.2.1.1", "", "", "", "", "", "")
names = list({r.inhibitor for r in inh if r.inhibitor})
# 胰蛋白酶(3.4.21.4)最适 pH / 温度
ph = client.service.getPhOptimum(EMAIL, PWD, "ecNumber*3.4.21.4", "", "", "", "", "", "")
tp = client.service.getTemperatureOptimum(EMAIL, PWD, "ecNumber*3.4.21.4", "", "", "", "", "", "")
工作流 — 为代谢建模批量提取 Km/kcat 中位数:
import pandas as pd, time
enzymes = {"Hexokinase":"2.7.1.1", "PGI":"5.3.1.9",
"PFK":"2.7.1.11", "Aldolase":"4.1.2.13"}
rows = []
for name, ec in enzymes.items():
p = (EMAIL, PWD, f"ecNumber*{ec}", "", "organism*Homo sapiens", "", "", "", "")
try:
km = [r.kmValue for r in client.service.getKmValue(*p) if r.kmValue]
kcat = [r.turnoverNumber for r in client.service.getTurnoverNumber(*p) if r.turnoverNumber]
rows.append({"enzyme":name, "ec":ec,
"km_median_mM": pd.Series(km).median() if km else None,
"kcat_median_1_s": pd.Series(kcat).median() if kcat else None})
except Exception as e:
rows.append({"enzyme":name, "ec":ec, "error":str(e)})
time.sleep(0.5)
pd.DataFrame(rows).to_csv("glycolysis_kinetics.csv", index=False)
催化效率 kcat/Km(注意单位:Km 由 mM 换算到 M):
km_median, kcat_median = 0.1, 500 # mM, 1/s(示例)
efficiency = kcat_median / (km_median * 1e-3) # M^-1 s^-1
print(f"kcat/Km = {efficiency:.2e} M^-1 s^-1") # 扩散极限 ≈ 1e8–1e9
名称反查 EC:
p = (EMAIL, PWD, "recommendedName*lactate dehydrogenase", "", "", "", "", "", "")
for r in client.service.getEcNumber(*p)[:5]:
print(f"EC {r.ecNumber}: {r.recommendedName}")
注意事项
- 密码必须 SHA256 散列且用
hexdigest():用hashlib.sha256(pwd.encode()).hexdigest();误用digest()或明文会触发zeep.exceptions.Fault: Authentication failed。 - EC 号格式 X.X.X.X 带点:返回空列表时先核对格式,并先去掉
substrate*过滤试一次(底物名拼写常导致 0 结果)。 - 参数是 9 元位置参数:过滤器按
字段*值拼,空位留"";物种过滤通常占第 5 位(见示例),错位会查不到。 - 结果字段可能缺失:用
getattr(r, "field", None)安全取值,避免AttributeError。 - 超时与慢响应:热门酶(数据巨大)务必加
organism*/substrate*过滤缩小结果集;可设 zeep transport timeout;TransportError多为网络/VPN 问题,30 秒后重试。 - 跨物种参数差异大:建模时必须按目标物种过滤(如
organism*Homo sapiens)。 - 多文献聚合用中位数+IQR:同一底物的实测值常跨一个数量级,勿用均值。
- EC 一级分类:1 氧化还原酶、2 转移酶、3 水解酶、4 裂合酶、5 异构酶、6 连接酶、7 转位酶。
互见
- requires:无(仅需
zeep/账号) - related:
kegg-database—— 经 EC 号关联通路上下文;uniprot-protein-database—— 酶的序列/结构;hmdb-metabolome-database—— 底物/代谢物结构 - combines_with:
cobrapy-metabolic-modeling—— 把 BRENDA 的 Km/Vmax 作动力学约束做代谢建模
参考:BRENDA 官网 https://www.brenda-enzymes.org/ | SOAP API 文档 https://www.brenda-enzymes.org/soap.php | zeep https://docs.python-zeep.org/ | Chang et al. (2021) NAR https://doi.org/10.1093/nar/gkaa1025
采编自 jaechang-hits/SciAgent-Skills(CC-BY-4.0)。
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.