Metadata-Version: 2.4
Name: rubric-agent
Version: 0.0.7
Summary: 학생 과제 루브릭 생성 및 피드백을 제공하는 MCP 서버
Author-email: Jongbok Lee <jongbok.data0319@gmail.com>
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE.txt
Requires-Dist: build>=1.2.2.post1
Requires-Dist: fastapi>=0.115.12
Requires-Dist: google-search-results==2.4.2
Requires-Dist: langchain==0.3.21
Requires-Dist: langchain-cohere==0.4.3
Requires-Dist: langchain-community==0.3.20
Requires-Dist: langchain-core==0.3.46
Requires-Dist: langchain-experimental==0.3.4
Requires-Dist: langchain-google-genai==2.1.0
Requires-Dist: langchain-openai==0.3.9
Requires-Dist: langchain-teddynote==0.3.44
Requires-Dist: langchain-text-splitters==0.3.7
Requires-Dist: langchainhub==0.1.21
Requires-Dist: langgraph==0.3.18
Requires-Dist: mcp>=1.9.3
Requires-Dist: openai==1.67.0
Requires-Dist: openai-agents>=0.0.12
Requires-Dist: python-dotenv==1.0.1
Requires-Dist: tiktoken==0.9.0
Requires-Dist: twine>=6.1.0
Requires-Dist: uvicorn>=0.34.3
Dynamic: license-file

# 📘 Rubric MCP Server

학생 과제 루브릭을 자동 생성하고 피드백을 제공하는 **Model Context Protocol (MCP) 서버**입니다. FastAPI와 FastMCP 기반으로 구축되어 있으며, PyPI를 통해 설치하거나 `uvx` 명령어로 바로 실행할 수 있습니다.

---

## ✨ 주요 기능

- ✅ 학습 주제/목표/학년에 따라 루브릭 자동 생성
- ✅ 제출된 과제가 있으면 AI 기반 피드백도 자동 제공
- 📚 학생의 학습 목표와 수준을 고려한 **도서 추천 기능** 포함
- ⚡ FastMCP 프로토콜 기반으로 Claude/ChatGPT/Gemini 등과 연동 가능
- 🧩 MCP Tool로 통합되어 AI 워크플로우에 쉽게 삽입 가능

---

## 🧰 MCP 명령어 (`tool`)

### `generate_rubric_feedback`

| 입력 파라미터              | 타입       | 필수 여부 | 설명     |
| -------------------- | -------- | ----- | ------ |
| `topic`              | `string` | ✅     | 과제 주제  |
| `objective`          | `string` | ✅     | 학습 목표  |
| `grade_level`        | `string` | ✅     | 학년 정보  |
| `name`               | `string` | ❌     | 학생 이름  |
| `student_submission` | `string` | ❌     | 과제 제출물 |

---

## 출력:

```json
{
  "rubric_standards": "과제 평가 기준",
  "grading_feedback": "학생 피드백 (선택적)"
}
```
---
## 📦 설치 방법

### ⚙️ `MCP 플랫폼에서 사용 (uvx 권장)`
```json
MCP 설정 파일 (claude_desktop_config.json 등)에 아래 내용을 추가하세요:

{
  "mcpServers": {
    "rubric": {
      "command": "uvx",
      "args": ["rubric-agent"],
      "env": {
        "OPENAI_API_KEY": "your-openai-key",
        "GOOGLE_API_KEY": "your-google-key",
        "MODEL_TYPE": "openai",              // 또는 gemini
        "MODEL_NAME": "gpt-4o-mini"          // 또는 gemini-2.0-flash 등
      }
    }
  }
}
```
### ⚙️`Python에서 직접 사용`

##### rubricgenerator_mcp_server 패키지는 MCP 서버로 실행하지 않고도 직접 호출하여 사용할 수 있습니다.
##### ✅ name과 student_submission을 모두 입력하면, AI가 학생 맞춤형 피드백과 학생 수준에 맞는 추천 도서도 함께 제공합니다.
```python
from rubricagent import generate_rubric_feedback
```
#### 입력값 설정
```python
inputs = {
    "topic": "지구 문제에 우리는 어떻게 대처하는가? (환경문제)",
    "objective": "환경 논제 글쓰기",
    "grade_level": "초등학교 6학년",
    "name": None,  # 학생 이름이 없으면 피드백 없이 루브릭만 생성
    "student_submission": None  # 제출물이 없으면 피드백 없이 루브릭만 생성
}

# 루브릭 생성 함수 호출
response = generate_rubric_feedback(**inputs)

# 결과 출력
print(response["rubric_standards"])  # 평가 루브릭 출력

print(response["grading_feedback"])  # 학생 정보를 입력한 경우 피드백 및 추천 도서가 포함됨
```
---
##### 📄 License
##### MIT License © 2025 [See the LICENSE for details](./LICENSE.txt)
