protein_similarity_search

Protein Similarity Search - Search for similar proteins: extract sequence from PDB, search structures with FoldSeek, find homologs with STRING, and check UniProt. Use this skill for bioinformatics tasks involving extract pdb sequence foldseek search get best similarity hits between species search uniprotkb entries. Combines 4 tools from 3 SCP server(s).

Best use case

protein_similarity_search is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Protein Similarity Search - Search for similar proteins: extract sequence from PDB, search structures with FoldSeek, find homologs with STRING, and check UniProt. Use this skill for bioinformatics tasks involving extract pdb sequence foldseek search get best similarity hits between species search uniprotkb entries. Combines 4 tools from 3 SCP server(s).

Teams using protein_similarity_search should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/protein_similarity_search/SKILL.md --create-dirs "https://raw.githubusercontent.com/SpectrAI-Initiative/InnoClaw/main/.claude/skills/protein_similarity_search/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/protein_similarity_search/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How protein_similarity_search Compares

Feature / Agentprotein_similarity_searchStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Protein Similarity Search - Search for similar proteins: extract sequence from PDB, search structures with FoldSeek, find homologs with STRING, and check UniProt. Use this skill for bioinformatics tasks involving extract pdb sequence foldseek search get best similarity hits between species search uniprotkb entries. Combines 4 tools from 3 SCP server(s).

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Protein Similarity Search

**Discipline**: Bioinformatics | **Tools Used**: 4 | **Servers**: 3

## Description

Search for similar proteins: extract sequence from PDB, search structures with FoldSeek, find homologs with STRING, and check UniProt.

## Tools Used

- **`extract_pdb_sequence`** from `server-1` (sse) - `https://scp.intern-ai.org.cn/api/v1/mcp/1/VenusFactory`
- **`foldseek_search`** from `server-1` (sse) - `https://scp.intern-ai.org.cn/api/v1/mcp/1/VenusFactory`
- **`get_best_similarity_hits_between_species`** from `string-server` (streamable-http) - `https://scp.intern-ai.org.cn/api/v1/mcp/6/Origene-STRING`
- **`search_uniprotkb_entries`** from `uniprot-server` (streamable-http) - `https://scp.intern-ai.org.cn/api/v1/mcp/10/Origene-UniProt`

## Workflow

1. Extract sequence from PDB
2. Search similar structures via FoldSeek
3. Find cross-species homologs with STRING
4. Search UniProt for related entries

## Test Case

### Input
```json
{
    "pdb_id": "1AKE"
}
```

### Expected Steps
1. Extract sequence from PDB
2. Search similar structures via FoldSeek
3. Find cross-species homologs with STRING
4. Search UniProt for related entries

## Usage Example

