Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

SmartHR MCP by usefulapi

REMOTE · SMARTHR.USEFULAPI.IO

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

18 Trust /100

Last scanned (45 minutes ago)

Scores higher than 4% of remote servers

Reachable. Last reached 5 Nov 2026.

Category CRM and Sales

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security46
Transport & Reachability0
Schema Quality & AI Usability0
  • Schema not yet verified: we couldn't read the endpoint's schema, or could read only part of its tool list.Unverified
Stability & Change Management0
  • Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage0
  • Tool coverage not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.Unverified
Tool Safety0
  • Tool safety not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.Unverified
Capabilities0
  • Capabilities not yet verified: we couldn't read the endpoint's capabilities.Unverified

Unverified: 5 categories

Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.

What we tested

Checks we ran (4)

  • TLS certificate
  • HSTS header
  • DNSSEC
  • Transport

Checks we could not complete (7)

These are gaps on our side, not findings about this hosted endpoint. We only credit what we can confirm, so a category made up entirely of them scores 0.

  • Authorization in Endpoint SecurityAuthorisation not yet verified: we couldn't confirm whether this endpoint requires it.
  • HTTPS in Endpoint SecurityHTTPS enforcement could not be verified: the plaintext port redirected somewhere other than https, so enforcement is unproven.
  • Schema quality in Schema Quality & AI Usability (scores 0 for this)Schema not yet verified: we couldn't read the endpoint's schema, or could read only part of its tool list.
  • Stability in Stability & Change Management (scores 0 for this)Stability not yet verified: not enough scan history yet (needs a 30-day window).
  • Tool coverage in Tool Coverage (scores 0 for this)Tool coverage not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.
  • Tool safety in Tool Safety (scores 0 for this)Tool safety not yet verified: we couldn't read the endpoint's tools, or could read only part of the list.
  • Capabilities in Capabilities (scores 0 for this)Capabilities not yet verified: we couldn't read the endpoint's capabilities.

Does not apply to this hosted endpoint (2)

  • Supply Chain SecurityScored on package channels only. This is a hosted endpoint, so there is nothing to install or inspect.
  • Provenance & TransparencyScored on package channels only. This is a hosted endpoint, so there is nothing to install or inspect.

The score does not measure everything. What the score does not measure →

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 2 Nov 26 −47
    • Endpoint reachability: reachable → not serving MCP ▼ security
    • Tool safety: pass → unverified ▼ security
    • Authorization: pass → unverified ▼ security
    • Stability: 0.03 → unverified ▼ security
    • Schema quality: 100 → unverified ▼ functional
    • Capabilities: pass → unverified ▼ functional
    • Tool coverage: 100 → unverified ▼ functional
  • 1 Nov 26 +1
    • Stability: unverified → 0.03 ▲ functional
  • 31 Oct 26 64

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 5 Nov 2026 · Probed https://smarthr.usefulapi.io/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=usefulapi.io CN=WE1,O=Google Trust Services,C=US 13 Sept 2026 12 Dec 2026 ECDSA 256 ECDSA-SHA256 d9be3287b0fde9630e825ba1f79bff3f
SANs: usefulapi.io, *.usefulapi.io
CN=WE1,O=Google Trust Services,C=US (CA) CN=GTS Root R4,O=Google Trust Services LLC,C=US 13 Dec 2023 20 Feb 2029 ECDSA 256 ECDSA-SHA384 7ff31977972c224a76155d13b6d685e3
CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE 15 Nov 2023 28 Jan 2028 ECDSA 384 SHA256-RSA 7fe530bf331343bedd821610493d8a1b

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of smarthr.usefulapi.io. — Not signed

Zone DS Keys Algorithms Outcome
. Trust anchor 20326, 38696 8, 8 Verified
io. DS published 38690 8 Verified
usefulapi.io. No DS Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication Inconclusive

We could not reach the endpoint well enough to judge its authorisation posture.

Result Inconclusive
HTTP status 302

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://smarthr.usefulapi.io/mcp Redirected 302 https://usefulapi.io/smarthr/
http (plaintext) http://smarthr.usefulapi.io/mcp Inconclusive 302 http://smarthr.usefulapi.io/mcp
MCP tools · 23 exposed · ~3,637 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
smarthr_create_department ~117

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

