Skip to main content
Glama
clayop
by clayop
README.md
# hansung-university-regulation-mcp

한성대학교 규정관리시스템의 규정을 검색하고 조회할 수 있는 MCP(Model Context Protocol) 서버입니다.

stdio(로컬) 방식과 Remote HTTP(Cloudflare Workers) 방식 모두 지원합니다.

## 설치

### Claude Desktop (로컬 stdio)

`claude_desktop_config.json`에 추가:

```json
{
  "mcpServers": {
    "hansung-regulation": {
      "command": "npx",
      "args": ["-y", "hansung-university-regulation-mcp"]
    }
  }
}
```

### Claude Desktop (Remote HTTP)

```json
{
  "mcpServers": {
    "hansung-regulation": {
      "url": "https://hansung-regulation-mcp.clayop.workers.dev/mcp"
    }
  }
}
```

### Claude Code

```bash
claude mcp add hansung-regulation -- npx -y hansung-university-regulation-mcp
```

### Claude Web / Claude Mobile

1. Settings > MCP Servers (or Integrations)
2. "Add MCP Server" 클릭
3. URL 입력: `https://hansung-regulation-mcp.clayop.workers.dev/mcp`

### ChatGPT

1. Settings > MCP (또는 Connectors/Tools)
2. "Add MCP Server" 선택
3. URL 입력: `https://hansung-regulation-mcp.clayop.workers.dev/mcp`

### Cursor / Windsurf 등 IDE

MCP 설정 파일에 추가:

```json
{
  "mcpServers": {
    "hansung-regulation": {
      "command": "npx",
      "args": ["-y", "hansung-university-regulation-mcp"]
    }
  }
}
```

또는 Remote HTTP URL 사용: `https://hansung-regulation-mcp.clayop.workers.dev/mcp`

## 도구 (Tools)

### `search_regulations`
키워드로 규정을 검색합니다.

- `query` (string): 검색 키워드 (예: "학칙", "장학금", "교원임용")

### `list_regulations`
전체 규정 목록을 반환합니다.

- `includeOldVersions` (boolean, optional): true이면 구버전 포함

### `get_regulation`
특정 규정의 전문을 Markdown으로 조회합니다.

- `id` (number): 규정의 SEQ_HISTORY ID

### `get_regulation_article`
특정 규정의 특정 조항만 조회합니다.

- `id` (number): 규정의 SEQ_HISTORY ID
- `article` (string): 조항 번호 (예: "제5조", "5")

## 사용 예시

- "한성대학교 학칙에서 수강신청 관련 조항을 찾아줘"
- "교원 임용 관련 규정 목록을 보여줘"
- "장학금규정 제3조 내용이 뭐야?"

## 데이터 업데이트

서버 시작 시 자동으로 신규/개정 규정을 감지합니다. 번들된 인덱스 이후에 추가된 규정이 있으면 자동으로 메모리 인덱스에 반영됩니다.

인덱스를 수동으로 재빌드하려면:

```bash
npm run build-index
```

## 개발

```bash
npm install
npm run build
```

## 라이선스

MIT

TDQS

A4.3/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: searching by keyword, listing all, retrieving full text, and retrieving a specific article. The overlap between get_regulation and get_regulation_article is intentional and well-described, so no ambiguity exists.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern (search_*, list_*, get_*). The nouns are appropriately specific (regulations, regulation, regulation_article), and there is no mixing of conventions.

Tool Count5/5

With only 4 tools, the server is tightly scoped to the domain of retrieving university regulations. This is an appropriate size; each tool serves a necessary function and none are superfluous.

Completeness4/5

The set covers the core lifecycle: discover (list/search), retrieve full text, and retrieve specific articles. A minor gap is that search only matches regulation names, not full-text content, but this can be worked around by fetching individual regulations.

Maintenance

ActivityInactive
ResponsivenessNo issues