@acordova_ai/fshc-cube-mcp
v26.9.4
Published
FSHC-Cube MCP — bundles PCC Relay (SQL), UKG WFM, UKG HCM, Telos LTC (SQL), NetHealth DW (SQL), Acumatica ERP (PostgreSQL), Waystar SFTP (PostgreSQL), Waystar API (live REST/SOAP) and ATTOM property recorder data (PostgreSQL) behind one stdio MCP. All cal
Readme
FSHC-Cube MCP
One MCP server that bundles nine FSHC back-end systems behind a single set of tools:
| System | What it exposes | Access |
| ----------------- | --------------------------------------------------------------------------------------- | ------------------ |
| PCC Relay | PointClickCare ODS (SQL Server) — census, billing, clinical, etc. | Read-only SELECT |
| UKG WFM | Workforce Management — timecards, punches, accruals, leave, attendance, people | Read-only |
| UKG HCM | Human Capital Management — personnel, payroll, employee data | Read-only |
| TELOS | Telos LTC — resident Medicaid eligibility (status, renewals, coverage, MESAV) | Read-only SELECT |
| NetHealth DW | NetHealth data warehouse (SQL Server) — therapy/rehab | Read-only SELECT |
| Acumatica ERP | Acumatica financials (PostgreSQL) — AP/AR/GL activity from the daily SFTP export | Read-only SELECT |
| Waystar SFTP | Claims clearinghouse batch files (PostgreSQL) — claim status (X12 277), HQ remittance | Read-only SELECT |
| Waystar API | Live Waystar REST/SOAP calls — eligibility, claim status, estimates, coverage detection | Read-only calls |
| ATTOM | County deed & mortgage recorder filings (PostgreSQL) — sales, owners, lenders, amounts | Read-only SELECT |
Every call is relayed through an N8N webhook that injects the real credentials. This server stores no API keys, passwords, or connection strings — only a shared relay token that you provide at install time. All operations are read-only.
Once installed, you just ask in natural language — e.g. "what was employee 008579's timecard last month?", "census count for June 29", "Jeff Patel's contact info" — and the assistant discovers the right endpoint and runs the query for you.
Before you start
You need one thing from your administrator: the FSHC-Cube relay token. It is required for every install method. Without it the server will not start.
The token authenticates you to the FSHC-Cube relay. Treat it like a password — do not share it or commit it to code.
Pick the install path that matches your tool:
- Option A — Desktop Extension — for Claude Desktop, Cowork, and similar GUI agents that support MCP Bundles (
.mcpb). No technical setup. Recommended for most users. - Option B — npx / config — for Claude Code and any client configured with an MCP JSON file (Cursor, Windsurf, etc.). Requires Node.js.
Option A — Desktop Extension (one-click)
For: Claude Desktop, Cowork, or any desktop agent that supports MCP Bundles (.mcpb / .dxt).
Prerequisites: none — the bundle ships its own runtime.
1. Download
Download fshc-cube-mcp.mcpb from the GitLab repo:
Download:
https://gitlab.com/<your-group>/<your-repo>/-/releases(replace with your actual GitLab release/download URL)
Save it anywhere (e.g. your Downloads folder).
2. Install
- Open your agent → Settings → Extensions.
- Drag
fshc-cube-mcp.mcpbonto the window, or click “Install extension” and select the file. (On most systems you can also just double-click the.mcpbfile to open the install dialog.) - Review the extension card and click Install.
3. Enter your token
When prompted for “Relay Token”, paste the token from your administrator. The field is masked because it’s stored securely by the app.
4. Turn it on
Toggle the FSHC-Cube MCP extension on. That’s it — the 11 tools are now available. Start a new chat and try: "list the census views in PCC".
Updating
When a new fshc-cube-mcp.mcpb is published to GitLab, download it and install again —
it replaces the previous version. Your token is preserved (or re-enter it if asked).
Uninstalling
Settings → Extensions → FSHC-Cube MCP → Remove.
Option B — npx / config clients
For: Claude Code, Cursor, Windsurf, or any client that uses an MCP configuration file.
Prerequisites: Node.js 18 or newer installed and on your PATH (node --version).
The server is published to npm as @acordova_ai/fshc-cube-mcp. You never clone or
npm install it — npx downloads and caches it automatically on first run.
Claude Code (one-liner)
Windows (PowerShell or CMD):
claude mcp add fshc-cube -s user --env FSHC_CUBE_TOKEN=YOUR_TOKEN_HERE -- cmd /c npx -y @acordova_ai/fshc-cube-mcpmacOS / Linux:
claude mcp add fshc-cube -s user --env FSHC_CUBE_TOKEN=YOUR_TOKEN_HERE -- npx -y @acordova_ai/fshc-cube-mcpVerify it registered:
claude mcp listGeneric MCP config (Cursor, Windsurf, Claude Desktop config file, etc.)
Add this to your client’s MCP config file (e.g. claude_desktop_config.json,
.cursor/mcp.json, .mcp.json).
Windows — a cmd /c wrapper is required (bare npx will not spawn on Windows):
{
"mcpServers": {
"fshc-cube": {
"command": "cmd",
"args": ["/c", "npx", "-y", "@acordova_ai/fshc-cube-mcp"],
"env": { "FSHC_CUBE_TOKEN": "YOUR_TOKEN_HERE" }
}
}
}macOS / Linux:
{
"mcpServers": {
"fshc-cube": {
"command": "npx",
"args": ["-y", "@acordova_ai/fshc-cube-mcp"],
"env": { "FSHC_CUBE_TOKEN": "YOUR_TOKEN_HERE" }
}
}
}Restart the client after editing the config.
Updating
npx uses the latest published version on first run of a session. To force the newest:
npx clear-npx-cache # or: npx -y @acordova_ai/fshc-cube-mcp@latestUsing it — tools and example prompts
You normally don’t call tools directly; you ask in plain language and the assistant picks the right one. The tools follow a discover → describe → call pattern.
| System | Tools |
| ---------------- | ----------------------------------------------------------------------------- |
| WFM | wfm_list_endpoints → wfm_get_endpoint → wfm_request |
| HCM | hcm_list_endpoints → hcm_get_endpoint → hcm_request |
| PCC | pcc_list_schemas → pcc_get_schema → pcc_run_query |
| TELOS | telos_get_schema → telos_run_query |
| NetHealth | nethealth_list_schemas → nethealth_get_schema → nethealth_run_query |
| Acumatica | acumatica_list_schemas → acumatica_get_schema → acumatica_run_query |
| Waystar SFTP | waystar_list_schemas → waystar_get_schema → waystar_run_query |
| Waystar API | waystar_api_* (one tool per Waystar product — eligibility, claim status, …) |
| ATTOM | attom_list_schemas → attom_get_schema → attom_run_query |
*_list_endpoints/pcc_list_schemas— search the catalog to find the right operation/view.*_get_endpoint/pcc_get_schema/telos_get_schema— get the exact parameters / columns before building a call.*_request/pcc_run_query/telos_run_query— execute the read.
WFM is preferred for workforce questions (time, attendance, leave, employees); HCM is used for HR/payroll data WFM doesn’t hold; PCC for clinical/census/billing data; TELOS for resident Medicaid eligibility (status, renewal/recert dates, coverage, applied income, managed care — one Postgres table, queried with SQL).
Example prompts
- "Show me employee 008579’s timecard for last month." → WFM
- "How many patients were in census on June 29?" → PCC
- "What’s Jeff Patel’s contact info?" → HCM
- "List the WFM leave endpoints." → WFM discovery
- "What columns does the daily census view have?" → PCC schema
- "Which residents have a Medicaid renewal due this quarter?" → TELOS
- "What did 1234 Main St last sell for, and who financed it?" → ATTOM
- "How many property transfers were recorded in Duval County in Q2?" → ATTOM
How it works
your prompt
→ assistant picks a tool and builds the call
→ MCP sends POST { token, ... } to the FSHC-Cube N8N webhook (one per system)
→ N8N validates the token, injects the real credentials, calls the system
→ data comes back → assistant answers- WFM / HCM send a descriptor
{ token, method, path, query, body }. N8N prepends the base URL and injects the real auth (WFM OAuth2; HCM Basic + customer key). - PCC sends
{ token, action, sql | table | domain+search }whereactionisquery,schema, orlist. - TELOS sends
{ token, query }— a read-only SQLSELECTagainst the Postgres tablepublic.medicaid_eligibility; N8N runs it and returns the rows. - NetHealth / Acumatica / Waystar SFTP / ATTOM each use their own webhook per
action and send
{ token, action, sql | table | domain+search }, same as PCC. Their table catalogs and column docs are served from the relay host (/opt/<service>-schema-docs, and/opt/attomfor ATTOM) rather than bundled, so a schema change needs no MCP release. - Waystar API sends
{ token, action, ... }to one consolidated webhook that routes each Waystar product internally.
Security
- No credentials in the client. The MCP holds only the relay token; all API secrets live in N8N.
- Read-only.
*_requestallows onlyGETand documentedPOST …/multi_readreads;pcc_run_queryandtelos_run_queryallow only a singleSELECT/WITHstatement. Writes and DDL are blocked. - Least exposure. Only the operational + reference data endpoints are bundled; system-administration endpoints are excluded.
Troubleshooting
| Symptom | Cause / fix |
| --------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| “FSHC_CUBE_TOKEN is not set” and the server won’t start | The token wasn’t provided. Re-enter it (Option A: Extensions settings; Option B: the env block / --env). |
| Nothing happens / “command not found” on Windows (Option B) | Use the cmd /c npx … form shown above, not bare npx. |
| node not found (Option B) | Install Node.js 18+ and reopen the client. (Option A doesn’t need Node.) |
| A WFM query returns empty for another employee | Client-credentials access is governed by the relay’s Function Access Profile (FAP). Ask your admin to confirm the FAP covers that employee. |
| A PCC census/date query is slow or times out | The daily census mart is heavy. Prefer exact-date filters and small TOP N; large date-range aggregates can take 10–35s. |
| An ATTOM/SQL query returns “empty response from webhook” | Usually a token problem, not an empty result: the relay's token gate returns an empty response rather than an auth error. Re-check the token before assuming the query matched no rows. |
| Tools don’t appear after install | Restart the client. For Option B, confirm the config file is valid JSON. |
Full technical reference
README.md is the install-and-use guide. The complete engineering reference —
every service, webhook URL, schema, secret location, ETL runbook, gotcha and
architecture decision — lives in docs/cube-mcp/
(6 documents). Start with 00-overview.md. Not shipped in the .mcpb.
Support
Contact your FSHC-Cube administrator for the relay token, access (FAP) questions, or to report an issue.
Data scope: read-only. No credentials are stored in this client.
