Skip to main content
Glama

eClass MCP 서버

특징

  • 인증 : UoA의 CAS SSO 인증 시스템을 통해 eClass에 로그인하세요.

  • 과정 관리 : 등록된 과정 목록 검색

  • 세션 관리 : 도구 호출 간에 인증된 세션을 유지합니다.

  • 상태 확인 : 인증 상태 확인

Related MCP server: Google Classroom MCP Server

프로젝트 구조

이 프로젝트는 더 나은 유지 관리를 위해 모듈형 아키텍처를 따릅니다.

지엑스피1

설치

UV를 사용하여 서버를 설치합니다(권장):

# Clone the repository git clone https://github.com/yourusername/eClass-MCP-server.git cd eClass-MCP-server # Install dependencies uv sync --dev --all-extras

또는 pip로 설치하세요.

pip install -e .

구성

다음 구성으로 루트 디렉토리에 .env 파일을 만듭니다(또는 제공된 example.env 파일을 복사하여 이름을 바꿉니다).

ECLASS_URL=https://eclass.uoa.gr ECLASS_USERNAME=your_username ECLASS_PASSWORD=your_password

모든 자격 증명은 .env 파일에 제공해야 합니다. 서버는 자격 증명을 매개변수로 허용하지 않습니다.

용법

단말기

진입점 스크립트를 사용하여 서버를 실행합니다.

python run_server.py

또는 모듈로:

python -m src.eclass_mcp_server.server

커서

설정 -> MCP로 이동합니다. Add new MCP server 클릭합니다.

  • 에이전트가 서버의 용도를 알 수 있도록 고유하면서도 적절한 이름을 선택하십시오(예: "eClass Server").

  • "유형"에서 command 옵션을 선택하세요

  • 명령 입력에 다음을 추가합니다: python /path/to/eclass-mcp-server/run_server.py

이 명령은 MCP 클라이언트를 server.py 에 있는 메인 서버 진입점과 연결하는 run_server.py 스크립트를 실행합니다.

클로드 데스크탑

Claude Desktop과 함께 사용하려면:

  1. 클로드 데스크톱 열기

  2. 설정 > 서버로 이동하세요

  3. 다음 세부정보로 새로운 서버를 추가하세요.

    • 이름: eClass MCP

    • 명령어: run_server.py 스크립트 경로

  4. 서버 추가를 클릭하세요

  5. Claude와 채팅할 때 드롭다운에서 서버를 선택하세요

도구

서버는 MCP 클라이언트와 함께 사용할 수 있는 다음 도구를 제공합니다.

로그인

SSO 인증을 사용하여 eClass에 로그인하세요.

{ "random_string": "any_value" }

코스를 얻으세요

등록된 과목 목록을 검색합니다(먼저 로그인이 필요합니다).

{ "random_string": "any_value" }

로그아웃

eClass에서 로그아웃합니다.

{ "random_string": "any_value" }

인증 상태

현재 인증 상태를 확인하세요.

{ "random_string": "any_value" }

테스트

이 프로젝트에는 기능을 검증하기 위한 테스트 스크립트가 포함되어 있습니다.

# Run all tests python -m src.eclass_mcp_server.test.run_all_tests # Run specific tests python -m src.eclass_mcp_server.test.test_login python -m src.eclass_mcp_server.test.test_courses

MCP 클라이언트 사용 예

from mcp import ClientSession, StdioServerParameters from mcp.client.stdio import stdio_client import asyncio async def run_agent(): server_params = StdioServerParameters( command="python /path/to/eclass-mcp-server/run_server.py", ) async with stdio_client(server_params) as (read, write): async with ClientSession(read, write) as session: # Initialize the session await session.initialize() # Login to eClass login_result = await session.call_tool("login", { "random_string": "dummy" }) print(login_result) # Get courses courses_result = await session.call_tool("get_courses", { "random_string": "dummy" }) print(courses_result) # Logout logout_result = await session.call_tool("logout", { "random_string": "dummy" }) print(logout_result) if __name__ == "__main__": asyncio.run(run_agent())

AI 에이전트와의 통합

이 MCP 서버는 모델 컨텍스트 프로토콜(MCP)을 지원하는 AI 에이전트와 함께 사용하도록 설계되었습니다. 이를 통해 AI 시스템은 eClass와 직접 상호 작용하여 다음과 같은 기능을 구현할 수 있습니다.

  • 과정 정보 검색

  • 강좌 공지사항 확인

  • 강의 자료 접근

  • 과제 제출(향후 기능)

보안 고려 사항

  • 서버는 민감한 인증 자격 증명을 처리합니다.

  • 자격 증명은 인증에만 사용되며 영구적으로 저장되지 않습니다.

  • 세션 쿠키는 서버의 수명 주기 동안 메모리에 유지됩니다.

  • 서버는 작업을 수행하기 전에 세션 상태를 검증합니다.

  • 자격 증명이 포함된 .env 파일은 버전 제어에 커밋되어서는 안 됩니다(.gitignore에 포함됨).

특허

MIT 라이센스

기여하다

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

Deploy Server
A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

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/sdi2200262/eclass-mcp-server'

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