suprema-biostar-mcp 1.0.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. biostar_x_mcp_server/__init__.py +25 -0
  2. biostar_x_mcp_server/__main__.py +15 -0
  3. biostar_x_mcp_server/config.py +87 -0
  4. biostar_x_mcp_server/handlers/__init__.py +35 -0
  5. biostar_x_mcp_server/handlers/access_handler.py +2162 -0
  6. biostar_x_mcp_server/handlers/audit_handler.py +489 -0
  7. biostar_x_mcp_server/handlers/auth_handler.py +216 -0
  8. biostar_x_mcp_server/handlers/base_handler.py +228 -0
  9. biostar_x_mcp_server/handlers/card_handler.py +746 -0
  10. biostar_x_mcp_server/handlers/device_handler.py +4344 -0
  11. biostar_x_mcp_server/handlers/door_handler.py +3969 -0
  12. biostar_x_mcp_server/handlers/event_handler.py +1331 -0
  13. biostar_x_mcp_server/handlers/file_handler.py +212 -0
  14. biostar_x_mcp_server/handlers/help_web_handler.py +379 -0
  15. biostar_x_mcp_server/handlers/log_handler.py +1051 -0
  16. biostar_x_mcp_server/handlers/navigation_handler.py +109 -0
  17. biostar_x_mcp_server/handlers/occupancy_handler.py +541 -0
  18. biostar_x_mcp_server/handlers/user_handler.py +3568 -0
  19. biostar_x_mcp_server/schemas/__init__.py +21 -0
  20. biostar_x_mcp_server/schemas/access.py +158 -0
  21. biostar_x_mcp_server/schemas/audit.py +73 -0
  22. biostar_x_mcp_server/schemas/auth.py +24 -0
  23. biostar_x_mcp_server/schemas/cards.py +128 -0
  24. biostar_x_mcp_server/schemas/devices.py +496 -0
  25. biostar_x_mcp_server/schemas/doors.py +306 -0
  26. biostar_x_mcp_server/schemas/events.py +104 -0
  27. biostar_x_mcp_server/schemas/files.py +7 -0
  28. biostar_x_mcp_server/schemas/help.py +29 -0
  29. biostar_x_mcp_server/schemas/logs.py +33 -0
  30. biostar_x_mcp_server/schemas/occupancy.py +19 -0
  31. biostar_x_mcp_server/schemas/tool_response.py +29 -0
  32. biostar_x_mcp_server/schemas/users.py +166 -0
  33. biostar_x_mcp_server/server.py +335 -0
  34. biostar_x_mcp_server/session.py +221 -0
  35. biostar_x_mcp_server/tool_manager.py +172 -0
  36. biostar_x_mcp_server/tools/__init__.py +45 -0
  37. biostar_x_mcp_server/tools/access.py +510 -0
  38. biostar_x_mcp_server/tools/audit.py +227 -0
  39. biostar_x_mcp_server/tools/auth.py +59 -0
  40. biostar_x_mcp_server/tools/cards.py +269 -0
  41. biostar_x_mcp_server/tools/categories.py +197 -0
  42. biostar_x_mcp_server/tools/devices.py +1552 -0
  43. biostar_x_mcp_server/tools/doors.py +865 -0
  44. biostar_x_mcp_server/tools/events.py +305 -0
  45. biostar_x_mcp_server/tools/files.py +28 -0
  46. biostar_x_mcp_server/tools/help.py +80 -0
  47. biostar_x_mcp_server/tools/logs.py +123 -0
  48. biostar_x_mcp_server/tools/navigation.py +89 -0
  49. biostar_x_mcp_server/tools/occupancy.py +91 -0
  50. biostar_x_mcp_server/tools/users.py +1113 -0
  51. biostar_x_mcp_server/utils/__init__.py +31 -0
  52. biostar_x_mcp_server/utils/category_mapper.py +206 -0
  53. biostar_x_mcp_server/utils/decorators.py +101 -0
  54. biostar_x_mcp_server/utils/language_detector.py +51 -0
  55. biostar_x_mcp_server/utils/search.py +42 -0
  56. biostar_x_mcp_server/utils/timezone.py +122 -0
  57. suprema_biostar_mcp-1.0.1.dist-info/METADATA +163 -0
  58. suprema_biostar_mcp-1.0.1.dist-info/RECORD +61 -0
  59. suprema_biostar_mcp-1.0.1.dist-info/WHEEL +4 -0
  60. suprema_biostar_mcp-1.0.1.dist-info/entry_points.txt +2 -0
  61. suprema_biostar_mcp-1.0.1.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,91 @@