NameTypeReqDescription
codestring–Department code.
company_idstring–Company id (from smarthr_list_companies); needed when the tenant has several companies.
namestringyesDepartment name (no slash).
parent_idstring–Parent department id (from smarthr_list_departments); omit for a top-level department.
positioninteger–Display order among siblings.

No output schema declared.

No examples provided.

smarthr_create_dependent ~296

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.

NameTypeReqDescription
addressobject–Address; the city is required by SmartHR.
birth_atstringyesDate of birth, yyyy-mm-dd.
employee_idstringyesEmployee id (from smarthr_list_employees).
first_namestringyesGiven name.
first_name_yomistring–Given name in katakana.
genderstringyesGender: male or female.
is_spouseboolean–True for a spouse.
jobstring–Occupation.
last_namestringyesFamily name.
last_name_yomistring–Family name in katakana.
live_together_typestringyesLiving with the employee or separately.
relation_idstringyesRelation id (from smarthr_list_dependent_relations).
social_insurance_support_typestringyesSocial-insurance dependent status (required: SmartHR would otherwise default it to supported). Use unknown when not decided.
tax_law_support_typestringyesTax-law dependent status (required: SmartHR would otherwise default it to supported). Use unknown when not decided.
tel_numberstring–Phone number.

No output schema declared.

No examples provided.

smarthr_create_employee ~454

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.

NameTypeReqDescription
addressobject–Address; the city is required by SmartHR.
birth_atstring–Date of birth, yyyy-mm-dd.
biz_establishment_idstring–Business establishment id (from smarthr_list_business_establishments).
business_first_namestring–Business name: given name.
business_last_namestring–Business name: family name.
department_idsarray–Department ids (from smarthr_list_departments); replaces the current departments.
emailstring–Work or contact email address.
emp_codestring–Employee number (社員番号).
emp_statusstring–Employment status: employed, absent (on leave) or retired.
employment_type_idstring–Employment type id (from smarthr_list_employment_types).
entered_atstring–Hire date, yyyy-mm-dd.
first_namestringyesGiven name (required).
first_name_yomistring–Given name in katakana.
genderstring–Legal gender (戸籍上の性別): male or female.
gradestring–Grade name (等級).
job_categorystring–Job category name (職種).
last_namestringyesFamily name (required).
last_name_yomistring–Family name in katakana.
occupationstring–Job description (業務内容).
positionsarray–Position (job title) NAMES, e.g. ["部長"]; a name that does not exist yet may be created by SmartHR.
resigned_atstring–Resignation date, yyyy-mm-dd.
resigned_reasonstring–Reason for leaving.
tel_numberstring–Phone number.

No output schema declared.

No examples provided.

smarthr_get_department ~43

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

NameTypeReqDescription
idstringyesDepartment id (from smarthr_list_departments).

No output schema declared.

No examples provided.

smarthr_get_employee ~137

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.

NameTypeReqDescription
fieldsarray–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…
idstringyesEmployee id (from smarthr_list_employees).

No output schema declared.

No examples provided.

smarthr_invite_employee ~174

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.

NameTypeReqDescription
crew_input_form_idstring–Employee information collection form id (from smarthr_list_employee_input_forms); its mail format is used.
idstringyesEmployee id (from smarthr_list_employees); the employee needs an email address.
inviter_user_idstringyesUser id of the inviting administrator (from smarthr_list_users, an administrator).

No output schema declared.

No examples provided.

smarthr_list_business_establishments ~95

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

NameTypeReqDescription
embedstring–Embed the related object instead of only its id.
pageinteger–Page number, 1-based (default 1). Use next_page from the previous reply.
per_pageinteger–Results per page, 1-100 (default 50).

No output schema declared.

No examples provided.

smarthr_list_companies ~78

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

NameTypeReqDescription
pageinteger–Page number, 1-based (default 1). Use next_page from the previous reply.
per_pageinteger–Results per page, 1-100 (default 50).

No output schema declared.

No examples provided.

smarthr_list_departments ~114

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

