oOo0oOo/lean-lsp-mcp
Lean Theorem Prover MCP
lean-lsp-mcp – Lean 정리 증명기를 위한 MCP 서버
소개 – Lean 4 언어 서버 위에서 작동하는 Python 기반 Model Context Protocol (MCP) 서버입니다. Lean의 진단 정보, 목표, 호버 정보 및 일련의 검색 도구 (LeanSearch, Loogle, Lean Finder, Lean Hammer)를 tools로 노출하여 LLM 에이전트 (Claude Code, Cursor, Mistral Vibe 등)가 호출할 수 있도록 합니다. 간단히 말해, LLM이 코드 어시스턴트처럼 Lean 프로젝트와 대화할 수 있게 해줍니다.
주요 기능
- Lean 진단 정보, 현재 증명 목표, 용어 정의 및 호버 문서 쿼리.
- 외부 검색 서비스 (LeanSearch, Loogle, Lean Finder, Lean Hammer)를 실행하여 관련 정리 찾기.
- 빠른 코드 실행을 위한 선택적 REPL 기반
lean_run_code지원. - 환경 변수 또는 MCP 클라이언트 JSON (VS Code, Cursor, Claude Code, Mistral Vibe)을 통해 구성 가능.
- 세 가지 전송 방식 지원:
stdio(기본값),streamable-http, 레거시sse. - 안전한 원격 액세스를 위한 OpenAI의 Secure MCP Tunnel 지원.
시작하기
- uv Python 패키지 관리자를 설치합니다 (또는 Nix 사용).
- Lean 프로젝트가 빌드 가능한지 확인합니다 (
lake build). - 선택적 도구를 설치합니다 – 로컬 검색을 위한
ripgrep, 빠른 코드 실행을 위한repl패키지, 그리고 선택적으로 로컬 Loogle 바이너리. - MCP 호환 IDE (VS Code, Cursor, Claude Code, Mistral Vibe)에 서버 항목을 추가합니다 – 대부분의 예제는
uvx lean-lsp-mcp를 실행하는 한 줄 명령어로 충분합니다. - (선택 사항) 환경 변수를 설정하여 로깅 조정, 특정 도구 비활성화, 타임아웃 조정 또는 인증 활성화를 수행합니다.
일반적인 워크플로우
- LLM이 *“
MyProof.lean의 현재 목표는 무엇인가요?”*와 같은 요청을 보냅니다. - MCP 서버가 Lean LSP를 호출하여 목표 상태를 추출하고 간결한 텍스트 블록을 반환합니다.
- 보조 정리가 없는 경우, LLM은
lean_loogle또는lean_search를 호출하여 원격 또는 로컬 인덱스를 쿼리하고 일치하는 정리를 반환합니다. - LLM이 증명 단계를 시도하고 싶다면
lean_run_code(REPL 모드) 또는lean_multi_attempt를 호출하여 코드 스니펫을 테스트할 수 있습니다.
보안 참고 사항
- 이 서버는 프로젝트 내의 모든 파일을 읽고, 빌드를 실행하며, 검색 도구를 위해 네트워크에 접근할 수 있으므로 신뢰할 수 있는 환경에서 실행하거나 컨테이너화(Docker 이미지 제공)해야 합니다.
- HTTP를 통해 노출할 경우
LEAN_LSP_MCP_TOKEN을 설정하여 베어러 토큰 인증을 수행하거나 OpenAI의 Secure MCP Tunnel을 사용하십시오.
사용자
- 에이전트 기반 정리 증명 시스템을 구축하는 연구자들 (예: Ax-Prover, Numina-Lean-Agent, MerLean, M2F)이 이 도구를 인용합니다.
- Lean Together 2026과 같은 컨퍼런스에서 발표되었습니다.
추가 정보
- PyPI 패키지:
lean-lsp-mcp - 소스 코드 및 문서: https://github.com/oOo0oOo/lean-lsp-mcp
- 전체 도구 목록은
docs/tools.md참조 - 새로운 도구 추가 방법은
docs/adding-a-tool.md에 문서화되어 있습니다.
라이선스 – MIT (인용을 권장하지만 필수는 아닙니다).
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트