1
+ """
2
+ Occupancy Analysis Tools
3
+ 재실 현황 분석 도구
4
+ """
5
+
6
+ from mcp.types import Tool
7
+
8
+ GET_OCCUPANCY_STATUS_TOOL = Tool(
9
+ name="get-occupancy-status",
10
+ description="""
11
+ Analyze current occupancy status of a door by checking entry/exit events.
12
+ 출입문의 현재 재실 현황을 분석합니다 (입실/퇴실 이벤트 기반).
13
+
14
+ This tool automatically:
15
+ 1. Finds the door and its entry/exit devices
16
+ 2. Retrieves recent access events
17
+ 3. Analyzes entry/exit patterns for each user
18
+ 4. Returns list of currently occupied users (입실 중인 사용자)
19
+
20
+ Use this when user asks:
21
+ - "ㅇㅇ출입문에 입실한 사용자 알려줘"
22
+ - "현재 들어간 사람 찾아줘"
23
+ - "재실 현황 분석해줘"
24
+ - "누가 들어가 있는지 확인"
25
+ """,
26
+ inputSchema={
27
+ "type": "object",
28
+ "properties": {
29
+ "door_name": {
30
+ "type": "string",
31
+ "description": "출입문 이름 (예: '12층 메인 출입문'). If not provided, will analyze all doors."
32
+ },
33
+ "door_id": {
34
+ "type": "string",
35
+ "description": "출입문 ID (door_name 대신 사용 가능)"
36
+ },
37
+ "hours": {
38
+ "type": "integer",
39
+ "description": "분석할 시간 범위 (시간 단위, 기본값: 24시간)",
40
+ "default": 24
41
+ },
42
+ "include_details": {
43
+ "type": "boolean",
44
+ "description": "상세 이벤트 정보 포함 여부 (기본값: true)",
45
+ "default": True
46
+ }
47
+ },
48
+ "required": []
49
+ }
50
+ )
51
+
52
+ ANALYZE_DOOR_TRAFFIC_TOOL = Tool(
53
+ name="analyze-door-traffic",
54
+ description="""
55
+ Analyze door traffic patterns (entry/exit statistics).
56
+ 출입문의 출입 패턴을 분석합니다 (통계).
57
+
58
+ Returns:
59
+ - Total entries/exits
60
+ - Peak hours
61
+ - User traffic distribution
62
+ """,
63
+ inputSchema={
64
+ "type": "object",
65
+ "properties": {
66
+ "door_name": {
67
+ "type": "string",
68
+ "description": "출입문 이름"
69
+ },
70
+ "door_id": {
71
+ "type": "string",
72
+ "description": "출입문 ID"
73
+ },
74
+ "start_date": {
75
+ "type": "string",
76
+ "description": "시작 날짜 (YYYY-MM-DD)"
77
+ },
78
+ "end_date": {
79
+ "type": "string",
80
+ "description": "종료 날짜 (YYYY-MM-DD)"
81
+ }
82
+ },
83
+ "required": []
84
+ }
85
+ )
86
+
87
+ # Export all tools
88
+ OCCUPANCY_TOOLS = [
89
+ GET_OCCUPANCY_STATUS_TOOL,
90
+ ANALYZE_DOOR_TRAFFIC_TOOL
91
+ ]