NameTypeReqDescription
codestring–Exact department code.
pageinteger–Page number, 1-based (default 1). Use next_page from the previous reply.
per_pageinteger–Results per page, 1-100 (default 50).
sortstring–Sort order: property names, several separated by commas, a leading "-" means descending, e.g. "-updated_at".

No output schema declared.

No examples provided.

smarthr_list_dependent_relations ~89

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

NameTypeReqDescription
pageinteger–Page number, 1-based (default 1). Use next_page from the previous reply.
per_pageinteger–Results per page, 1-100 (default 50).

No output schema declared.

No examples provided.

smarthr_list_dependents ~112

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

NameTypeReqDescription
employee_idstringyesEmployee id (from smarthr_list_employees).
pageinteger–Page number, 1-based (default 1). Use next_page from the previous reply.
per_pageinteger–Results per page, 1-100 (default 50).

No output schema declared.

No examples provided.

smarthr_list_employee_custom_fields ~118

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.

NameTypeReqDescription
embedstring–Embed the custom field group instead of only its id.
pageinteger–Page number, 1-based (default 1). Use next_page from the previous reply.
per_pageinteger–Results per page, 1-100 (default 50).

No output schema declared.

No examples provided.

smarthr_list_employee_input_forms ~80

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

NameTypeReqDescription
pageinteger–Page number, 1-based (default 1). Use next_page from the previous reply.
per_pageinteger–Results per page, 1-100 (default 50).

No output schema declared.

No examples provided.

smarthr_list_employees ~459

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.

NameTypeReqDescription
department_idstring–Department id(s), comma separated (from smarthr_list_departments).
emp_codestring–Exact employee number.
emp_statusstring–Only employees with this status.
employment_type_idstring–Employment type id(s), comma separated (from smarthr_list_employment_types).
entered_at_fromstring–Hired on or after this day (yyyy-mm-dd).
entered_at_tostring–Hired on or before this day (yyyy-mm-dd).
fieldsarray–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…
idstring–Employee id(s), comma separated.
pageinteger–Page number, 1-based (default 1). Use next_page from the previous reply.
per_pageinteger–Results per page, 1-100 (default 50).
position_idstring–Position id(s), comma separated (from smarthr_list_positions).
qstring–Free-text search over name, business name, department name and position name.
resigned_at_fromstring–Resigned on or after this day (yyyy-mm-dd).
resigned_at_tostring–Resigned on or before this day (yyyy-mm-dd).
sortstring–Sort order: property names, several separated by commas, a leading "-" means descending, e.g. "-updated_at".
user_idstring–User id(s), comma separated.

No output schema declared.

No examples provided.

smarthr_list_employment_types ~90

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

NameTypeReqDescription
pageinteger–Page number, 1-based (default 1). Use next_page from the previous reply.
per_pageinteger–Results per page, 1-100 (default 50).

No output schema declared.

No examples provided.

smarthr_list_grades ~67

List grades (等級) with their rank.

NameTypeReqDescription
pageinteger–Page number, 1-based (default 1). Use next_page from the previous reply.
per_pageinteger–Results per page, 1-100 (default 50).

No output schema declared.

No examples provided.

smarthr_list_job_categories ~64

List job categories (職種).

NameTypeReqDescription
pageinteger–Page number, 1-based (default 1). Use next_page from the previous reply.
per_pageinteger–Results per page, 1-100 (default 50).

No output schema declared.

No examples provided.

smarthr_list_maternity_childcare_leaves ~117

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.

NameTypeReqDescription
employee_idstringyesEmployee id (from smarthr_list_employees).
pageinteger–Page number, 1-based (default 1). Use next_page from the previous reply.
per_pageinteger–Results per page, 1-100 (default 50).

No output schema declared.

No examples provided.

smarthr_list_positions ~101

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

NameTypeReqDescription
pageinteger–Page number, 1-based (default 1). Use next_page from the previous reply.
per_pageinteger–Results per page, 1-100 (default 50).
sortstring–Sort order: property names, several separated by commas, a leading "-" means descending, e.g. "-updated_at".

No output schema declared.

No examples provided.

smarthr_list_users ~148

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.

NameTypeReqDescription
embedstring–Embed the related object instead of only its id.
pageinteger–Page number, 1-based (default 1). Use next_page from the previous reply.
per_pageinteger–Results per page, 1-100 (default 50).
sortstring–Sort order: property names, several separated by commas, a leading "-" means descending, e.g. "-updated_at".

