How xuebin-feng/emap-ssn works
EMAP-SSN is an interactive protein sequence similarity network platform. Its main workflow prepares protein sequences, computes similarity through traditional or embedding-based methods, builds network/layout data, then supports interactive network and alignment analysis. The repository also exposes pipeline and Viewer capabilities through a local STDIO MCP server. Relationships for unsampled modules are limited to the workflows and capabilities described in the README; source excerpts were partial.
Main entry points: HDF5_Storage.py HDF5 Data · EMAPSSN_Tools.py Tools GUI · EMAPSSN_Viewer.py SSN Viewer · Layout_Cache_Generator.py Layout Cache
Components 26
SSN Generation
- Sequence Preparation
src/tools/Sanitize_Sequences.py - Embedding Generation
src/tools/Generate_Embeddings.py - Sequence Similarity
src/tools/Embedding_PWA.py - Embedding Search
src/tools/Embedding_SSEARCH.py - Network Extraction
src/tools/Network_Extraction.py - Network Injection
src/tools/Network_Injection.py - Alignment Processing
src/tools/Embedding_MSA.py - HDF5 Data
src/utilities/HDF5_Storage.py
Network Analysis
- Layout Cache
src/Layout_Cache_Generator.py - SSN Layout
src/Layout_Engine_SSN.py - UMAP Layout
src/Layout_Engine_UMAP.py
Interactive Viewer
- SSN Viewer
src/EMAPSSN_Viewer.py - Analysis Commands
src/Command_Engine.py - Alignment Query
src/commands/query.py
User Interfaces
- Tools GUI
src/EMAPSSN_Tools.py - Desktop Viewer
src/desktop/Desktop_App.py - Web Server
src/web_ui/Web_Server.py - Web Plugins
src/web_ui/Plugin_Manager.py
MCP Access
- MCP Server
src/EMAPSSN_MCP_Server.py - Workflow Dispatch
src/mcp_server/core/Workflow_Dispatch.py - Pipeline Operations
src/mcp_server/pipeline/Pipeline_Operations.py - Pipeline Jobs
src/mcp_server/pipeline/Pipeline_Jobs.py - File Inspection
src/mcp_server/pipeline/Pipeline_File_Inspection.py - Viewer Operations
src/mcp_server/viewer/Viewer_Operations.py
Other components
- Researcher
- MCP Client
Connections 32
- Researcher → Tools GUI: configures and runs
- Tools GUI → Sequence Preparation: runs pipeline tool
- Tools GUI → Embedding Generation: runs pipeline tool
- Tools GUI → Sequence Similarity: runs pipeline tool
- Tools GUI → Embedding Search: runs pipeline tool
- Sequence Preparation → HDF5 Data: writes sequence data
- Embedding Generation → HDF5 Data: writes embeddings
- Sequence Similarity → Network Extraction: similarity results
- Embedding Search → Network Extraction: similarity results
- Network Extraction → HDF5 Data: writes network data
- Network Injection → HDF5 Data: updates network data
- Alignment Processing → HDF5 Data: stores alignments
- Layout Cache → SSN Layout: calculates layout
- Layout Cache → UMAP Layout: calculates layout
- Layout Cache → HDF5 Data: reads network data
- Layout Cache → HDF5 Data: writes layout cache
- Researcher → Desktop Viewer: opens application
- Desktop Viewer → SSN Viewer: launches
- SSN Viewer → HDF5 Data: loads network data
- SSN Viewer → Analysis Commands: dispatches commands
- Analysis Commands → Alignment Query: dispatches query
- Alignment Query → HDF5 Data: reads alignment data
- SSN Viewer → Web Server: serves web interface
- Web Server → Web Plugins: activates plugins
- MCP Client → MCP Server: STDIO requests
- MCP Server → Workflow Dispatch: dispatches workflows
- Workflow Dispatch → Pipeline Operations: routes pipeline actions
- Pipeline Operations → Pipeline Jobs: submits and monitors
- Pipeline Jobs → Tools GUI: runs pipeline programs
- Pipeline Operations → File Inspection: inspects files
- Workflow Dispatch → Viewer Operations: routes Viewer actions
- Viewer Operations → SSN Viewer: controls Viewer