Skip to main content
Glama
LENA-EE
by LENA-EE

MCP DROSPR 서버

Perl::Critic을 사용하여 Perl 코드를 분석하기 위한 MCP 서버입니다.

도구

DROSPR_JARVIS

테스트 도구 - 환영 메시지를 반환합니다.

{"method": "tools/call", "params": {"name": "DROSPR_JARVIS", "arguments": {}}}

결과: "MCP DROSPR로부터의 인사! :)"

perlcritic_analyze

Perl 코드를 분석하고 구조화된 보고서를 반환합니다.

매개변수:

매개변수

유형

설명

code

string

필수 - 분석할 Perl 코드

filename

string

파일 이름 (보고서용)

severity

int

엄격도 수준 1-5 (기본값 1)

사용 예시:

{
  "method": "tools/call",
  "params": {
    "name": "perlcritic_analyze",
    "arguments": {
      "code": "use strict;\nopen FILE, 'test.txt';",
      "severity": 1
    }
  }
}

Related MCP server: mcp-lint-tools

⚠️ 중요: 왜 code 매개변수만 사용하는가

MCP는 항상 원격으로 작동합니다! 서버는 다른 컴퓨터의 Docker에서 실행됩니다.

┌─────────────────┐         ┌─────────────────┐
│   Компьютер      │         │   MCP Сервер    │
│   разработчика  │   HTTP   │   (Docker)      │
│                 │  ──────> │                 │
│   Файл:         │          │   Нет доступа   │
│   C:\project\    │          │   к файловой    │
│   script.pl     │          │   системе!      │
└─────────────────┘          └─────────────────┘

문제:

  • LLM이 C:\project\script.pl 경로를 가져옵니다.

  • LLM이 파일 읽기를 "에뮬레이션"합니다.

  • target: "C:\project\script.pl"로 MCP를 실행합니다.

  • MCP는 이 파일을 볼 수 없습니다! 파일이 다른 컴퓨터에 있기 때문입니다.

해결책: LLM은 다음을 수행해야 합니다:

  1. 파일을 실제로 읽습니다.

  2. code 매개변수를 통해 내용을 전송합니다.

LLM을 위한 올바른 흐름:

Пользователь: "Проверь C:\project\script.pl"
     ↓
LLM: Читаю файл C:\project\script.pl...
     ↓
LLM: Отправляю в MCP:
     {
       "code": "use strict;\nuse warnings;\n...",
       "filename": "script.pl"
     }

LLM 설정 (Kiloterm/Cline)

시스템 프롬프트에 다음을 추가하세요:

ПРОВЕРКА PERL КОДА:
1. Всегда читай файл ПОЛНОСТЬЮ перед анализом
2. Используй ТОЛЬКО параметр 'code' для perlcritic_analyze
3. НИКОГДА не используй параметр 'target' - он не работает для удалённого MCP

실행

Docker (권장)

# Скачать образ
docker pull lenchik8/simple_mcp:latest

# Запустить
docker run -d --name mcp-DROSPR_JARVIS -p 8000:8000 lenchik8/simple_mcp:latest

로컬 빌드

docker build -t mcp-DROSPR_JARVIS .
docker run -p 8000:8000 mcp-DROSPR_JARVIS

소스 코드에서 빌드

pip install -e .
python server.py

프로젝트 구조

mcp_DROSPR_JARVIS/
├── server.py          # FastAPI сервер
├── tools/
│   └── perlcritic.py  # Модуль анализа Perl::Critic
├── Dockerfile         # Docker образ
├── pyproject.toml     # Python зависимости
└── docs/             # Документация

MCP 클라이언트에 연결

{
  "mcpServers": {
    "DROSPR_JARVIS": {
      "url": "http://<IP>:8000",
      "transport": "sse"
    }
  }
}

Docker Hub

https://hub.docker.com/r/lenchik8/simple\\\\_mcp

GitHub

https://github.com/LENA-EE/simple\\\\_mcp


Perl 코드 분석을 위한 프롬프트 예시

간단한 파일 분석

Проверь этот Perl файл на ошибки:
/path/to/script.pl

완화된 수준의 분석 (치명적인 오류만)

Проверь код, но покажи только серьёзные проблемы (severity 4-5)

코드 분석 (코드를 직접 전송)

Проверь этот Perl код:
use strict;
...

프로젝트 분석

Проанализируй каждый .pl файл в папке /src/

원격 MCP의 제한 사항

  • 디렉토리 분석은 컨테이너 내부에서 접근 가능한 경우에만 가능합니다.

  • 전체 프로젝트 감사를 위해서는 파일 코드를 하나씩 전송하세요.

Related MCP Connectors

Related MCP Servers