drugbank-search

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

DrugBank Search

DrugBank 搜索

Search the complete DrugBank database of drug information including mechanisms of action, interactions, targets, and pharmacology using natural language queries powered by Valyu's semantic search API.
使用Valyu的语义搜索API,通过自然语言查询搜索包含作用机制、相互作用、靶点和药理学的完整DrugBank药物信息数据库。

Why This Skill is Powerful

此Skill的强大之处

  • No API Parameter Parsing: Just pass natural language queries directly - no need to construct complex search parameters
  • Semantic Search: Understands the meaning of your query, not just keyword matching
  • Full-Text Access: Returns complete drug information including mechanisms, interactions, and targets
  • Image Links: Includes molecular structures and data visualizations
  • Comprehensive Coverage: Access to all DrugBank drug data
  • 无需API参数解析:直接传入自然语言查询 - 无需构造复杂的搜索参数
  • 语义搜索:理解查询的含义,而非仅进行关键词匹配
  • 全文访问:返回完整的药物信息,包括作用机制、相互作用和靶点
  • 图片链接:包含分子结构和数据可视化内容
  • 全面覆盖:可访问所有DrugBank药物数据

Requirements

要求

  1. Node.js 18+ (uses built-in fetch)
  2. Valyu API key from https://platform.valyu.ai ($10 free credits)
  1. Node.js 18+(使用内置的fetch)
  2. https://platform.valyu.ai获取Valyu API密钥(赠送10美元免费额度)

CRITICAL: Script Path Resolution

重要提示:脚本路径解析

The
scripts/search
commands in this documentation are relative to this skill's installation directory.
Before running any command, locate the script using:
bash
DRUGBANK_SCRIPT=$(find ~/.claude/plugins/cache -name "search" -path "*/drugbank-search/*/scripts/*" -type f 2>/dev/null | head -1)
Then use the full path for all commands:
bash
$DRUGBANK_SCRIPT "ACE inhibitors" 15
本文档中的
scripts/search
命令是相对于此Skill的安装目录的。
在运行任何命令之前,使用以下命令定位脚本:
bash
DRUGBANK_SCRIPT=$(find ~/.claude/plugins/cache -name "search" -path "*/drugbank-search/*/scripts/*" -type f 2>/dev/null | head -1)
然后使用完整路径执行所有命令:
bash
$DRUGBANK_SCRIPT "ACE inhibitors" 15

API Key Setup Flow

API密钥设置流程

When you run a search and receive
"setup_required": true
, follow this flow:
  1. Ask the user for their API key: "To search DrugBank, I need your Valyu API key. Get one free ($10 credits) at https://platform.valyu.ai"
  2. Once the user provides the key, run:
    bash
    scripts/search setup <api-key>
  3. Retry the original search.
当你运行搜索并收到
"setup_required": true
时,请按照以下流程操作:
  1. 向用户索要API密钥: "要搜索DrugBank,我需要你的Valyu API密钥。可在https://platform.valyu.ai免费获取(赠送10美元额度)"
  2. 用户提供密钥后,运行
    bash
    scripts/search setup <api-key>
  3. 重试原搜索

When to Use This Skill

使用场景

  • Comprehensive drug information lookup
  • Drug interactions and side effects research
  • Target identification and validation
  • Mechanism of action studies
  • Pharmacokinetics and pharmacodynamics research
  • Drug metabolism and adverse event data
  • 综合性药物信息查询
  • 药物相互作用和副作用研究
  • 靶点识别与验证
  • 作用机制研究
  • 药代动力学与药效动力学研究
  • 药物代谢与不良事件数据查询

Output Format

输出格式

json
{
  "success": true,
  "type": "drugbank_search",
  "query": "ACE inhibitors",
  "result_count": 10,
  "results": [
    {
      "title": "Drug Name",
      "url": "https://drugbank.com/...",
      "content": "Drug information, mechanism, interactions...",
      "source": "drugbank",
      "relevance_score": 0.95,
      "images": ["https://example.com/structure.png"]
    }
  ],
  "cost": 0.025
}
json
{
  "success": true,
  "type": "drugbank_search",
  "query": "ACE inhibitors",
  "result_count": 10,
  "results": [
    {
      "title": "Drug Name",
      "url": "https://drugbank.com/...",
      "content": "Drug information, mechanism, interactions...",
      "source": "drugbank",
      "relevance_score": 0.95,
      "images": ["https://example.com/structure.png"]
    }
  ],
  "cost": 0.025
}

Processing Results

结果处理

With jq

使用jq

bash
undefined
bash
undefined

Get drug names

