[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6DMHHJECAE68W5ER0868P95":3,"skill-same:01M6DMHHJECAE68W5ER0868P95":65},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":32,"linkOnly":33,"markdownContent":34,"markdownBody":35,"frontMatter":36,"refName":43,"commitSha":44,"skillDirectory":45,"forksCount":46,"repositoryHtmlUrl":47,"repositoryHomepageUrl":6,"ownerHtmlUrl":48,"ownerBlogUrl":6,"ownerDescription":49,"updatedAt":50,"install":51,"resources":64},"01M6DMHHJECAE68W5ER0868P95","dna-rna-sequence-analysis",null,"Analyze DNA and RNA sequences including molecular weight calculation, reverse complement generation, and oligonucleotide properties.","InternScience\u002FDrClaw","InternScience","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F154449623?v=4","01M6DHY1ZF02QASNAVMNPT7NP6","Intern Science","01M6DHY2523FY56Q5572NKAAD0",172,"MIT","https:\u002F\u002Fgithub.com\u002FInternScience\u002FDrClaw\u002Fblob\u002Fmain\u002Fdrclaw\u002Flocal_skill_hub\u002Fscience\u002Fprotein\u002Fdna-rna-sequence-analysis\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31],"analysis","DNA","RNA","dna rna sequence analysis","analyze","properties","generation","molecular","2026-11-10 10:12:30",false,"---\nname: dna-rna-sequence-analysis\ndescription: Analyze DNA and RNA sequences including molecular weight calculation,\n  reverse complement generation, and oligonucleotide properties.\nlicense: MIT license\nmetadata:\n  skill-author: PJLab\ni18n:\n  zh:\n    description: 分析DNA\u002FRNA序列及属性。\n---\n\n# DNA\u002FRNA Sequence Analysis\n\n## Usage\n\n### 1. MCP Server Definition\n\nUse the same `BiologyToolsClient` class as defined in the protein-properties-calculation skill.\n\n### 2. DNA\u002FRNA Sequence Analysis Workflow\n\nThis workflow analyzes DNA and RNA sequences, calculating molecular weight, GC content, melting temperature, and generating reverse complements.\n\n**Workflow Steps:**\n\n1. **Calculate DNA Molecular Weight** - Compute molecular weight for DNA sequences\n2. **Calculate Oligonucleotide Properties** - Compute GC content, Tm, extinction coefficient for RNA\n3. **Generate Reverse Complement** - Create reverse complement sequence\n\n**Implementation:**\n\n```python\n## Initialize client\nHEADERS = {\"SCP-HUB-API-KEY\": \"\u003Cyour-api-key>\"}\n\nclient = BiologyToolsClient(\n    \"https:\u002F\u002Fscp.intern-ai.org.cn\u002Fapi\u002Fv1\u002Fmcp\u002F29\u002FSciToolAgent-Bio\",\n    HEADERS\n)\n\nif not await client.connect():\n    print(\"connection failed\")\n    exit()\n\nprint(\"=== DNA\u002FRNA Sequence Analysis ===\\n\")\n\n## Step 1: Calculate DNA molecular weight\nprint(\"Step 1: DNA Molecular Weight\")\ndna_sequence = \"ATGATGTAACGTAGCTAG\"\nsequence_para = f\"seq1:{dna_sequence}.strand=single,topology=linear\"\n\nresult = await client.client.call_tool(\n    \"DNAMolecularWeightCalculator\",\n    arguments={\"sequence_para\": sequence_para}\n)\nresult_data = client.parse_result(result)\nprint(f\"DNA Sequence: {dna_sequence}\")\nprint(f\"Result:\\n{result_data}\\n\")\n\n## Step 2: Calculate oligonucleotide (RNA) properties\nprint(\"Step 2: Oligonucleotide (RNA) Properties\")\nrna_sequence = \"AUGAUGUAACGUAGCUAG\"\n\nresult = await client.client.call_tool(\n    \"CalculatorOligonucleotide\",\n    arguments={\"sq\": rna_sequence}\n)\nresult_data = client.parse_result(result)\nprint(f\"RNA Sequence: {rna_sequence}\")\nprint(f\"Result:\\n{result_data}\\n\")\n\n## Step 3: Generate reverse complement\nprint(\"Step 3: Reverse Complement\")\ntest_sequence = \"ATCGATCG\"\n\nresult = await client.client.call_tool(\n    \"GetReverseComplement\",\n    arguments={\"sequence\": test_sequence}\n)\nresult_data = client.parse_result(result)\nprint(f\"Original Sequence: {test_sequence}\")\nprint(f\"Reverse Complement:\\n{result_data}\\n\")\n\n## Step 4: Calculate annealing temperature for primers\nprint(\"Step 4: PCR Primer Annealing Temperature\")\nprimer_sequence = \"GCTAGCTAGCTA\"\n\nresult = await client.client.call_tool(\n    \"ComputeAnnealingTemperature\",\n    arguments={\"sequence\": primer_sequence}\n)\nresult_data = client.parse_result(result)\nprint(f\"Primer Sequence: {primer_sequence}\")\nprint(f\"Result:\\n{result_data}\\n\")\n\nawait client.disconnect()\n```\n\n### Tool Descriptions\n\n**SciToolAgent-Bio Server:**\n- `DNAMolecularWeightCalculator`: Calculate DNA molecular weight\n  - Args: `sequence_para` (str) - Formatted sequence with parameters\n  - Format: `\"seqName:SEQUENCE.strand=single\u002Fdouble,topology=linear\u002Fcircular\"`\n  - Returns: Molecular weight in Daltons\n\n- `CalculatorOligonucleotide`: Calculate oligonucleotide (RNA) properties\n  - Args: `sq` (str) - RNA sequence\n  - Returns: GC content (%), Tm (°C), molecular weight, extinction coefficient\n\n- `GetReverseComplement`: Generate reverse complement sequence\n  - Args: `sequence` (str) - DNA sequence\n  - Returns: Reverse complement sequence\n\n- `ComputeAnnealingTemperature`: Calculate primer annealing temperature\n  - Args: `sequence` (str) - Primer sequence\n  - Returns: Annealing temperature for PCR\n\n### Input\u002FOutput\n\n**Input:**\n- DNA sequences: Use A, T, G, C nucleotides\n- RNA sequences: Use A, U, G, C nucleotides\n- Sequence parameters for DNA: strand type (single\u002Fdouble) and topology (linear\u002Fcircular)\n\n**Output:**\n- **DNA Molecular Weight**: Mass in Daltons for DNA sequences\n- **GC Content**: Percentage of G and C nucleotides\n- **Tm (Melting Temperature)**: Temperature at which 50% of DNA is denatured\n- **Extinction Coefficient**: For nucleic acid quantification (M⁻¹cm⁻¹)\n- **Reverse Complement**: Complementary antiparallel sequence\n\n### Use Cases\n\n- Design PCR primers with appropriate annealing temperatures\n- Calculate oligonucleotide concentrations spectrophotometrically\n- Generate reverse complement for sequencing analysis\n- Analyze GC content for primer design\n- Plan molecular cloning experiments\n- Estimate DNA\u002FRNA molecular weights\n- Design and analyze synthetic oligonucleotides\n\n### Sequence Format for DNA Molecular Weight\n\nFormat: `\"seqName:SEQUENCE.strand=X,topology=Y\"`\n\nParameters:\n- `seqName`: Identifier for the sequence\n- `SEQUENCE`: DNA nucleotide sequence (A, T, G, C)\n- `strand`: Either \"single\" or \"double\"\n- `topology`: Either \"linear\" or \"circular\"\n\nExample: `\"plasmid1:ATGCATGC.strand=double,topology=circular\"`\n\n### GC Content and Tm\n\n- **High GC content (>60%)**: Higher melting temperature, more stable\n- **Low GC content (\u003C40%)**: Lower melting temperature, less stable\n- **Tm**: Used to determine PCR annealing temperature (typically Tm - 5°C)\n\n### Additional DNA\u002FRNA Tools Available\n\n- `ORFFind`: Find open reading frames\n- `TranslateDNAtoAminoAcidSequence`: Translate DNA to protein\n- `RepeatDNASequenceSearch`: Find repetitive sequences\n- `CpGIslandPrediction`: Predict CpG islands\n- `PCRPrimerProperties`: Analyze primer properties\n- `RandomDNAGeneration`: Generate random DNA sequences\n- `CircularDNAAlignment`: Align circular DNA sequences\n","# DNA\u002FRNA Sequence Analysis\n\n## Usage\n\n### 1. MCP Server Definition\n\nUse the same `BiologyToolsClient` class as defined in the protein-properties-calculation skill.\n\n### 2. DNA\u002FRNA Sequence Analysis Workflow\n\nThis workflow analyzes DNA and RNA sequences, calculating molecular weight, GC content, melting temperature, and generating reverse complements.\n\n**Workflow Steps:**\n\n1. **Calculate DNA Molecular Weight** - Compute molecular weight for DNA sequences\n2. **Calculate Oligonucleotide Properties** - Compute GC content, Tm, extinction coefficient for RNA\n3. **Generate Reverse Complement** - Create reverse complement sequence\n\n**Implementation:**\n\n```python\n## Initialize client\nHEADERS = {\"SCP-HUB-API-KEY\": \"\u003Cyour-api-key>\"}\n\nclient = BiologyToolsClient(\n    \"https:\u002F\u002Fscp.intern-ai.org.cn\u002Fapi\u002Fv1\u002Fmcp\u002F29\u002FSciToolAgent-Bio\",\n    HEADERS\n)\n\nif not await client.connect():\n    print(\"connection failed\")\n    exit()\n\nprint(\"=== DNA\u002FRNA Sequence Analysis ===\\n\")\n\n## Step 1: Calculate DNA molecular weight\nprint(\"Step 1: DNA Molecular Weight\")\ndna_sequence = \"ATGATGTAACGTAGCTAG\"\nsequence_para = f\"seq1:{dna_sequence}.strand=single,topology=linear\"\n\nresult = await client.client.call_tool(\n    \"DNAMolecularWeightCalculator\",\n    arguments={\"sequence_para\": sequence_para}\n)\nresult_data = client.parse_result(result)\nprint(f\"DNA Sequence: {dna_sequence}\")\nprint(f\"Result:\\n{result_data}\\n\")\n\n## Step 2: Calculate oligonucleotide (RNA) properties\nprint(\"Step 2: Oligonucleotide (RNA) Properties\")\nrna_sequence = \"AUGAUGUAACGUAGCUAG\"\n\nresult = await client.client.call_tool(\n    \"CalculatorOligonucleotide\",\n    arguments={\"sq\": rna_sequence}\n)\nresult_data = client.parse_result(result)\nprint(f\"RNA Sequence: {rna_sequence}\")\nprint(f\"Result:\\n{result_data}\\n\")\n\n## Step 3: Generate reverse complement\nprint(\"Step 3: Reverse Complement\")\ntest_sequence = \"ATCGATCG\"\n\nresult = await client.client.call_tool(\n    \"GetReverseComplement\",\n    arguments={\"sequence\": test_sequence}\n)\nresult_data = client.parse_result(result)\nprint(f\"Original Sequence: {test_sequence}\")\nprint(f\"Reverse Complement:\\n{result_data}\\n\")\n\n## Step 4: Calculate annealing temperature for primers\nprint(\"Step 4: PCR Primer Annealing Temperature\")\nprimer_sequence = \"GCTAGCTAGCTA\"\n\nresult = await client.client.call_tool(\n    \"ComputeAnnealingTemperature\",\n    arguments={\"sequence\": primer_sequence}\n)\nresult_data = client.parse_result(result)\nprint(f\"Primer Sequence: {primer_sequence}\")\nprint(f\"Result:\\n{result_data}\\n\")\n\nawait client.disconnect()\n```\n\n### Tool Descriptions\n\n**SciToolAgent-Bio Server:**\n- `DNAMolecularWeightCalculator`: Calculate DNA molecular weight\n  - Args: `sequence_para` (str) - Formatted sequence with parameters\n  - Format: `\"seqName:SEQUENCE.strand=single\u002Fdouble,topology=linear\u002Fcircular\"`\n  - Returns: Molecular weight in Daltons\n\n- `CalculatorOligonucleotide`: Calculate oligonucleotide (RNA) properties\n  - Args: `sq` (str) - RNA sequence\n  - Returns: GC content (%), Tm (°C), molecular weight, extinction coefficient\n\n- `GetReverseComplement`: Generate reverse complement sequence\n  - Args: `sequence` (str) - DNA sequence\n  - Returns: Reverse complement sequence\n\n- `ComputeAnnealingTemperature`: Calculate primer annealing temperature\n  - Args: `sequence` (str) - Primer sequence\n  - Returns: Annealing temperature for PCR\n\n### Input\u002FOutput\n\n**Input:**\n- DNA sequences: Use A, T, G, C nucleotides\n- RNA sequences: Use A, U, G, C nucleotides\n- Sequence parameters for DNA: strand type (single\u002Fdouble) and topology (linear\u002Fcircular)\n\n**Output:**\n- **DNA Molecular Weight**: Mass in Daltons for DNA sequences\n- **GC Content**: Percentage of G and C nucleotides\n- **Tm (Melting Temperature)**: Temperature at which 50% of DNA is denatured\n- **Extinction Coefficient**: For nucleic acid quantification (M⁻¹cm⁻¹)\n- **Reverse Complement**: Complementary antiparallel sequence\n\n### Use Cases\n\n- Design PCR primers with appropriate annealing temperatures\n- Calculate oligonucleotide concentrations spectrophotometrically\n- Generate reverse complement for sequencing analysis\n- Analyze GC content for primer design\n- Plan molecular cloning experiments\n- Estimate DNA\u002FRNA molecular weights\n- Design and analyze synthetic oligonucleotides\n\n### Sequence Format for DNA Molecular Weight\n\nFormat: `\"seqName:SEQUENCE.strand=X,topology=Y\"`\n\nParameters:\n- `seqName`: Identifier for the sequence\n- `SEQUENCE`: DNA nucleotide sequence (A, T, G, C)\n- `strand`: Either \"single\" or \"double\"\n- `topology`: Either \"linear\" or \"circular\"\n\nExample: `\"plasmid1:ATGCATGC.strand=double,topology=circular\"`\n\n### GC Content and Tm\n\n- **High GC content (>60%)**: Higher melting temperature, more stable\n- **Low GC content (\u003C40%)**: Lower melting temperature, less stable\n- **Tm**: Used to determine PCR annealing temperature (typically Tm - 5°C)\n\n### Additional DNA\u002FRNA Tools Available\n\n- `ORFFind`: Find open reading frames\n- `TranslateDNAtoAminoAcidSequence`: Translate DNA to protein\n- `RepeatDNASequenceSearch`: Find repetitive sequences\n- `CpGIslandPrediction`: Predict CpG islands\n- `PCRPrimerProperties`: Analyze primer properties\n- `RandomDNAGeneration`: Generate random DNA sequences\n- `CircularDNAAlignment`: Align circular DNA sequences\n",{"i18n":37,"name":5,"license":40,"metadata":41,"description":7},{"zh":38},{"description":39},"分析DNA\u002FRNA序列及属性。","MIT license",{"skill-author":42},"PJLab","main","4f96df0d9df0eae24a992afabe08edec5fc575f0","drclaw\u002Flocal_skill_hub\u002Fscience\u002Fprotein\u002Fdna-rna-sequence-analysis",10,"https:\u002F\u002Fgithub.com\u002FInternScience\u002FDrClaw","https:\u002F\u002Fgithub.com\u002FInternScience","Shanghai Artificial Intelligence Laboratory","2026-03-20 17:06:10",{"source":8,"skillName":5,"commands":52,"prompt":62,"zipAvailable":63},[53,56,59],{"tool":54,"command":55},"npx","npx skills add InternScience\u002FDrClaw --skill dna-rna-sequence-analysis",{"tool":57,"command":58},"bunx","bunx skills add InternScience\u002FDrClaw --skill dna-rna-sequence-analysis",{"tool":60,"command":61},"pnpm","pnpm dlx skills add InternScience\u002FDrClaw --skill dna-rna-sequence-analysis","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FInternScience\u002FDrClaw\u002Fblob\u002Fmain\u002Fdrclaw\u002Flocal_skill_hub\u002Fscience\u002Fprotein\u002Fdna-rna-sequence-analysis\u002FSKILL.md",true,[],[66,100,122,138,156,171],{"skillNo":67,"name":68,"nameZh":6,"description":69,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":70,"categories":71,"keywords":80,"publishedAt":32},"01M6DMQESTSBW8VJW03QWHMT85","scientific-critical-thinking","Evaluate scientific claims and evidence quality. Use for assessing experimental design validity, identifying biases and confounders, applying evidence grading frameworks (GRADE, Cochrane Risk of Bias), or teaching critical analysis. Best for understanding evidence quality, identifying flaws. For formal peer review writing use peer-review.","https:\u002F\u002Fgithub.com\u002FInternScience\u002FDrClaw\u002Fblob\u002Fmain\u002Fdrclaw\u002Flocal_skill_hub\u002Fthinking\u002Fscientific-critical-thinking\u002FSKILL.md",[72,75],{"categoryNo":73,"categoryName":74,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":76,"categoryName":77,"taxonomyType":78,"taxonomyTypeDesc":79},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",[81,82,83,84,85,86,87,24,88,89,90,91,92,93,94,95,96,97,98,99],"critical","scientific critical thinking","thinking","design","writing","review","risk","peer review","Bash","quality","read","write","edit","use","evidence","peer","frameworks","teaching","bias",{"skillNo":101,"name":102,"nameZh":6,"description":103,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":104,"categories":105,"keywords":106,"publishedAt":32},"01M6DMQ77Z121463E049G2DG8K","scientific-brainstorming","Creative research ideation and exploration. Use for open-ended brainstorming sessions, exploring interdisciplinary connections, challenging assumptions, or identifying research gaps. Best for early-stage research planning when you do not have specific observations yet. For formulating testable hypotheses from data use hypothesis-generation.","https:\u002F\u002Fgithub.com\u002FInternScience\u002FDrClaw\u002Fblob\u002Fmain\u002Fdrclaw\u002Flocal_skill_hub\u002Fthinking\u002Fscientific-brainstorming\u002FSKILL.md",[],[107,108,109,110,111,30,112,113,114,115,116,117,118,119,120,121,94],"brainstorming","scientific brainstorming","research ideation","stage","connections","exploration","do","planning","creative","ideation","research","sessions","data","hypothesis","open",{"skillNo":123,"name":124,"nameZh":6,"description":125,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":126,"categories":127,"keywords":132,"publishedAt":32},"01M6DMPV4AMCCTWARGPSFHDWJB","scientific-literature-search","Search scientific literature and research papers using FlowSearch to find relevant academic articles and publications.","https:\u002F\u002Fgithub.com\u002FInternScience\u002FDrClaw\u002Fblob\u002Fmain\u002Fdrclaw\u002Flocal_skill_hub\u002Fsearch\u002Fscientific-literature-search\u002FSKILL.md",[128,131],{"categoryNo":129,"categoryName":130,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000021","资料检索与研究",{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[133,134,117,135,136,137],"search","scientific literature search","find","Academic","搜索",{"skillNo":139,"name":140,"nameZh":6,"description":141,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":142,"categories":143,"keywords":150,"publishedAt":32},"01M6DMPQJP8HVFV54V05D6K9HA","pubmed-article-search","Search PubMed database for scientific articles and publications to retrieve biomedical literature.","https:\u002F\u002Fgithub.com\u002FInternScience\u002FDrClaw\u002Fblob\u002Fmain\u002Fdrclaw\u002Flocal_skill_hub\u002Fsearch\u002Fpubmed-article-search\u002FSKILL.md",[144,147],{"categoryNo":145,"categoryName":146,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000018","写作与文案",{"categoryNo":148,"categoryName":149,"taxonomyType":78,"taxonomyTypeDesc":79},"01JBSEEDCAT000000000000036","内容创作者",[151,152,133,137,153,154,155],"pubmed article search","article","database","pubmed database","biomedical",{"skillNo":157,"name":158,"nameZh":6,"description":159,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":160,"categories":161,"keywords":163,"publishedAt":32},"01M6DMPK4H3JQ185M97BRB9KQJ","biomedical-web-search","Search biomedical literature and web content using Tavily search engine for research and clinical information.","https:\u002F\u002Fgithub.com\u002FInternScience\u002FDrClaw\u002Fblob\u002Fmain\u002Fdrclaw\u002Flocal_skill_hub\u002Fsearch\u002Fbiomedical-web-search\u002FSKILL.md",[162],{"categoryNo":129,"categoryName":130,"taxonomyType":21,"taxonomyTypeDesc":22},[164,155,165,133,166,167,117,168,169,137,170],"biomedical web search","web search","web","tavily","content","engine","clinical",{"skillNo":172,"name":173,"nameZh":6,"description":174,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":175,"categories":176,"keywords":178,"publishedAt":32},"01M6DMNNJH9V1S5PQHZRX0N934","uniprot-protein-retrieval","Retrieve protein sequences and functional information from UniProt database by protein name, enabling protein analysis and bioinformatics workflows.","https:\u002F\u002Fgithub.com\u002FInternScience\u002FDrClaw\u002Fblob\u002Fmain\u002Fdrclaw\u002Flocal_skill_hub\u002Fscience\u002Fprotein\u002Funiprot-protein-retrieval\u002FSKILL.md",[177],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[179,153,24,180,181,182,183],"uniprot protein retrieval","uniprot database","bioinformatics","name","workflows"]