Skip to main content
Glama
ko1ynnky

GitHub Actions MCP Server

by ko1ynnky

GitHub Actions MCP 서버

대장간 배지

GitHub Actions API용 MCP 서버로, AI 어시스턴트가 GitHub Actions 워크플로를 관리하고 운영할 수 있도록 지원합니다. Claude Desktop, Codeium, Windsurf를 포함한 여러 AI 코딩 어시스턴트와 호환됩니다.

특징

  • 완벽한 워크플로 관리 : 워크플로 나열, 보기, 트리거, 취소 및 다시 실행

  • 워크플로 실행 분석 : 워크플로 실행 및 해당 작업에 대한 자세한 정보를 얻으세요.

  • 포괄적인 오류 처리 : 향상된 세부 정보를 포함한 명확한 오류 메시지

  • 유연한 유형 검증 : API 변형을 우아하게 처리하여 강력한 유형 검사

  • 보안 중심 설계 : 시간 초과 처리, 속도 제한 및 엄격한 URL 유효성 검사

도구

  1. list_workflows

    • GitHub 저장소의 워크플로 나열

    • 입력:

      • owner (문자열): 저장소 소유자(사용자 이름 또는 조직)

      • repo (문자열): 저장소 이름

      • page (선택적 숫자): 페이지 번호

      • perPage (선택적 숫자): 페이지당 결과(최대 100개)

    • 반환: 저장소의 워크플로 목록

  2. get_workflow

    • 특정 워크플로의 세부 정보 가져오기

    • 입력:

      • owner (문자열): 저장소 소유자(사용자 이름 또는 조직)

      • repo (문자열): 저장소 이름

      • workflowId (문자열 또는 숫자): 워크플로 또는 파일 이름의 ID

    • 반환: 워크플로에 대한 자세한 정보

  3. get_workflow_usage

    • 워크플로우의 사용 통계 가져오기

    • 입력:

      • owner (문자열): 저장소 소유자(사용자 이름 또는 조직)

      • repo (문자열): 저장소 이름

      • workflowId (문자열 또는 숫자): 워크플로 또는 파일 이름의 ID

    • 반환: 청구 가능한 시간을 포함한 사용 통계

  4. list_workflow_runs

    • 저장소 또는 특정 워크플로에 대한 모든 워크플로 실행을 나열합니다.

    • 입력:

      • owner (문자열): 저장소 소유자(사용자 이름 또는 조직)

      • repo (문자열): 저장소 이름

      • workflowId (선택적 문자열 또는 숫자): 워크플로 또는 파일 이름의 ID

      • actor (선택 문자열): 워크플로를 트리거한 사용자로 필터링

      • branch (선택적 문자열): branch로 필터링

      • event (선택 문자열): 이벤트 유형별 필터링

      • status (선택 문자열): 상태별 필터링

      • created (선택 문자열): 생성 날짜(YYYY-MM-DD)로 필터링

      • excludePullRequests (선택적 부울): PR 트리거 실행 제외

      • checkSuiteId (선택적 숫자): 체크 스위트 ID로 필터링

      • page (선택적 숫자): 페이지 번호

      • perPage (선택적 숫자): 페이지당 결과(최대 100개)

    • 반환: 기준과 일치하는 워크플로 실행 목록

  5. get_workflow_run

    • 특정 워크플로 실행에 대한 세부 정보 가져오기

    • 입력:

      • owner (문자열): 저장소 소유자(사용자 이름 또는 조직)

      • repo (문자열): 저장소 이름

      • runId (숫자): 워크플로 실행의 ID

    • 반환: 특정 워크플로 실행에 대한 자세한 정보

  6. get_workflow_run_jobs

    • 특정 워크플로 실행에 대한 작업 가져오기

    • 입력:

      • owner (문자열): 저장소 소유자(사용자 이름 또는 조직)

      • repo (문자열): 저장소 이름

      • runId (숫자): 워크플로 실행의 ID

      • filter (선택적 문자열): 완료 상태('최신', '모두')로 작업을 필터링합니다.

      • page (선택적 숫자): 페이지 번호

      • perPage (선택적 숫자): 페이지당 결과(최대 100개)

    • 반환: 워크플로 실행의 작업 목록

  7. trigger_workflow

    • 워크플로 실행 트리거

    • 입력:

      • owner (문자열): 저장소 소유자(사용자 이름 또는 조직)

      • repo (문자열): 저장소 이름

      • workflowId (문자열 또는 숫자): 워크플로 또는 파일 이름의 ID

      • ref (문자열): 워크플로를 실행할 참조(분기, 태그 또는 SHA)

      • inputs (선택적 객체): 워크플로에 대한 입력 매개변수

    • 반환: 트리거된 워크플로 실행에 대한 정보

  8. cancel_workflow_run

    • 워크플로 실행 취소

    • 입력:

      • owner (문자열): 저장소 소유자(사용자 이름 또는 조직)

      • repo (문자열): 저장소 이름

      • runId (숫자): 워크플로 실행의 ID

    • 반환: 취소 작업의 상태

  9. rerun_workflow

    • 워크플로 실행을 다시 실행합니다.

    • 입력:

      • owner (문자열): 저장소 소유자(사용자 이름 또는 조직)

      • repo (문자열): 저장소 이름

      • runId (숫자): 워크플로 실행의 ID

    • 반환: 재실행 작업의 상태

