Azwa's workspace

NASF Cloud

A private MCP-powered analysis layer for SPSS datasets, statistical workflows, and agent-guided research. Built by Azwa, for UKM.

Statistical Analysis Framework

SAF MCP is live.

Your own MCP server is running at https://nasf.cloud/mcp. Any OpenAI-compatible agent — Hermes, opencode, Claude Code — can connect and run statistical analysis on your SPSS datasets directly.

Sandboxed data root

All file access confined to /root/saf-data. No dataset leaves the VPS.

Agent-ready

24 MCP tools — inspect, profile, frequencies, crosstabs, reliability, convert, and analyse without a GUI.

SPSS + Excel + CSV

Reads .sav, .zsav, .por, .csv, .tsv, .xlsx — generates SPSS syntax for handoff.

All tools

24 tools — 7 dataset + 5 survey + 12 stat.

Every tool is a callable MCP endpoint. No API keys, no signup — just your agent talking to SAF.

Dataset operations

list_data_filesList available datasets under data root
inspect_spss_metadataRead labels, formats, value labels, file structure
preview_spss_dataPreview rows before full analysis
profile_spss_dataSummarise variables, missingness, distributions
convert_spss_to_csvExport SPSS to portable CSV
convert_csv_to_savImport CSV back to SPSS format
generate_basic_spss_syntaxProduce reproducible SPSS syntax
cross_tabulationContingency tables with row/column/total %

Survey analysis

saf_stat_frequenciesFrequency tables for categorical variables
saf_stat_reliabilityCronbach's alpha with item diagnostics
saf_stat_describe_allDescribe all numeric columns at once
list_toolsList all available MCP tools dynamically

Statistical analysis

saf_stat_descriptivesMean, SD, min, max, quartiles, skew, kurtosis
saf_stat_assumptionsNormality & homoscedasticity tests
saf_stat_compare_groupst-test, Mann-Whitney, Wilcoxon
saf_stat_anovaOne-way, repeated measures, Kruskal-Wallis
saf_stat_correlatePearson, Spearman, point-biserial
saf_stat_regressLinear & logistic regression
saf_stat_chi_squareχ² test of independence & goodness-of-fit
saf_stat_nonparametricSign test, Friedman, runs test
saf_stat_effect_sizeCohen's d, η², Cramér's V, odds ratio
saf_stat_powerPower analysis for common designs
saf_stat_outliersZ-score, IQR, Mahalanobis distance
saf_stat_missingMissingness patterns, MCAR/MAR/MNAR

Model Context Protocol

One endpoint, every agent.

SAF speaks the MCP streamable-http protocol. Any agent that supports remote MCP servers can connect in one line.

"mcp": {
  "saf": {
    "type": "remote",
    "url": "https://nasf.cloud/mcp",
    "enabled": true
  }
}
mcp_servers:
  saf:
    url: "https://nasf.cloud/mcp"
    type: remote
    enabled: true
{
  "mcpServers": {
    "saf": {
      "type": "remote",
      "url": "https://nasf.cloud/mcp"
    }
  }
}
Your AgentHermes, opencode, Claude Code
SAF MCPhttps://nasf.cloud/mcp
Data Root/root/saf-data
Zero config needed. Tools auto-discover when your agent connects.

Security

Local-first handling for sensitive respondent data.

Dataset access stays under the data root. Paths are validated, traversal is blocked, generated syntax is text-only — never auto-executed.

SandboxedFile root enforcement
PrivateNo dataset upload to third parties
AuditableStructured tool responses

Azwa Fazil

UKM. SPSS. MCP.

Built for anthropology and sociology research workflows at Universiti Kebangsaan Malaysia. SAF turns respondent datasets into analysable, auditable, agent-friendly data — without leaving the terminal.

Endpoint https://nasf.cloud/mcp
Protocol streamable-http
Status live
Data root /root/saf-data
Stack Python + MCP SDK · Caddy · Hostinger VPS
Maintainer Azwa Fazil — azwafazil21@gmail.com