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

io.github.cletcher/chaprola

NPM · @CHAPROLA/MCP-SERVER · SCANNED AUG 3

Serverless API backend: query, JOIN, pivot, batch ops, email, FHIR, programs via HTTP.

+18 this week 71 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →

Supply Chain Security87
  • No malware found by supply-chain analysis.Pass
  • Only part of the dependency tree could be resolved (95 of 99), so this covers what we could see, not the whole tree.Partial
  • No install/post-install scripts declared.Pass
  • Only part of the dependency tree could be resolved (95 of 99), so this covers what we could see, not the whole tree. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability82
  • 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
  • AI-judged instruction clarity (good).Pass
  • Tool/resource definitions use about 3600 tokens (~73/item across 49 items; 45 tools + 4 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
  • Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

npm · @chaprola/mcp-server

# add to Claude Code
claude mcp add cletcher-chaprola -- npx -y @chaprola/mcp-server
# add to Codex CLI
codex mcp add cletcher-chaprola -- npx -y @chaprola/mcp-server
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "cletcher-chaprola": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@chaprola/mcp-server"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add cletcher-chaprola --command npx --arg -y --arg @chaprola/mcp-server
# ~/.hermes/config.yaml
mcp_servers:
  cletcher-chaprola:
    command: "npx"
    args: ["-y", "@chaprola/mcp-server"]
// mcp.json
{
  "mcpServers": {
    "cletcher-chaprola": {
      "command": "npx",
      "args": [
        "-y",
        "@chaprola/mcp-server"
      ]
    }
  }
}
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.

  • 3 Aug 26 +4
    • Stability: unverified → 0.27 functional
  • 2 Aug 26 −3
    • Known CVEs: partial → unverified security
    • Stability: Stability not yet verified: we do not have a sandbox capture of the MCP schema this version of the package serves yet. security
    • Capabilities: pass → unverified functional
    • Dependency health: partial → unverified functional
    • Security disclosure: fail → unverified functional
    • Schema quality: 100 → unverified functional
    • Tool coverage: 100 → unverified functional
  • 1 Aug 26 +44
    • Provenance: unverified → fail security
    • Malware scan: unverified → pass security
    • Install scripts: unverified → pass security
    • Known CVEs: unverified → partial security
    • Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
    • Maintenance: unverified → pass functional
    • License: unverified → pass functional
    • Dependency health: unverified → partial functional
    • MCP protocol: unverified → pass functional
    • Schema quality: unverified → good functional
    • Licence: MIT functional
  • 31 Jul 26 −27
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 +29
    • Tool coverage: unverified → 100 functional
    • Schema quality: unverified → 100 functional
  • 28 Jul 26 −29
    • Tool coverage: 100 → unverified functional
    • Schema quality: 100 → unverified functional
  • 27 Jul 26 53

    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 3 Aug 2026 · Analysed npm/@chaprola/[email protected]

Provenance none

Ecosystem: npm · Outcome: none

Dependencies 95 packages

95 packages in the resolved dependency tree · 95 deprecated · 29 stale.

The dependency tree was only partially resolved, so these counts may be incomplete.

MCP tools — 45 exposed · ~3,485 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.

Tool Tokens
chaprola_alter ~109

Modify a data file's schema: widen/narrow/rename fields, add new fields, drop fields. Transforms existing data to match the new schema.

NameTypeReqDescription
addarrayFields to add
alterarrayFields to alter
droparrayField names to drop
namestringyesData file name (without extension)
outputstringOutput file name (default: in-place)
projectstringyesProject name

No output schema declared.

No examples provided.

chaprola_baa_status ~22

Check whether the authenticated user has signed the BAA

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

chaprola_baa_text ~29

Get the current Business Associate Agreement text and version. Present to human for review before signing

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

chaprola_check_username ~29

Check if a username is available before registering

NameTypeReqDescription
usernamestringyesUsername to check

No output schema declared.

No examples provided.

chaprola_compile ~167

Compile Chaprola source (.CS) to bytecode (.PR). READ chaprola://cookbook BEFORE writing source. Key syntax: no PROGRAM keyword (start with commands), no commas, MOVE+PRINT 0 buffer model (not PRINT field), SEEK for primary records, OPEN/READ/WRITE/CLOSE for secondary files, LET supports one operation (no parentheses), field addressing via P.field/S.field requires primary_format/secondary_format params.

NameTypeReqDescription
namestringyesProgram name (without extension)
primary_formatstringPrimary data file name (enables P.fieldname addressing)
projectstringyesProject name
secondary_formatstringSecondary format file name (enables S.fieldname addressing)
sourcestringyesChaprola source code

No output schema declared.

No examples provided.

chaprola_consolidate ~74

Merge a .MRG file into its parent .DA, producing a clean sorted data file. Deletes .MRG and .IGN after success. Aborts if .MRG was modified during the operation.

NameTypeReqDescription
filestringyesData file name (without extension)
projectstringyesProject name

No output schema declared.

No examples provided.

chaprola_delete_account ~47

Delete an account and all associated data. Requires passcode confirmation

NameTypeReqDescription
passcodestringyesAccount passcode for confirmation
usernamestringyesAccount username to delete

No output schema declared.

No examples provided.

chaprola_delete_record ~73

Delete a single record matched by a where clause. Marks the record as ignored (.IGN). Physically removed on consolidation.

NameTypeReqDescription
filestringyesData file name (without extension)
projectstringyesProject name
whereobjectyesField name → value pairs to identify exactly one record

No output schema declared.

No examples provided.

chaprola_download ~63

Get a presigned S3 URL to download any file you own (1-hour expiry)

NameTypeReqDescription
filestringyesFile name with extension (e.g., REPORT.R)
projectstringyesProject name
typestringyesFile type directory

No output schema declared.

No examples provided.

chaprola_email_delete ~30

Delete a specific email from your mailbox

NameTypeReqDescription
message_idstringyesMessage ID to delete

No output schema declared.

No examples provided.

chaprola_email_inbox ~56

List emails in the authenticated user's mailbox

NameTypeReqDescription
beforestringISO 8601 timestamp — return emails before this time
limitnumberMax emails to return (default 20, max 100)

No output schema declared.

No examples provided.

chaprola_email_read ~31

Read a specific email by message_id

NameTypeReqDescription
message_idstringyesMessage ID from inbox listing

No output schema declared.

No examples provided.

chaprola_email_send ~79

Send an email from your @chaprola.org address. Subject to content moderation

NameTypeReqDescription
fromstringSender local part (default: your username)
htmlstringHTML body
subjectstringyesEmail subject
textstringyesPlain text body
tostringyesRecipient email address

No output schema declared.

No examples provided.

chaprola_export ~43

Export Chaprola .DA + .F files back to JSON

NameTypeReqDescription
namestringyesFile name (without extension)
projectstringyesProject name

No output schema declared.

No examples provided.

chaprola_export_report ~118

Run a .PR program and save output as a persistent .R file in S3

NameTypeReqDescription
formatstringOutput format (default: text)
namestringyesProgram name
nophibooleanIf true, obfuscate PHI-flagged fields
primary_filestringPrimary data file to load
projectstringyesProject name
report_namestringCustom output file name
titlestringReport title (used in PDF header)

No output schema declared.

No examples provided.

chaprola_fetch ~89

Fetch any URL and return clean content. HTML pages converted to markdown. SSRF-protected. Rate limit: 20/day per user

NameTypeReqDescription
formatstringOutput format (default: markdown)
max_lengthnumberMax output characters (default: 50000, max: 200000)
urlstringyesURL to fetch (http:// or https://)

No output schema declared.

No examples provided.

chaprola_format ~55

Inspect a data file's schema — returns field names, positions, lengths, types, and PHI flags

NameTypeReqDescription
namestringyesData file name (without .F extension)
projectstringyesProject name

No output schema declared.

No examples provided.

chaprola_hello ~35

Health check — verify the Chaprola API is running

NameTypeReqDescription
namestringName to greet (default: world)

No output schema declared.

No examples provided.

chaprola_import ~102

Import JSON data into Chaprola format files (.F + .DA). Sign BAA first if handling PHI

NameTypeReqDescription
dataarrayyesArray of flat JSON objects to import
expires_in_daysnumberDays until data expires (default: 90)
formatstringData format: json (default) or fhir
namestringyesFile name (without extension)
projectstringyesProject name

No output schema declared.

No examples provided.

chaprola_import_download ~114

Import data directly from a public URL (CSV, TSV, JSON, NDJSON, Parquet, Excel). Optional AI-powered schema inference

NameTypeReqDescription
instructionsstringNatural language instructions for AI-powered field selection and transforms
max_rowsnumberMaximum rows to import (default: 5,000,000)
namestringyesOutput file name (without extension)
projectstringyesProject name
urlstringyesPublic URL to download (http/https only)

No output schema declared.

No examples provided.

chaprola_import_process ~69

Process a file previously uploaded to S3 via presigned URL. Generates .F + .DA files

NameTypeReqDescription
formatstringData format: json (default) or fhir
namestringyesFile name (without extension)
projectstringyesProject name

No output schema declared.

No examples provided.

chaprola_import_url ~53

Get a presigned S3 upload URL for large files (bypasses 6MB API Gateway limit)

NameTypeReqDescription
namestringyesFile name (without extension)
projectstringyesProject name

No output schema declared.

No examples provided.

chaprola_index ~55

Build an index file (.IDX) for fast lookups on a field

NameTypeReqDescription
fieldstringyesField name to index
filestringyesData file to index
projectstringyesProject name

No output schema declared.

No examples provided.

chaprola_insert_record ~78

Insert a new record into a data file's merge file (.MRG). The record appears at the end of the file until consolidation.

NameTypeReqDescription
filestringyesData file name (without extension)
projectstringyesProject name
recordobjectyesField name → value pairs. Unspecified fields default to blanks.

No output schema declared.

No examples provided.

chaprola_list ~52

List files in a project with optional wildcard pattern

NameTypeReqDescription
patternstringWildcard pattern to filter files (e.g., EMP*)
projectstringyesProject name (use * for all projects)

No output schema declared.

No examples provided.

chaprola_login ~47

Login and get a new API key. WARNING: invalidates the previous API key

NameTypeReqDescription
passcodestringyesYour passcode
usernamestringyesYour registered username

No output schema declared.

No examples provided.

chaprola_merge ~77

Merge two sorted data files into one. Both must share the same format (.F)

NameTypeReqDescription
file_astringyesFirst data file
file_bstringyesSecond data file
keystringyesMerge key field
outputstringyesOutput file name
projectstringyesProject name

No output schema declared.

No examples provided.

chaprola_optimize ~140

Run HULDRA nonlinear optimization using a compiled .PR as the objective evaluator

NameTypeReqDescription
async_execbooleanIf true, return job_id for long optimizations
elementsarrayyesParameters to optimize
h_initialnumberInitial step fraction (default: 0.125)
max_iterationsnumberMax iterations (default: 100)
objectivesarrayyesObjective values to minimize
primary_filestringyesData file to pass to the VALUE program
programstringyesCompiled .PR program name (the VALUE program)
projectstringyesProject name

No output schema declared.

No examples provided.

chaprola_optimize_status ~44

Check status of an async optimization job

NameTypeReqDescription
job_idstringyesJob ID from async /optimize response
projectstringyesProject name

No output schema declared.

No examples provided.

chaprola_publish ~105

Publish a compiled program for public access via /report

NameTypeReqDescription
aclstringAccess control: public (anyone), authenticated (valid API key required), owner (owner's API key only), token (action_token required). Default: public
namestringyesProgram name to publish
primary_filestringData file to load when running the report
projectstringyesProject name
recordnumberStarting record number

No output schema declared.

No examples provided.

chaprola_query ~223

SQL-free data query with WHERE, SELECT, aggregation, ORDER BY, JOIN, pivot, and Mercury scoring

NameTypeReqDescription
aggregatearrayAggregation: [{field, func}]. Funcs: count, sum, avg, min, max, stddev
filestringyesData file to query
joinobjectJoin: {file, on, type, method}
limitnumberMax results to return
mercuryobjectMercury scoring: {fields: [{field, target, weight}]}
offsetnumberSkip this many results
order_byarraySort: [{field, dir}]
pivotobjectPivot: {row, column, values, totals, grand_total}
projectstringyesProject name
selectarrayFields to include in output
whereobjectFilter: {field, op, value}. Ops: eq, ne, gt, ge, lt, le, between, contains, starts_with

No output schema declared.

No examples provided.

chaprola_register ~72

Register a new Chaprola account. Returns an API key — save it immediately

NameTypeReqDescription
passcodestringyes16-128 characters. Use a long, unique passcode
usernamestringyes3-40 chars, alphanumeric + hyphens/underscores, starts with letter

No output schema declared.

No examples provided.

chaprola_report ~131

Run a published program and return output. No auth required — program must be published first via /publish

NameTypeReqDescription
namestringyesName of the published .PR file
paramsobjectParameters to inject before execution. Named params (e.g., {deck: "kanji", level: 3}) are read in programs via PARAM.name. Legacy R-variables (r1-r20) also supported. Use chaprola_report_params to di…
projectstringyesProject containing the program
useridstringyesOwner of the published program

No output schema declared.

No examples provided.

chaprola_report_params ~87

Get the parameter schema for a published report. Returns the .PF file as JSON — field names, types, and widths. Use this to discover what params a report accepts before calling chaprola_report.

NameTypeReqDescription
namestringyesName of the published .PR file
projectstringyesProject containing the program
useridstringyesOwner of the published program

No output schema declared.

No examples provided.

chaprola_run ~125

Execute a compiled .PR program. Use async:true for large datasets (>100K records)

NameTypeReqDescription
async_execbooleanIf true, run asynchronously and return job_id for polling
namestringyesProgram name (without extension)
nophibooleanIf true, obfuscate PHI-flagged fields during execution
primary_filestringPrimary data file to load
projectstringyesProject name
recordnumberStarting record number
secondary_filesarraySecondary files to make available

No output schema declared.

No examples provided.

chaprola_run_each ~120

Run a compiled .PR program against every record in a data file. Like CHAPRPG from the original SCIOS. Use this for scoring, bulk updates, conditional logic across records.

NameTypeReqDescription
filestringyesData file to iterate (.DA)
programstringyesCompiled program name (.PR) in the same project
projectstringyesProject name
wherearrayOptional filter — only run against matching records
where_logicstringHow to combine multiple where conditions (default: and)

No output schema declared.

No examples provided.

chaprola_run_status ~47

Check status of an async job. Returns full output when done

NameTypeReqDescription
job_idstringyesJob ID from async /run response
projectstringyesProject name

No output schema declared.

No examples provided.

chaprola_schedule ~139

Create a scheduled job that runs a Chaprola endpoint on a recurring cron. Max 10 schedules/user, 15-min minimum interval

NameTypeReqDescription
bodyobjectyesRequest body for the target endpoint. userid is injected automatically
cronstringyesStandard 5-field cron expression (min hour day month weekday). Minimum interval: 15 minutes
endpointstringyesTarget endpoint to call
namestringyesUnique name for this schedule (alphanumeric + hyphens/underscores)
skip_if_unchangedbooleanSkip when response matches previous run (SHA-256 hash). Default: false

No output schema declared.

No examples provided.

chaprola_schedule_delete ~30

Delete a scheduled job by name

NameTypeReqDescription
namestringyesName of the schedule to delete

No output schema declared.

No examples provided.

chaprola_schedule_list ~26

List all scheduled jobs for the authenticated user with run history and next execution time

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

chaprola_search ~86

Search the web via Brave Search API. Returns titles, URLs, and snippets. Optional AI-grounded summary. Rate limit: 10/day per user

NameTypeReqDescription
countnumberNumber of results to return (default 5, max 20)
querystringyesSearch query string
summarizebooleanInclude AI-grounded summary from Brave Answers API

No output schema declared.

No examples provided.

chaprola_sign_baa ~113

Sign the BAA. STOP: You MUST call chaprola_baa_text first, show the FULL text to the human, and get their EXPLICIT typed approval before calling this. Never sign automatically. Only needed for PHI — non-PHI data works without a BAA.

NameTypeReqDescription
organizationstringOrganization name (the Covered Entity)
signatory_namestringyesFull name of the person agreeing to the BAA
signatory_titlestringTitle of the signatory

No output schema declared.

No examples provided.

chaprola_sort ~64

Sort a data file by one or more fields. Modifies the file in place

NameTypeReqDescription
filestringyesData file to sort
projectstringyesProject name
sort_byarrayyesSort specification: [{field, dir?, type?}]

No output schema declared.

No examples provided.

chaprola_unpublish ~39

Remove public access from a published program

NameTypeReqDescription
namestringyesProgram name to unpublish
projectstringyesProject name

No output schema declared.

No examples provided.

chaprola_update_record ~98

Update fields in a single record matched by a where clause. If no sort-key changes, updates in place; otherwise marks old record ignored and appends to merge file.

NameTypeReqDescription
filestringyesData file name (without extension)
projectstringyesProject name
setobjectyesField name → new value pairs to update
whereobjectyesField name → value pairs to identify exactly one record

No output schema declared.

No examples provided.