Tamigo MCP by usefulapi

Read Tamigo departments, employees, shifts, absences and opening hours; register attendance.

사용해야 할까요

품질 및 안전성

A
설명 품질
100%
스키마 완전성
96%
이름 품질
80%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~2,474토큰 (도구 정의)
~2.0 KB일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.93%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "tamigo": {
      "url": "https://tamigo.usefulapi.io/mcp"
    }
  }
}

원격 엔드포인트

https://tamigo.usefulapi.io/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (8)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢tamigo_list_departments(include_parents, offset, limit)

List all departments (shops, restaurants, units) of the company: DepartmentId (a GUID, used by other tools), DepartmentKey (the POS key set in Tamigo), Name, IsDefault and ParentDepartmentId. GET /departments/application/.

입력 스키마

{
  "type": "object",
  "properties": {
    "include_parents": {
      "description": "Also return the parent (grouping) departments, not only the leaf units. Default false.",
      "type": "boolean"
    },
    "offset": {
      "description": "Skip this many items (default 0). Pass the previous reply's next_offset.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000
    },
    "limit": {
      "description": "Items to return, 1-1000 (default 200). The reply's next_offset says where to continue.",
      "type": "integer",
      "minimum": 1,
      "maximum": 1000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢tamigo_list_employees(offset, limit)

List all employees of the company (basic): EmployeeId, Name, Email, IsPlanner, PosKey (the employee key used by the attendance tool) and DepartmentRoles. For contract, wage and absence-balance details use tamigo_list_employee_details. GET /employees/.

입력 스키마

{
  "type": "object",
  "properties": {
    "offset": {
      "description": "Skip this many items (default 0). Pass the previous reply's next_offset.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000
    },
    "limit": {
      "description": "Items to return, 1-1000 (default 200). The reply's next_offset says where to continue.",
      "type": "integer",
      "minimum": 1,
      "maximum": 1000
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢tamigo_list_employee_details(page, include_deleted, offset, limit)

Detailed employee records, 500 per page in alphabetical order: contact data, roles per department, home department, contract hours, wage type and history, absence balances, competencies, custom columns, notes and availability. Bank details and ID numbers are never returned. Large pages are returned in slices: pass the reply's next_page and next_offset to continue. GET /employees/getemployeedetails/.

입력 스키마

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number, from 0 (default 0). Pass the previous reply's next_page.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "include_deleted": {
      "description": "Also include deleted employees. Default false.",
      "type": "boolean"
    },
    "offset": {
      "description": "Skip this many employees within the page (default 0). Pass the previous reply's next_offset.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000
    },
    "limit": {
      "description": "Items to return, 1-500 (default 50). The reply's next_offset says where to continue.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢tamigo_list_shifts(start_date, end_date, department_id, offset, limit)

Per employee and day, the original rota, the planned (current) rota and the worked (timesheet) hours for a date range, with department, employee POS key, email and wage number. Use it for payroll checks, hours worked vs planned and who worked when. Shift values are hours. GET /shifts/all/{start}/{end}/.

입력 스키마

{
  "type": "object",
  "properties": {
    "start_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "First day, yyyy-mm-dd."
    },
    "end_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "Last day, yyyy-mm-dd."
    },
    "department_id": {
      "description": "Department id from tamigo_list_departments. Omit for all departments.",
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "pattern": "^[A-Za-z0-9-]+$"
    },
    "offset": {
      "description": "Skip this many items (default 0). Pass the previous reply's next_offset.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000
    },
    "limit": {
      "description": "Items to return, 1-1000 (default 200). The reply's next_offset says where to continue.",
      "type": "integer",
      "minimum": 1,
      "maximum": 1000
    }
  },
  "required": [
    "start_date",
    "end_date"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢tamigo_list_absences(start_date, end_date, offset, limit)

All absences (holiday, sickness, leave) that overlap a date range: employee, department, absence type, start and end, and whether it is approved or rejected. GET /LeaveRequests/All/.

입력 스키마

{
  "type": "object",
  "properties": {
    "start_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "First day, yyyy-mm-dd."
    },
    "end_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "Last day, yyyy-mm-dd."
    },
    "offset": {
      "description": "Skip this many items (default 0). Pass the previous reply's next_offset.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000
    },
    "limit": {
      "description": "Items to return, 1-1000 (default 200). The reply's next_offset says where to continue.",
      "type": "integer",
      "minimum": 1,
      "maximum": 1000
    }
  },
  "required": [
    "start_date",
    "end_date"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢tamigo_get_opening_hours(start_date, end_date, offset, limit)

Normal and special opening hours per department for a date range. GET /OpeningHours/{start}/{end}/.

입력 스키마

{
  "type": "object",
  "properties": {
    "start_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "First day, yyyy-mm-dd."
    },
    "end_date": {
      "type": "string",
      "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
      "description": "Last day, yyyy-mm-dd."
    },
    "offset": {
      "description": "Skip this many items (default 0). Pass the previous reply's next_offset.",
      "type": "integer",
      "minimum": 0,
      "maximum": 1000000
    },
    "limit": {
      "description": "Items to return, 1-1000 (default 200). The reply's next_offset says where to continue.",
      "type": "integer",
      "minimum": 1,
      "maximum": 1000
    }
  },
  "required": [
    "start_date",
    "end_date"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴tamigo_register_attendance(entries)

WRITE: register check-in and check-out times in the Tamigo timesheet, for one or many employees (the same call a POS system makes). Each entry names a department key and an employee key (the POS keys set in Tamigo under Configuration -> Departments / POS Keys; they are shown by tamigo_list_departments and tamigo_list_employees) and EITHER a check_in_time OR a check_out_time, in chronological order per employee. A break is registered by giving the same activity_name (for example Lunch, SmallBreak) on its check-in and its check-out. Tamigo may round the times by the company's rules, and the reply echoes the times actually registered. This changes worked hours and wages: it is not undone by repeating it, so confirm the entries first.

입력 스키마

{
  "type": "object",
  "properties": {
    "entries": {
      "minItems": 1,
      "maxItems": 50,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "department_key": {
            "type": "string",
            "minLength": 1,
            "maxLength": 100,
            "pattern": "^[^\\u0000-\\u001f]+$",
            "description": "Department key (POS key) from Tamigo."
          },
          "employee_key": {
            "type": "string",
            "minLength": 1,
            "maxLength": 100,
            "pattern": "^[^\\u0000-\\u001f]+$",
            "description": "Employee key (POS key) from Tamigo."
          },
          "check_in_time": {
            "type": "string",
            "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2})$",
            "description": "Local date-time without a timezone, yyyy-MM-ddTHH:mm:ss (the workplace's local time)."
          },
          "check_out_time": {
            "type": "string",
            "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2})$",
            "description": "Local date-time without a timezone, yyyy-MM-ddTHH:mm:ss (the workplace's local time)."
          },
          "activity_name": {
            "description": "Optional break/activity name, e.g. Lunch or SmallBreak.",
            "type": "string",
            "minLength": 1,
            "maxLength": 100
          }
        },
        "required": [
          "department_key",
          "employee_key"
        ]
      },
      "description": "1-50 entries, in chronological order."
    }
  },
  "required": [
    "entries"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴tamigo_upload_daily_revenue(rows)

WRITE: import daily revenue per department into Tamigo (the same call a cash-register system makes), used for revenue-based planning and KPIs. Each row is a department key (the POS key set in Tamigo), a date and a revenue amount (a plain number with a dot as decimal separator). A date that already has revenue for that department may be overwritten by Tamigo, so confirm the rows first. POST /Revenues/.

입력 스키마

{
  "type": "object",
  "properties": {
    "rows": {
      "minItems": 1,
      "maxItems": 200,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "department_key": {
            "type": "string",
            "minLength": 1,
            "maxLength": 100,
            "allOf": [
              {
                "pattern": "^[^\\u0000-\\u001f]+$"
              },
              {
                "pattern": "^[^,;]+$"
              }
            ],
            "description": "Department key (POS key) from Tamigo."
          },
          "date": {
            "type": "string",
            "pattern": "^(\\d{4})-(\\d{2})-(\\d{2})$",
            "description": "A date, yyyy-mm-dd."
          },
          "revenue": {
            "type": "number",
            "minimum": -1000000000000,
            "maximum": 1000000000000,
            "description": "Revenue for the day, e.g. 12450.5."
          }
        },
        "required": [
          "department_key",
          "date",
          "revenue"
        ]
      },
      "description": "1-200 rows."
    }
  },
  "required": [
    "rows"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 8개