@osqi/gzzoc
v0.1.0
Published
MCP server for querying and submitting GZZOC registrations
Downloads
78
Maintainers
Readme
@osqi/gzzoc
An unofficial Model Context Protocol server for querying departments, doctors, schedules, time-slot availability, linked patients, and registration results at Zhongshan Ophthalmic Center. It can also submit a registration when explicitly called. Payment, login automation, polling, cancellation, and captcha handling are intentionally out of scope.
Requirements
- Node.js 20 or newer
- A current Cookie header copied from a logged-in GZZOC client session
The Cookie is read from GZZOC_COOKIE. Only JSESSIONID and smctoken are
forwarded; cookie attributes such as Path and Expires are discarded.
Hermes Agent
Add the server to ~/.hermes/config.yaml:
mcp_servers:
gzzoc:
command: "npx"
args: ["-y", "@osqi/gzzoc"]
env:
GZZOC_COOKIE: "${GZZOC_COOKIE}"
supports_parallel_tool_calls: falseRestart Hermes or run /reload-mcp. Hermes registers the tools as
mcp_gzzoc_<tool_name>.
Install the workflow skill from the repository:
hermes skills install osqi/gzzoc/skills/gzzoc-registrationExposed tools
list_departmentslist_doctorsget_doctor_descriptionlist_doctor_scheduleslist_registration_slotslist_patientscheck_unpaid_registrationsubmit_registrationget_registration
list_registration_slots is the authoritative availability check. A slot is
available only when enabled is true and regLeaveCount is greater than zero.
submit_registration performs its own unpaid-registration guard and refuses to
call the submission endpoint when isUnPaid is true. Submission is never
retried.
Security
Do not commit cookies or captured patient data. Tool output masks mobile and identity-card numbers in patient listings. The MCP server does not log request URLs, headers, cookies, or patient identifiers.
This package uses undocumented interfaces and may stop working if the upstream service changes. Use it only with accounts and patient records you are authorized to access.
Development
npm install
npm run typecheck
npm run lint
npm test
npm run pack:check