Extract safety data sheet (SDS/MSDS) PDFs into a fixed 16-section JSON record.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Bearer <api_key>. tools/list works without a key; tool calls need a per-customer key with prepaid credit (request access at https://safetydatasheetapi.com/#self-serve-signup).
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Extract one Safety Data Sheet PDF into a normalized 16-section record (product identification, hazards, composition, first aid, transport, regulatory, and more) plus a confidence_score and warnings. Provide the PDF as file_url (a public https URL) or file_base64. Billed per document from prepaid credit (failures are not billed). Requires an API key.
Public https URL of the SDS PDF.
Optional file name, for example acetone-sds.pdf.
Base64-encoded SDS PDF bytes (use for small files).
Optional language hint such as en, de, fr.
Optional output schema version.
Also return the XML and/or CSV renderings. Omitted by default to keep results compact.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Extract one Safety Data Sheet PDF into a normalized 16-section record (product identification, hazards, composition, first aid, transport, regulatory, and more) plus a confidence_score and warnings. Provide the PDF as file_url (a public https URL) or file_base64. Billed per document from prepaid credit (failures are not billed). Requires an API key.
| Argument | Type | Description |
|---|---|---|
| file_url | string | Public https URL of the SDS PDF. |
| filename | string | Optional file name, for example acetone-sds.pdf. |
| file_base64 | string | Base64-encoded SDS PDF bytes (use for small files). |
| language_hint | string | Optional language hint such as en, de, fr. |
| schema_version | string | Optional output schema version. |
| include_formats | array | Also return the XML and/or CSV renderings. Omitted by default to keep results compact. |
{
"type": "object",
"oneOf": [
{
"required": [
"file_url"
]
},
{
"required": [
"file_base64"
]
}
],
"properties": {
"file_url": {
"type": "string",
"format": "uri",
"description": "Public https URL of the SDS PDF."
},
"filename": {
"type": "string",
"description": "Optional file name, for example acetone-sds.pdf."
},
"file_base64": {
"type": "string",
"description": "Base64-encoded SDS PDF bytes (use for small files)."
},
"language_hint": {
"type": "string",
"description": "Optional language hint such as en, de, fr."
},
"schema_version": {
"type": "string",
"description": "Optional output schema version."
},
"include_formats": {
"type": "array",
"items": {
"enum": [
"xml",
"csv"
],
"type": "string"
},
"description": "Also return the XML and/or CSV renderings. Omitted by default to keep results compact."
}
}
}Get the prepaid credit balance, price per document, and the last 30 days of usage for the account that owns the API key. Read-only. Requires a per-customer API key.
No arguments.
{
"type": "object",
"properties": {}
}Get the status and per-file results of a bulk extraction job created by submit_bulk_extraction. Read-only and safe to repeat. Requires an API key.
| Argument | Type | Description |
|---|---|---|
| job_id* | string | The job_id returned by submit_bulk_extraction. |
{
"type": "object",
"required": [
"job_id"
],
"properties": {
"job_id": {
"type": "string",
"description": "The job_id returned by submit_bulk_extraction."
}
}
}Submit up to 10 SDS PDFs (public https URLs) as one asynchronous job. Returns a job_id; poll get_bulk_job until status is completed or failed. Reuse the same idempotency_key when retrying so no duplicate job is created. Billed per document from prepaid credit, reserved up front and released for any file that fails. Requires an API key.
| Argument | Type | Description |
|---|---|---|
| file_urls* | array | Public https URLs of SDS PDFs. |
| callback_url | string | Optional https URL that receives a signed webhook when the job finishes. |
| language_hint | string | |
| schema_version | string | |
| idempotency_key | string | Caller-chosen unique key; a repeat returns the existing job. |
{
"type": "object",
"required": [
"file_urls"
],
"properties": {
"file_urls": {
"type": "array",
"items": {
"type": "string",
"format": "uri"
},
"maxItems": 10,
"minItems": 1,
"description": "Public https URLs of SDS PDFs."
},
"callback_url": {
"type": "string",
"format": "uri",
"description": "Optional https URL that receives a signed webhook when the job finishes."
},
"language_hint": {
"type": "string"
},
"schema_version": {
"type": "string"
},
"idempotency_key": {
"type": "string",
"description": "Caller-chosen unique key; a repeat returns the existing job."
}
}
}