AI 코딩 어시스턴트와 함께 사용

이 MCP 서버는 Claude Desktop, Codeium, Windsurf를 포함한 여러 AI 코딩 어시스턴트와 호환됩니다.

클로드 데스크탑

먼저 프로젝트를 빌드했는지 확인하세요(아래 빌드 섹션 참조). 그런 다음 claude_desktop_config.json 파일에 다음을 추가하세요.

지엑스피1

코디움

Codeium MCP 구성 파일(일반적으로 Unix 기반 시스템에서는 ~/.codeium/windsurf/mcp_config.json 에 있고, Windows에서는 %USERPROFILE%\.codeium\windsurf\mcp_config.json 에 있음)에 다음 구성을 추가합니다.

{ "mcpServers": { "github-actions": { "command": "node", "args": [ "<path-to-mcp-server>/dist/index.js" ], "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>" } } } }

윈드서핑

Windsurf는 Codeium과 동일한 구성 형식을 사용합니다. 위에 표시된 Codeium의 Windsurf MCP 구성에 서버를 추가하세요.

Related MCP server: GitHub MCP Server Plus

짓다

유닉스/리눅스/맥OS

저장소를 복제하고 빌드합니다.

git clone https://github.com/ko1ynnky/github-actions-mcp-server.git cd github-actions-mcp-server npm install npm run build

윈도우

Windows 시스템의 경우 Windows 전용 빌드 명령을 사용하세요.

git clone https://github.com/ko1ynnky/github-actions-mcp-server.git cd github-actions-mcp-server npm install npm run build:win

또는 포함된 배치 파일을 사용할 수 있습니다.

run-server.bat [optional-github-token]

이렇게 하면 MCP 서버를 실행하는 데 필요한 파일이 dist 디렉토리에 생성됩니다.

Windows 관련 지침

필수 조건

  • Node.js(v14 이상)

  • npm(v6 이상)

Windows에서 서버 실행

  1. 배치 파일 사용(가장 간단한 방법):

    run-server.bat [optional-github-token]

    이렇게 하면 빌드가 있는지 확인하고, 필요한 경우 빌드하고, 서버를 시작합니다.

  2. npm을 직접 사용하는 경우:

    npm run start

Windows에서 GitHub 개인 액세스 토큰 설정

모든 기능을 활용하고 속도 제한을 피하려면 GitHub 개인 액세스 토큰을 설정해야 합니다.

옵션:

  1. 배치 파일에 매개변수로 전달합니다.

    run-server.bat your_github_token_here
  2. 환경 변수로 설정하세요:

    set GITHUB_PERSONAL_ACCESS_TOKEN=your_github_token_here npm run start

Windows 문제 해결

문제가 발생하는 경우:

  1. 빌드 오류 : TypeScript가 올바르게 설치되었는지 확인하세요.

    npm install -g typescript
  2. 권한 문제 : 적절한 권한으로 명령 프롬프트에서 명령을 실행하고 있는지 확인하세요.

  3. Node.js 오류 : 호환되는 Node.js 버전을 사용하고 있는지 확인하세요.

    node --version

사용 예

저장소의 워크플로 나열:

const result = await listWorkflows({ owner: "your-username", repo: "your-repository" });

워크플로 트리거:

const result = await triggerWorkflow({ owner: "your-username", repo: "your-repository", workflowId: "ci.yml", ref: "main", inputs: { environment: "production" } });

문제 해결

일반적인 문제

  1. 인증 오류 :

    • GitHub 토큰에 올바른 권한이 있는지 확인하세요.

    • 토큰이 환경 변수로 올바르게 설정되었는지 확인하세요.

  2. 속도 제한 :

    • 서버는 GitHub API 제한에 도달하지 않도록 속도 제한을 구현합니다.

    • 속도 제한 오류가 발생하면 요청 빈도를 줄이십시오.

  3. 유형 검증 오류 :

    • GitHub API 응답은 예상 스키마와 다를 수 있습니다.

    • 서버는 대부분의 변형을 처리하기 위해 유연한 검증을 구현합니다.

    • 지속적으로 오류가 발생하는 경우 문제를 열어주세요.

특허

이 MCP 서버는 MIT 라이선스에 따라 라이선스가 부여되었습니다.

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/ko1ynnky/github-actions-mcp-server'

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