获取药物名称

scripts/search "query" 10 | jq -r '.results[].title'
scripts/search "query" 10 | jq -r '.results[].title'

Get URLs

获取URL

scripts/search "query" 10 | jq -r '.results[].url'
scripts/search "query" 10 | jq -r '.results[].url'

Extract full content

提取完整内容

scripts/search "query" 10 | jq -r '.results[].content'
undefined
scripts/search "query" 10 | jq -r '.results[].content'
undefined

Common Use Cases

常见使用案例

Drug Information

药物信息查询

bash
undefined
bash
undefined

Find drug details

查找药物详情

scripts/search "metformin pharmacokinetics" 50
undefined
scripts/search "metformin pharmacokinetics" 50
undefined

Drug Interactions

药物相互作用查询

bash
undefined
bash
undefined

Search for interactions

搜索相互作用

scripts/search "CYP3A4 inhibitor drug interactions" 20
undefined
scripts/search "CYP3A4 inhibitor drug interactions" 20
undefined

Mechanism Research

作用机制研究

bash
undefined
bash
undefined

Find mechanism data

查找作用机制数据

scripts/search "selective serotonin reuptake inhibitors mechanism" 15
undefined
scripts/search "selective serotonin reuptake inhibitors mechanism" 15
undefined

Target Identification

靶点识别

bash
undefined
bash
undefined

Search for drug targets

搜索药物靶点

scripts/search "drugs targeting BCR-ABL fusion protein" 25
undefined
scripts/search "drugs targeting BCR-ABL fusion protein" 25
undefined

Error Handling

错误处理

All commands return JSON with
success
field:
json
{
  "success": false,
  "error": "Error message"
}
Exit codes:
  • 0
    - Success
  • 1
    - Error (check JSON for details)
所有命令返回的JSON中包含
success
字段:
json
{
  "success": false,
  "error": "Error message"
}
退出码:
  • 0
    - 成功
  • 1
    - 错误(查看JSON获取详情)

API Endpoint

API端点

  • Base URL:
    https://api.valyu.ai/v1
  • Endpoint:
    /search
  • Authentication: X-API-Key header
  • 基础URL:
    https://api.valyu.ai/v1
  • 端点:
    /search
  • 认证: X-API-Key请求头

Architecture

架构

scripts/
├── search          # Bash wrapper
└── search.mjs      # Node.js CLI
Direct API calls using Node.js built-in
fetch()
, zero external dependencies.
scripts/
├── search          # Bash包装器
└── search.mjs      # Node.js命令行工具
使用Node.js内置的
fetch()
直接调用API,无外部依赖。

Adding to Your Project

集成到你的项目中

If you're building an AI project and want to integrate DrugBank Search directly into your application, use the Valyu SDK:
如果你正在构建AI项目,并希望将DrugBank Search直接集成到你的应用中,请使用Valyu SDK:

Python Integration

Python集成

python
from valyu import Valyu

client = Valyu(api_key="your-api-key")

response = client.search(
    query="your search query here",
    included_sources=["valyu/valyu-drugbank"],
    max_results=20
)

for result in response["results"]:
    print(f"Title: {result['title']}")
    print(f"URL: {result['url']}")
    print(f"Content: {result['content'][:500]}...")
python
from valyu import Valyu

client = Valyu(api_key="your-api-key")

response = client.search(
    query="your search query here",
    included_sources=["valyu/valyu-drugbank"],
    max_results=20
)

for result in response["results"]:
    print(f"Title: {result['title']}")
    print(f"URL: {result['url']}")
    print(f"Content: {result['content'][:500]}...")

TypeScript Integration

TypeScript集成

typescript
import { Valyu } from "valyu-js";

const client = new Valyu("your-api-key");

const response = await client.search({
  query: "your search query here",
  includedSources: ["valyu/valyu-drugbank"],
  maxResults: 20
});

response.results.forEach((result) => {
  console.log(`Title: ${result.title}`);
  console.log(`URL: ${result.url}`);
  console.log(`Content: ${result.content.substring(0, 500)}...`);
});
See the Valyu docs for full integration examples and SDK reference.
typescript
import { Valyu } from "valyu-js";

const client = new Valyu("your-api-key");

const response = await client.search({
  query: "your search query here",
  includedSources: ["valyu/valyu-drugbank"],
  maxResults: 20
});

response.results.forEach((result) => {
  console.log(`Title: ${result.title}`);
  console.log(`URL: ${result.url}`);
  console.log(`Content: ${result.content.substring(0, 500)}...`);
});
查看Valyu文档获取完整的集成示例和SDK参考。