SmartHR MCP by usefulapi

MCP server for SmartHR — employees, departments, dependents and employee invitations.

使うべきか

品質と安全性

A
説明の品質
96%
スキーマの完全性
94%
命名の品質
76%
ポイズニングのリスク
100%
権限の一致
100%
プロトコルへの準拠
100%

検出事項(5)

  • LOWTool 'smarthr_list_maternity_childcare_leaves' name length outside 3-30 rangesmarthr_list_maternity_childcare_leaves 内
  • LOWTool 'smarthr_list_business_establishments' name length outside 3-30 rangesmarthr_list_business_establishments 内
  • LOWTool 'smarthr_list_employee_custom_fields' name length outside 3-30 rangesmarthr_list_employee_custom_fields 内
  • LOWTool 'smarthr_list_dependent_relations' name length outside 3-30 rangesmarthr_list_dependent_relations 内
  • LOWTool 'smarthr_list_employee_input_forms' name length outside 3-30 rangesmarthr_list_employee_input_forms 内

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~7,060トークン数(ツール定義)
~2.8 KB一般的なレスポンスサイズ
注意への影響は大きい(128k コンテキストの 5.52%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

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

リモートエンドポイント

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

できること

ツール一覧

ツール(23)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢smarthr_list_employees(q, emp_status, emp_code, employment_type_id, department_id, ...)

List employees (従業員) of the SmartHR tenant, with filters: free-text name/department/position search, status (employed, absent, retired), employee number, employment type, department, position, hire and resignation date ranges. Returns a compact record per employee; use `fields` for more. Sensitive data (bank accounts, insurance numbers, residence cards, salary, ID images) is never returned.

入力スキーマ

{
  "type": "object",
  "properties": {
    "q": {
      "description": "Free-text search over name, business name, department name and position name.",
      "type": "string",
      "maxLength": 500
    },
    "emp_status": {
      "description": "Only employees with this status.",
      "type": "string",
      "enum": [
        "employed",
        "absent",
        "retired"
      ]
    },
    "emp_code": {
      "description": "Exact employee number.",
      "type": "string",
      "maxLength": 500
    },
    "employment_type_id": {
      "description": "Employment type id(s), comma separated (from smarthr_list_employment_types).",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]+(,[A-Za-z0-9_-]+)*$"
    },
    "department_id": {
      "description": "Department id(s), comma separated (from smarthr_list_departments).",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]+(,[A-Za-z0-9_-]+)*$"
    },
    "position_id": {
      "description": "Position id(s), comma separated (from smarthr_list_positions).",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]+(,[A-Za-z0-9_-]+)*$"
    },
    "id": {
      "description": "Employee id(s), comma separated.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]+(,[A-Za-z0-9_-]+)*$"
    },
    "user_id": {
      "description": "User id(s), comma separated.",
      "type": "string",
      "pattern": "^[A-Za-z0-9_-]+(,[A-Za-z0-9_-]+)*$"
    },
    "entered_at_from": {
      "description": "Hired on or after this day (yyyy-mm-dd).",
      "type": "string"
    },
    "entered_at_to": {
      "description": "Hired on or before this day (yyyy-mm-dd).",
      "type": "string"
    },
    "resigned_at_from": {
      "description": "Resigned on or after this day (yyyy-mm-dd).",
      "type": "string"
    },
    "resigned_at_to": {
      "description": "Resigned on or before this day (yyyy-mm-dd).",
      "type": "string"
    },
    "sort": {
      "description": "Sort order: property names, several separated by commas, a leading \"-\" means descending, e.g. \"-updated_at\".",
      "type": "string",
      "pattern": "^-?[a-z_]+(,-?[a-z_]+)*$"
    },
    "fields": {
      "description": "Which employee fields to return (default: names, status, email, departments, positions, grade, job category, dates). Add address, tel_number, birth_at, custom_fields, contract_* and so on when needed. Bank, insurance, tax, salary and ID-document data are never available.",
      "maxItems": 47,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "id",
          "user_id",
          "biz_establishment_id",
          "emp_code",
          "emp_type",
          "employment_type",
          "emp_status",
          "last_name",
          "first_name",
          "last_name_yomi",
          "first_name_yomi",
          "business_last_name",
          "business_first_name",
          "business_last_name_yomi",
          "business_first_name_yomi",
          "preferred_last_name",
          "preferred_first_name",
          "preferred_last_name_yomi",
          "preferred_first_name_yomi",
          "birth_at",
          "gender",
          "tel_number",
          "address",
          "email",
          "emergency_relation_name",
          "emergency_last_name",
          "emergency_first_name",
          "emergency_tel_number",
          "position",
          "positions",
          "grade",
          "job_category",
          "occupation",
          "entered_at",
          "resigned_at",
          "resigned_reason",
          "recruitment_type",
          "department",
          "departments",
          "contract_type",
          "contract_start_on",
          "contract_end_on",
          "contract_renewal_type",
          "nationality_code",
          "custom_fields",
          "created_at",
          "updated_at"
        ]
      }
    },
    "page": {
      "description": "Page number, 1-based (default 1). Use next_page from the previous reply.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-100 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smarthr_get_employee(id, fields)

Get one employee (従業員) by id. Returns a compact record; use `fields` for more (address, phone, birth date, custom fields, contract dates). Sensitive data is never returned.

入力スキーマ

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Employee id (from smarthr_list_employees)."
    },
    "fields": {
      "description": "Which employee fields to return (default: names, status, email, departments, positions, grade, job category, dates). Add address, tel_number, birth_at, custom_fields, contract_* and so on when needed. Bank, insurance, tax, salary and ID-document data are never available.",
      "maxItems": 47,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "id",
          "user_id",
          "biz_establishment_id",
          "emp_code",
          "emp_type",
          "employment_type",
          "emp_status",
          "last_name",
          "first_name",
          "last_name_yomi",
          "first_name_yomi",
          "business_last_name",
          "business_first_name",
          "business_last_name_yomi",
          "business_first_name_yomi",
          "preferred_last_name",
          "preferred_first_name",
          "preferred_last_name_yomi",
          "preferred_first_name_yomi",
          "birth_at",
          "gender",
          "tel_number",
          "address",
          "email",
          "emergency_relation_name",
          "emergency_last_name",
          "emergency_first_name",
          "emergency_tel_number",
          "position",
          "positions",
          "grade",
          "job_category",
          "occupation",
          "entered_at",
          "resigned_at",
          "resigned_reason",
          "recruitment_type",
          "department",
          "departments",
          "contract_type",
          "contract_start_on",
          "contract_end_on",
          "contract_renewal_type",
          "nationality_code",
          "custom_fields",
          "created_at",
          "updated_at"
        ]
      }
    }
  },
  "required": [
    "id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smarthr_list_dependents(employee_id, page, per_page)

List the dependents (家族情報) registered for one employee: name, relation, birth date, living arrangement and support status. Pension numbers, income and documents are not returned.

入力スキーマ

{
  "type": "object",
  "properties": {
    "employee_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Employee id (from smarthr_list_employees)."
    },
    "page": {
      "description": "Page number, 1-based (default 1). Use next_page from the previous reply.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-100 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "required": [
    "employee_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smarthr_list_maternity_childcare_leaves(employee_id, page, per_page)

List the maternity and childcare leave records (産休育休) of one employee: expected birth, leave start/end and scheduled return dates. Bank, insurance and memo data are not returned.

入力スキーマ

{
  "type": "object",
  "properties": {
    "employee_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Employee id (from smarthr_list_employees)."
    },
    "page": {
      "description": "Page number, 1-based (default 1). Use next_page from the previous reply.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-100 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "required": [
    "employee_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smarthr_list_departments(code, sort, page, per_page)

List departments (部署) with their hierarchy (parent, children), code and company.

入力スキーマ

{
  "type": "object",
  "properties": {
    "code": {
      "description": "Exact department code.",
      "type": "string",
      "maxLength": 500
    },
    "sort": {
      "description": "Sort order: property names, several separated by commas, a leading \"-\" means descending, e.g. \"-updated_at\".",
      "type": "string",
      "pattern": "^-?[a-z_]+(,-?[a-z_]+)*$"
    },
    "page": {
      "description": "Page number, 1-based (default 1). Use next_page from the previous reply.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-100 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smarthr_get_department(id)

Get one department (部署) by id, with its parent and children.

入力スキーマ

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Department id (from smarthr_list_departments)."
    }
  },
  "required": [
    "id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smarthr_list_positions(sort, page, per_page)

List positions / job titles (役職) with their rank and code.

入力スキーマ

{
  "type": "object",
  "properties": {
    "sort": {
      "description": "Sort order: property names, several separated by commas, a leading \"-\" means descending, e.g. \"-updated_at\".",
      "type": "string",
      "pattern": "^-?[a-z_]+(,-?[a-z_]+)*$"
    },
    "page": {
      "description": "Page number, 1-based (default 1). Use next_page from the previous reply.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-100 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smarthr_list_employment_types(page, per_page)

List employment types (雇用形態), e.g. full-timer, part-timer, contract worker, with their ids for filtering and writes.

入力スキーマ

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number, 1-based (default 1). Use next_page from the previous reply.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-100 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smarthr_list_grades(page, per_page)

List grades (等級) with their rank.

入力スキーマ

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number, 1-based (default 1). Use next_page from the previous reply.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-100 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smarthr_list_job_categories(page, per_page)

List job categories (職種).

入力スキーマ

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number, 1-based (default 1). Use next_page from the previous reply.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-100 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smarthr_list_companies(page, per_page)

List the companies (会社) of the tenant: name, code, corporate number, address, phone.

入力スキーマ

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number, 1-based (default 1). Use next_page from the previous reply.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-100 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smarthr_list_business_establishments(embed, page, per_page)

List business establishments (事業所): name, social insurance and labor insurance registration data, company.

入力スキーマ

{
  "type": "object",
  "properties": {
    "embed": {
      "description": "Embed the related object instead of only its id.",
      "type": "string",
      "enum": [
        "soc_ins_owner",
        "lab_ins_owner",
        "company"
      ]
    },
    "page": {
      "description": "Page number, 1-based (default 1). Use next_page from the previous reply.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-100 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smarthr_list_employee_custom_fields(embed, page, per_page)

List the definitions of the tenant's custom employee fields (カスタム従業員項目): name, type and, for dropdowns, the choices. Use them to read the values in custom_fields.

入力スキーマ

{
  "type": "object",
  "properties": {
    "embed": {
      "description": "Embed the custom field group instead of only its id.",
      "type": "string",
      "enum": [
        "group"
      ]
    },
    "page": {
      "description": "Page number, 1-based (default 1). Use next_page from the previous reply.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-100 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smarthr_list_dependent_relations(page, per_page)

List the relation types for dependents (続柄: spouse, child, parent...) with their ids, needed by smarthr_create_dependent.

入力スキーマ

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number, 1-based (default 1). Use next_page from the previous reply.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-100 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smarthr_list_users(sort, embed, page, per_page)

List SmartHR users (login accounts): email, administrator flag, role, linked employee, and the invitation status (created, opened, accepted, answered). Use it to find the administrator id for smarthr_invite_employee.

入力スキーマ

{
  "type": "object",
  "properties": {
    "sort": {
      "description": "Sort order: property names, several separated by commas, a leading \"-\" means descending, e.g. \"-updated_at\".",
      "type": "string",
      "pattern": "^-?[a-z_]+(,-?[a-z_]+)*$"
    },
    "embed": {
      "description": "Embed the related object instead of only its id.",
      "type": "string",
      "enum": [
        "crew",
        "biz_establishment",
        "biz_establishment_company",
        "department_company"
      ]
    },
    "page": {
      "description": "Page number, 1-based (default 1). Use next_page from the previous reply.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-100 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smarthr_list_employee_input_forms(page, per_page)

List the employee information collection forms (従業員情報収集フォーム) that an invitation can use.

入力スキーマ

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number, 1-based (default 1). Use next_page from the previous reply.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-100 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢smarthr_list_webhooks(page, per_page)

List the configured webhooks (target URL, which employee and dependent events notify). Read-only; secret tokens and the query string of the target URL are never shown.

入力スキーマ

{
  "type": "object",
  "properties": {
    "page": {
      "description": "Page number, 1-based (default 1). Use next_page from the previous reply.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100000
    },
    "per_page": {
      "description": "Results per page, 1-100 (default 50).",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴smarthr_create_employee(emp_code, emp_status, last_name, first_name, last_name_yomi, ...)

WRITE: Register a new employee (従業員) in SmartHR. Nothing is sent to the employee; to invite them to fill in their own data use smarthr_invite_employee afterwards. Only the fields you give are set. The tenant plan may cap the number of employees (error plan_limit_exceeded). Returns the created employee as a compact record.

入力スキーマ

{
  "type": "object",
  "properties": {
    "emp_code": {
      "description": "Employee number (社員番号).",
      "type": "string",
      "maxLength": 500
    },
    "emp_status": {
      "description": "Employment status: employed, absent (on leave) or retired.",
      "type": "string",
      "enum": [
        "employed",
        "absent",
        "retired"
      ]
    },
    "last_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Family name (required)."
    },
    "first_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Given name (required)."
    },
    "last_name_yomi": {
      "description": "Family name in katakana.",
      "type": "string",
      "maxLength": 100
    },
    "first_name_yomi": {
      "description": "Given name in katakana.",
      "type": "string",
      "maxLength": 100
    },
    "business_last_name": {
      "description": "Business name: family name.",
      "type": "string",
      "maxLength": 500
    },
    "business_first_name": {
      "description": "Business name: given name.",
      "type": "string",
      "maxLength": 500
    },
    "gender": {
      "description": "Legal gender (戸籍上の性別): male or female.",
      "type": "string",
      "enum": [
        "male",
        "female"
      ]
    },
    "birth_at": {
      "description": "Date of birth, yyyy-mm-dd.",
      "type": "string"
    },
    "email": {
      "description": "Work or contact email address.",
      "type": "string",
      "maxLength": 254
    },
    "tel_number": {
      "description": "Phone number.",
      "type": "string",
      "maxLength": 50
    },
    "address": {
      "type": "object",
      "properties": {
        "zip_code": {
          "description": "Postal code, e.g. 100-0001.",
          "type": "string",
          "maxLength": 20
        },
        "pref": {
          "description": "Prefecture, e.g. 東京都.",
          "type": "string",
          "maxLength": 50
        },
        "city": {
          "type": "string",
          "minLength": 1,
          "maxLength": 100,
          "description": "City / ward."
        },
        "street": {
          "description": "Street and block number.",
          "type": "string",
          "maxLength": 100
        },
        "building": {
          "description": "Building and room.",
          "type": "string",
          "maxLength": 100
        },
        "country_number": {
          "description": "Country code (default Japan).",
          "type": "string",
          "maxLength": 5
        }
      },
      "required": [
        "city"
      ],
      "description": "Address; the city is required by SmartHR."
    },
    "entered_at": {
      "description": "Hire date, yyyy-mm-dd.",
      "type": "string"
    },
    "resigned_at": {
      "description": "Resignation date, yyyy-mm-dd.",
      "type": "string"
    },
    "resigned_reason": {
      "description": "Reason for leaving.",
      "type": "string",
      "maxLength": 500
    },
    "employment_type_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Employment type id (from smarthr_list_employment_types)."
    },
    "department_ids": {
      "description": "Department ids (from smarthr_list_departments); replaces the current departments.",
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100
      }
    },
    "positions": {
      "description": "Position (job title) NAMES, e.g. [\"部長\"]; a name that does not exist yet may be created by SmartHR.",
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100
      }
    },
    "grade": {
      "description": "Grade name (等級).",
      "type": "string",
      "maxLength": 500
    },
    "job_category": {
      "description": "Job category name (職種).",
      "type": "string",
      "maxLength": 500
    },
    "occupation": {
      "description": "Job description (業務内容).",
      "type": "string",
      "maxLength": 500
    },
    "biz_establishment_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Business establishment id (from smarthr_list_business_establishments)."
    }
  },
  "required": [
    "last_name",
    "first_name"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴smarthr_update_employee(id, emp_code, emp_status, last_name, first_name, ...)

WRITE: Change fields of one existing employee (partial update: only the fields you give change; others stay). Typical uses: set the status to absent or retired with the resignation date, correct a name, email or phone, move the employee to other departments (department_ids replaces the current list), change positions. SmartHR does not allow clearing a name that is already filled in. Returns the updated employee as a compact record.

入力スキーマ

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Employee id (from smarthr_list_employees)."
    },
    "emp_code": {
      "description": "Employee number (社員番号).",
      "type": "string",
      "maxLength": 500
    },
    "emp_status": {
      "description": "Employment status: employed, absent (on leave) or retired.",
      "type": "string",
      "enum": [
        "employed",
        "absent",
        "retired"
      ]
    },
    "last_name": {
      "description": "Family name (戸籍上の姓).",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "first_name": {
      "description": "Given name (戸籍上の名).",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "last_name_yomi": {
      "description": "Family name in katakana.",
      "type": "string",
      "maxLength": 100
    },
    "first_name_yomi": {
      "description": "Given name in katakana.",
      "type": "string",
      "maxLength": 100
    },
    "business_last_name": {
      "description": "Business name: family name.",
      "type": "string",
      "maxLength": 500
    },
    "business_first_name": {
      "description": "Business name: given name.",
      "type": "string",
      "maxLength": 500
    },
    "gender": {
      "description": "Legal gender (戸籍上の性別): male or female.",
      "type": "string",
      "enum": [
        "male",
        "female"
      ]
    },
    "birth_at": {
      "description": "Date of birth, yyyy-mm-dd.",
      "type": "string"
    },
    "email": {
      "description": "Work or contact email address.",
      "type": "string",
      "maxLength": 254
    },
    "tel_number": {
      "description": "Phone number.",
      "type": "string",
      "maxLength": 50
    },
    "address": {
      "type": "object",
      "properties": {
        "zip_code": {
          "description": "Postal code, e.g. 100-0001.",
          "type": "string",
          "maxLength": 20
        },
        "pref": {
          "description": "Prefecture, e.g. 東京都.",
          "type": "string",
          "maxLength": 50
        },
        "city": {
          "type": "string",
          "minLength": 1,
          "maxLength": 100,
          "description": "City / ward."
        },
        "street": {
          "description": "Street and block number.",
          "type": "string",
          "maxLength": 100
        },
        "building": {
          "description": "Building and room.",
          "type": "string",
          "maxLength": 100
        },
        "country_number": {
          "description": "Country code (default Japan).",
          "type": "string",
          "maxLength": 5
        }
      },
      "required": [
        "city"
      ],
      "description": "Address; the city is required by SmartHR."
    },
    "entered_at": {
      "description": "Hire date, yyyy-mm-dd.",
      "type": "string"
    },
    "resigned_at": {
      "description": "Resignation date, yyyy-mm-dd.",
      "type": "string"
    },
    "resigned_reason": {
      "description": "Reason for leaving.",
      "type": "string",
      "maxLength": 500
    },
    "employment_type_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Employment type id (from smarthr_list_employment_types)."
    },
    "department_ids": {
      "description": "Department ids (from smarthr_list_departments); replaces the current departments.",
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100
      }
    },
    "positions": {
      "description": "Position (job title) NAMES, e.g. [\"部長\"]; a name that does not exist yet may be created by SmartHR.",
      "maxItems": 20,
      "type": "array",
      "items": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100
      }
    },
    "grade": {
      "description": "Grade name (等級).",
      "type": "string",
      "maxLength": 500
    },
    "job_category": {
      "description": "Job category name (職種).",
      "type": "string",
      "maxLength": 500
    },
    "occupation": {
      "description": "Job description (業務内容).",
      "type": "string",
      "maxLength": 500
    },
    "biz_establishment_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Business establishment id (from smarthr_list_business_establishments)."
    }
  },
  "required": [
    "id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴smarthr_create_department(name, parent_id, code, position, company_id)

WRITE: Create a department (部署). Give the parent department id to nest it. Returns the created department.

入力スキーマ

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Department name (no slash)."
    },
    "parent_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Parent department id (from smarthr_list_departments); omit for a top-level department."
    },
    "code": {
      "description": "Department code.",
      "type": "string",
      "maxLength": 500
    },
    "position": {
      "description": "Display order among siblings.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    },
    "company_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Company id (from smarthr_list_companies); needed when the tenant has several companies."
    }
  },
  "required": [
    "name"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴smarthr_update_department(id, name, parent_id, code, position)

WRITE: Rename or move one department (partial update: only the fields you give change). Returns the updated department.

入力スキーマ

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Department id (from smarthr_list_departments)."
    },
    "name": {
      "description": "New name (no slash). Omit to keep the current name.",
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "parent_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "New parent department id."
    },
    "code": {
      "description": "New code.",
      "type": "string",
      "maxLength": 500
    },
    "position": {
      "description": "New display order among siblings.",
      "type": "integer",
      "minimum": 0,
      "maximum": 100000
    }
  },
  "required": [
    "id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴smarthr_create_dependent(employee_id, last_name, first_name, last_name_yomi, first_name_yomi, ...)

WRITE: Register a dependent (家族情報) for an employee. Needs the relation id from smarthr_list_dependent_relations. Returns the created dependent without pension number, income or documents.

入力スキーマ

{
  "type": "object",
  "properties": {
    "employee_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Employee id (from smarthr_list_employees)."
    },
    "last_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Family name."
    },
    "first_name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Given name."
    },
    "last_name_yomi": {
      "description": "Family name in katakana.",
      "type": "string",
      "maxLength": 100
    },
    "first_name_yomi": {
      "description": "Given name in katakana.",
      "type": "string",
      "maxLength": 100
    },
    "birth_at": {
      "type": "string",
      "description": "Date of birth, yyyy-mm-dd."
    },
    "gender": {
      "type": "string",
      "enum": [
        "male",
        "female"
      ],
      "description": "Gender: male or female."
    },
    "relation_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Relation id (from smarthr_list_dependent_relations)."
    },
    "live_together_type": {
      "type": "string",
      "enum": [
        "living_together",
        "living_separately"
      ],
      "description": "Living with the employee or separately."
    },
    "is_spouse": {
      "description": "True for a spouse.",
      "type": "boolean"
    },
    "tax_law_support_type": {
      "type": "string",
      "enum": [
        "unsupported",
        "unsupported_same_living_spouse",
        "supported",
        "special_spousal_exemption",
        "unknown"
      ],
      "description": "Tax-law dependent status (required: SmartHR would otherwise default it to supported). Use unknown when not decided."
    },
    "social_insurance_support_type": {
      "type": "string",
      "enum": [
        "unsupported",
        "supported",
        "unknown"
      ],
      "description": "Social-insurance dependent status (required: SmartHR would otherwise default it to supported). Use unknown when not decided."
    },
    "job": {
      "description": "Occupation.",
      "type": "string",
      "maxLength": 500
    },
    "tel_number": {
      "description": "Phone number.",
      "type": "string",
      "maxLength": 50
    },
    "address": {
      "type": "object",
      "properties": {
        "zip_code": {
          "description": "Postal code, e.g. 100-0001.",
          "type": "string",
          "maxLength": 20
        },
        "pref": {
          "description": "Prefecture, e.g. 東京都.",
          "type": "string",
          "maxLength": 50
        },
        "city": {
          "type": "string",
          "minLength": 1,
          "maxLength": 100,
          "description": "City / ward."
        },
        "street": {
          "description": "Street and block number.",
          "type": "string",
          "maxLength": 100
        },
        "building": {
          "description": "Building and room.",
          "type": "string",
          "maxLength": 100
        },
        "country_number": {
          "description": "Country code (default Japan).",
          "type": "string",
          "maxLength": 5
        }
      },
      "required": [
        "city"
      ],
      "description": "Address; the city is required by SmartHR."
    }
  },
  "required": [
    "employee_id",
    "last_name",
    "first_name",
    "birth_at",
    "gender",
    "relation_id",
    "live_together_type",
    "tax_law_support_type",
    "social_insurance_support_type"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴smarthr_invite_employee(id, inviter_user_id, crew_input_form_id)

WRITE, SENDS AN EMAIL: Invite an employee to SmartHR. SmartHR emails the address stored on the employee (the employee must have one) an invitation to create their login and, with an input form, to fill in their own data. Asking again re-sends it (and updates the invited address if it changed). An employee who already accepted cannot be invited again. Confirm with the user before calling.

入力スキーマ

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Employee id (from smarthr_list_employees); the employee needs an email address."
    },
    "inviter_user_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "User id of the inviting administrator (from smarthr_list_users, an administrator)."
    },
    "crew_input_form_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "Employee information collection form id (from smarthr_list_employee_input_forms); its mail format is used."
    }
  },
  "required": [
    "id",
    "inviter_user_id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 23 件