{"_id":"@ace-ai/ace-sdk","name":"@ace-ai/ace-sdk","dist-tags":{"latest":"1.1.0"},"versions":{"1.1.0":{"name":"@ace-ai/ace-sdk","version":"1.1.0","description":"ACE SDK for generating synthetic data and ensuring security and compliance with PII and HIPAA regulations. Includes MCP server protection.","main":"index.js","scripts":{"test":"mocha test/**/*.test.js","test:unit":"node test.js"},"keywords":["ace","sdk","synthetic-data","security","compliance","pii","hipaa","mcp","llm","data-protection"],"author":{"name":"ACE Company"},"license":"MIT","dependencies":{"@faker-js/faker":"^8.4.1"},"devDependencies":{"chai":"^4.3.7","mocha":"^10.2.0"},"_id":"@ace-ai/ace-sdk@1.1.0","gitHead":"255febbb6fa95713930d1f8a9ce34dcde0173eeb","_nodeVersion":"20.19.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-EXzB7s84Ny/622vi3341xc44jQAHbmWpb0lSdx2VG82+WIfWfcQfWvMpAnYTHouJkSvoNOJ0/+NDAirXdhaQKQ==","shasum":"edc5b614f719f24d7a97d6758e88c6ef13e865b3","tarball":"https://registry.npmjs.org/@ace-ai/ace-sdk/-/ace-sdk-1.1.0.tgz","fileCount":18,"unpackedSize":39674,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCICOErXFwgWWYm3lpGCHWG8KsFxvAIa723HSGZMd+M1J/AiAclCfR5AtvMu9lF10QcEu0jS7ZH51Myd8mJ1DJcGMvWg=="}]},"_npmUser":{"name":"samhajj","email":"sam@aceaicompany.com"},"directories":{},"maintainers":[{"name":"samhajj","email":"sam@aceaicompany.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/ace-sdk_1.1.0_1760442952361_0.37407775693734324"},"_hasShrinkwrap":false}},"time":{"created":"2025-10-14T11:55:52.260Z","1.1.0":"2025-10-14T11:55:52.558Z","modified":"2025-10-14T11:55:52.921Z"},"maintainers":[{"name":"samhajj","email":"sam@aceaicompany.com"}],"description":"ACE SDK for generating synthetic data and ensuring security and compliance with PII and HIPAA regulations. Includes MCP server protection.","keywords":["ace","sdk","synthetic-data","security","compliance","pii","hipaa","mcp","llm","data-protection"],"author":{"name":"ACE Company"},"license":"MIT","readme":"# ACE SDK\n\nThe ACE SDK is a JavaScript library that provides tools for generating synthetic data and ensuring security and compliance with PII and HIPAA regulations. It also includes specialized protections for MCP (Model Context Protocol) servers.\n\n## Real-World Use Case\n\nThe ACE SDK was developed to solve critical security challenges in healthcare AI applications. In a real-world scenario, a large healthcare provider, CareConnect, used the ACE SDK to secure their AI-powered patient chatbot \"CareBot\". The SDK helped them:\n\n- Prevent accidental exposure of credentials and secrets\n- Protect against unauthorized access to MCP servers\n- Handle PII and HIPAA data safely\n- Ensure all patient data remained within the US\n- Optimize costs while maintaining robust security\n\nFor a detailed walkthrough of this use case, see [ACE_SDK_Use_Case.md](../ACE_SDK_Use_Case.md).\n\n## Installation\n\n```bash\nnpm install ace-sdk\n```\n\n## Usage\n\n```javascript\nconst ace = require('ace-sdk');\n\n// Generate synthetic data\nconst schema = {\n  name: 'name',\n  email: 'email',\n  age: 'number'\n};\n\nconst data = ace.synthetic.generate(schema);\nconsole.log(data);\n\n// Security and compliance\nconst text = 'This is a test';\nconsole.log(ace.security.scanForSecrets(text));\nconsole.log(ace.security.containsPII(text));\nconsole.log(ace.security.containsHIPAA(text));\nconsole.log(ace.security.sanitizeText(text));\n\n// MCP server protection\nconst request = { data: 'some data' };\nconsole.log(ace.mcp.protectHost(request));\nconsole.log(ace.mcp.validateBeforeLLM(text));\nconsole.log(ace.mcp.ensureUSResidency(text, 'US'));\n```\n\n## Demo\n\nTo see the ACE SDK in action, run the demo script:\n\n```bash\nnode demo.js\n```\n\nThis demo showcases how the ACE SDK protects against security risks in a healthcare AI application, demonstrating all key features.\n\n## API\n\n### `ace.synthetic.generate(schema)`\n\nGenerates synthetic data based on a schema.\n\n- `schema` (Object): The schema to generate data from.\n\nReturns: Object - The generated synthetic data.\n\n### `ace.security.scanForSecrets(text)`\n\nScans for secrets in a string.\n\n- `text` (String): The text to scan.\n\nReturns: Boolean - True if secrets are found, false otherwise.\n\n### `ace.security.containsPII(text)`\n\nChecks if a string contains PII.\n\n- `text` (String): The text to check.\n\nReturns: Boolean - True if PII is found, false otherwise.\n\n### `ace.security.containsHIPAA(text)`\n\nChecks if a string contains HIPAA data.\n\n- `text` (String): The text to check.\n\nReturns: Boolean - True if HIPAA data is found, false otherwise.\n\n### `ace.security.sanitizeText(text)`\n\nSanitizes a string by removing PII and HIPAA data.\n\n- `text` (String): The text to sanitize.\n\nReturns: String - The sanitized text.\n\n### `ace.mcp.protectHost(request)`\n\nProtects the MCP host application by validating incoming requests.\n\n- `request` (Object): The incoming request object.\n\nReturns: Boolean - True if request is safe, false otherwise.\n\n### `ace.mcp.validateBeforeLLM(data)`\n\nValidates data before sending to LLM to prevent PII/HIPAA leakage.\n\n- `data` (String): The data to validate.\n\nReturns: Object - Validation result with sanitized data.\n\n### `ace.mcp.ensureUSResidency(data, destination)`\n\nEnsures HIPAA data doesn't leave the US.\n\n- `data` (String): The data to check.\n- `destination` (String): The destination country code.\n\nReturns: Boolean - True if data can be sent, false otherwise.\n\n## License\n\nMIT","readmeFilename":"README.md","_rev":"1-e728b02d2811fdd8318f79c7d32a7492"}