> **Note:** Replace `sk-b04409a1-b32b-4511-9aeb-22980abdc05c` with your own SCP Hub API Key. You can obtain one from the [SCP Platform](https://scphub.intern-ai.org.cn).

```python
import asyncio
import json
from contextlib import AsyncExitStack
from mcp import ClientSession
from mcp.client.streamable_http import streamablehttp_client
from mcp.client.sse import sse_client

SERVERS = {
    "server-1": "https://scp.intern-ai.org.cn/api/v1/mcp/1/VenusFactory",
    "string-server": "https://scp.intern-ai.org.cn/api/v1/mcp/6/Origene-STRING",
    "uniprot-server": "https://scp.intern-ai.org.cn/api/v1/mcp/10/Origene-UniProt"
}

async def connect(url, stack):
    transport = streamablehttp_client(url=url, headers={"SCP-HUB-API-KEY": "sk-b04409a1-b32b-4511-9aeb-22980abdc05c"})
    read, write, _ = await stack.enter_async_context(transport)
    ctx = ClientSession(read, write)
    session = await stack.enter_async_context(ctx)
    await session.initialize()
    return session

def parse(result):
    try:
        if hasattr(result, 'content') and result.content:
            c = result.content[0]
            if hasattr(c, 'text'):
                try: return json.loads(c.text)
                except: return c.text
        return str(result)
    except: return str(result)

async def main():
    async with AsyncExitStack() as stack:
        # Connect to required servers
        sessions = {}
        sessions["server-1"] = await connect("https://scp.intern-ai.org.cn/api/v1/mcp/1/VenusFactory", stack)
        sessions["string-server"] = await connect("https://scp.intern-ai.org.cn/api/v1/mcp/6/Origene-STRING", stack)
        sessions["uniprot-server"] = await connect("https://scp.intern-ai.org.cn/api/v1/mcp/10/Origene-UniProt", stack)

        # Execute workflow steps
        # Step 1: Extract sequence from PDB
        result_1 = await sessions["server-1"].call_tool("extract_pdb_sequence", arguments={})
        data_1 = parse(result_1)
        print(f"Step 1 result: {json.dumps(data_1, indent=2, ensure_ascii=False)[:500]}")

        # Step 2: Search similar structures via FoldSeek
        result_2 = await sessions["server-1"].call_tool("foldseek_search", arguments={})
        data_2 = parse(result_2)
        print(f"Step 2 result: {json.dumps(data_2, indent=2, ensure_ascii=False)[:500]}")

        # Step 3: Find cross-species homologs with STRING
        result_3 = await sessions["string-server"].call_tool("get_best_similarity_hits_between_species", arguments={})
        data_3 = parse(result_3)
        print(f"Step 3 result: {json.dumps(data_3, indent=2, ensure_ascii=False)[:500]}")

        # Step 4: Search UniProt for related entries
        result_4 = await sessions["uniprot-server"].call_tool("search_uniprotkb_entries", arguments={})
        data_4 = parse(result_4)
        print(f"Step 4 result: {json.dumps(data_4, indent=2, ensure_ascii=False)[:500]}")

        # Cleanup
        print("Workflow complete!")

if __name__ == "__main__":
    asyncio.run(main())
```

Related Skills

uniprot-protein-retrieval

370
from SpectrAI-Initiative/InnoClaw

Retrieve protein sequences and functional information from UniProt database by protein name, enabling protein analysis and bioinformatics workflows.

substructure_activity_search

370
from SpectrAI-Initiative/InnoClaw

Substructure-Activity Relationship - Analyze substructure-activity: ChEMBL substructure search, activity data, PubChem compounds, and similarity. Use this skill for medicinal chemistry tasks involving get substructure by smiles search activity search pubchem by smiles calculate smiles similarity. Combines 4 tools from 3 SCP server(s).

scientific-literature-search

370
from SpectrAI-Initiative/InnoClaw

Search scientific literature and research papers using FlowSearch to find relevant academic articles and publications.

Researcher Rigor Gate

370
from SpectrAI-Initiative/InnoClaw

Use before plan submission, major plan revision, and major stage transitions. Verify alignment, feasibility, rigor, completeness, and prevent unjustified regressions to earlier workflow phases.

Researcher Replan And Recovery

370
from SpectrAI-Initiative/InnoClaw

Use when the workflow hits contradictions, missing evidence, failed runs, design flaws, or resource shifts. Diagnose the failure class, choose the narrowest safe correction, and escalate to the user when the core plan changes.

Researcher Plan Architect

370
from SpectrAI-Initiative/InnoClaw

Use when the Researcher must convert a confirmed scientific goal into a staged, executable research plan with role assignments, milestones, resources, checkpoints, and risk controls.

Researcher Dispatch Supervisor

370
from SpectrAI-Initiative/InnoClaw

Use after the user confirms the plan. Dispatch the next justified worker task, supervise progress, enforce artifact-backed completion, and keep the workflow aligned with the approved plan.

Researcher Context Audit

370
from SpectrAI-Initiative/InnoClaw

Use when the Researcher starts, resumes, or reaches a major decision point. Build a context inventory from workstation materials, prior messages, existing artifacts, requirements, and unfinished work.

Researcher Ambiguity Gate

370
from SpectrAI-Initiative/InnoClaw

Use when the research goal, evaluation target, scope, resources, timeline, or decision criteria are ambiguous, conflicting, or not operationally testable.

Research Ideation Full

370
from SpectrAI-Initiative/InnoClaw

Use when the user wants the full research ideation workflow grounded in one seed paper, including complete ideation, feasibility review, experiment planning, and final synthesis, or makes an equivalent ideation request in another language.

pubmed-article-search

370
from SpectrAI-Initiative/InnoClaw

Search PubMed database for scientific articles and publications to retrieve biomedical literature.

pubchem-smiles-search

370
from SpectrAI-Initiative/InnoClaw

Search PubChem database using SMILES strings to retrieve compound information and chemical properties.