No output schema declared.

No examples provided.

smarthr_list_webhooks ~90

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.

NameTypeReqDescription
pageinteger–Page number, 1-based (default 1). Use next_page from the previous reply.
per_pageinteger–Results per page, 1-100 (default 50).

No output schema declared.

No examples provided.

smarthr_update_department ~104

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

NameTypeReqDescription
codestring–New code.
idstringyesDepartment id (from smarthr_list_departments).
namestring–New name (no slash). Omit to keep the current name.
parent_idstring–New parent department id.
positioninteger–New display order among siblings.

No output schema declared.

No examples provided.

smarthr_update_employee ~490

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.

NameTypeReqDescription
addressobject–Address; the city is required by SmartHR.
birth_atstring–Date of birth, yyyy-mm-dd.
biz_establishment_idstring–Business establishment id (from smarthr_list_business_establishments).
business_first_namestring–Business name: given name.
business_last_namestring–Business name: family name.
department_idsarray–Department ids (from smarthr_list_departments); replaces the current departments.
emailstring–Work or contact email address.
emp_codestring–Employee number (社員番号).
emp_statusstring–Employment status: employed, absent (on leave) or retired.
employment_type_idstring–Employment type id (from smarthr_list_employment_types).
entered_atstring–Hire date, yyyy-mm-dd.
first_namestring–Given name (戸籍上の名).
first_name_yomistring–Given name in katakana.
genderstring–Legal gender (戸籍上の性別): male or female.
gradestring–Grade name (等級).
idstringyesEmployee id (from smarthr_list_employees).
job_categorystring–Job category name (職種).
last_namestring–Family name (戸籍上の姓).
last_name_yomistring–Family name in katakana.
occupationstring–Job description (業務内容).
positionsarray–Position (job title) NAMES, e.g. ["部長"]; a name that does not exist yet may be created by SmartHR.
resigned_atstring–Resignation date, yyyy-mm-dd.
resigned_reasonstring–Reason for leaving.
tel_numberstring–Phone number.

No output schema declared.

No examples provided.

Install

How do I install the SmartHR MCP by usefulapi server?

SmartHR MCP by usefulapi is a hosted endpoint at https://smarthr.usefulapi.io/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · smarthr.usefulapi.io

# add to Claude Code
claude mcp add --transport http io-usefulapi-smarthr 'https://smarthr.usefulapi.io/mcp'
Common questions

What is the SmartHR MCP by usefulapi server?

SmartHR MCP by usefulapi is listed in the public MCP registry as io.usefulapi/smarthr. MCP server for SmartHR, employees, departments, dependents and employee invitations. This page covers its hosted endpoint (https://smarthr.usefulapi.io/mcp).

Is the SmartHR MCP by usefulapi server safe to use?

SmartHR MCP by usefulapi scores 18 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the SmartHR MCP by usefulapi server expose?

SmartHR MCP by usefulapi exposes 23 tools: smarthr_list_employees, smarthr_get_employee, smarthr_list_dependents, smarthr_list_maternity_childcare_leaves, smarthr_list_departments, and 18 more. Their descriptions and schemas cost roughly 3,637 tokens of context every time the server is loaded.

Does the SmartHR MCP by usefulapi server require authentication?

Its publisher declares no required credentials for SmartHR MCP by usefulapi. We have not been able to confirm that against the live endpoint, and a server can require authorisation without declaring it here.

Is the SmartHR MCP by usefulapi server still maintained?

SmartHR MCP by usefulapi is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

What did VerifyMCP test on the SmartHR MCP by usefulapi server?

VerifyMCP ran 4 checks on SmartHR MCP by usefulapi, covering TLS certificate, HSTS header, DNSSEC and Transport. 7 items could not be completed, a gap on our side rather than a finding about SmartHR MCP by usefulapi: Authorization, HTTPS, Schema quality, Stability and 3 more. 5 categories score 0 for that reason, because we only credit what we can confirm. Supply Chain Security and Provenance & Transparency do not apply to a hosted endpoint, so they were not tested. The score does not measure everything, and the scoring documentation lists what it leaves out.