Skip to main content
Glama

SAMtools MCP(모델 제어 프로토콜)

SAMtools에 대한 모델 제어 프로토콜 구현으로, SAM/BAM/CRAM 파일 작업을 위한 표준화된 인터페이스를 제공합니다.

특징

  • SAM/BAM/CRAM 파일 보기 및 변환

  • 정렬 파일 정렬

  • BAM/CRAM 파일 인덱스

  • 통계 생성

  • 여러 BAM 파일 병합

  • 읽기 깊이 계산

  • FASTA 파일 인덱스

  • 그리고 더 많은 것...

핵심 역량

  • 파일 형식 지원 : SAM(텍스트), BAM(바이너리), CRAM(압축) 정렬 파일 처리

  • 형식 변환 : SAM, BAM 및 CRAM 형식 간을 원활하게 변환합니다.

  • 지역별 분석 : 특정 게놈 지역 추출 및 분석

  • 플래그 기반 필터링 : SAM 플래그를 기반으로 읽기 필터링

  • 성능 최적화 : 정렬 및 병합을 위한 멀티스레드 작업

  • 통계 분석 : 포괄적인 정렬 통계 생성

도구 개요

도구

설명

주요 특징

view

정렬 파일 보기 및 변환

- 포맷 변환(SAM/BAM/CRAM) - 지역 필터링 - 플래그 기반 필터링 - 헤더 조작

sort

정렬 파일 정렬

- 좌표 기반 정렬 - 이름 기반 정렬 - 스레드당 메모리 제어 - 멀티 스레딩 지원

index

BAM/CRAM 파일 인덱스

- BAI 지수 생성 - CSI 지수 지원 - CRAM 지수 생성

merge

여러 BAM/CRAM 파일 병합

- 다중 파일 병합 - 스레드 지원 처리 - 헤더 조정

depth

읽기 깊이 계산

- 베이스별 깊이 계산 - 지역별 분석 - 다중 파일 지원

flagstat

정렬 통계 생성

- 포괄적인 플래그 통계 - 품질 검사 - 페어드엔드 메트릭

idxstats

BAM/CRAM 지수 통계

- 참조 시퀀스 통계 - 매핑/비매핑 카운트 - 길이 정보

faidx

FASTA 파일 인덱스

- FASTA 인덱싱 - 영역 추출 - 시퀀스 검색

Related MCP server: Maya MCP

설치

Docker 사용(권장)

SAMtools MCP를 사용하는 가장 쉬운 방법은 Docker를 사용하는 것입니다.

지엑스피1

로컬 설치

  1. 저장소를 복제합니다.

git clone https://github.com/your-username/samtools_mcp.git
cd samtools_mcp
  1. 종속성 설치:

pip install uv
uv pip install -r requirements.txt

구성

MCP 서버 구성

Docker 이미지를 사용하도록 MCP 서버를 구성하려면 MCP 구성 파일에 다음을 추가하세요.

{
  "servers": {
    "samtools": {
      "type": "docker",
      "image": "nadhir/samtools-mcp:latest",
      "volumes": [
        {
          "source": "/path/to/your/data",
          "target": "/data"
        }
      ]
    }
  }
}

로컬 MCP 구성

uv 사용하여 MCP를 실행하도록 구성하려면 ~/.cursor/mcp.json 에 다음을 추가합니다.

{
  "samtools_mcp": {
    "command": "uv",
    "args": ["run", "--with", "fastmcp", "fastmcp", "run", "/path/to/samtools_mcp.py"]
  }
}

/path/to/samtools_mcp.py samtools_mcp.py 파일의 실제 경로로 바꾸세요.

용법

기본 명령

  1. BAM 파일 보기:

from samtools_mcp import SamtoolsMCP

mcp = SamtoolsMCP()
result = mcp.view(input_file="/data/example.bam")
  1. BAM 파일 정렬:

result = mcp.sort(input_file="/data/example.bam", output_file="/data/sorted.bam")
  1. 인덱스 BAM 파일:

result = mcp.index(input_file="/data/sorted.bam")

고급 사용법

  1. 플래그가 있는 특정 지역 보기:

result = mcp.view(
    input_file="/data/example.bam",
    region="chr1:1000-2000",
    flags_required="0x2",
    output_format="SAM"
)
  1. 읽은 이름으로 정렬:

result = mcp.sort(
    input_file="/data/example.bam",
    output_file="/data/namesorted.bam",
    sort_by_name=True
)
  1. 여러 입력 파일로 깊이 계산:

result = mcp.depth(
    input_files=["/data/sample1.bam", "/data/sample2.bam"],
    region="chr1:1-1000000"
)

기여하다

기여를 환영합니다! 풀 리퀘스트를 제출해 주세요.

특허

이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여되었습니다. 자세한 내용은 라이선스 파일을 참조하세요.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

No tool schema history has been recorded yet.

Maintenance

ActivityInactive
ResponsivenessNo issues

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sirusb/samtools_mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server