Use the SparkPost CLI from KosmoKrator to call SparkPost tools headlessly, return JSON, inspect schemas, and automate workflows from coding agents, scripts, and CI.
SparkPost can be configured headlessly with `kosmokrator integrations:configure spark-post`.
# Install KosmoKrator first if it is not available on PATH.curl -fsSL https://raw.githubusercontent.com/OpenCompanyApp/kosmokrator/main/install.sh | bash# Configure and verify this integration.kosmokrator integrations:configure spark-post --set api_key="$SPARK_POST_API_KEY" --enable --read allow --write ask --jsonkosmokrator integrations:doctor spark-post --jsonkosmokrator integrations:status --json
Credentials
Authentication type: API keyapi_key. Configure credentials once, then use the same stored profile from
scripts, coding CLIs, Lua code mode, and the MCP gateway.
Key
Env var
Type
Required
Label
api_key
SPARK_POST_API_KEY
Secret secret
yes
API Key
url
SPARK_POST_URL
URL url
no
API Base URL
Call SparkPost Headlessly
Use the generic call form when another coding CLI or script needs a stable universal interface.
Every function below can be called headlessly. The generic form is stable across all integrations;
the provider shortcut is shorter but specific to SparkPost.
spark-post.spark_post_list_sending_domains
Read read
List sending domains configured in SparkPost. Returns domain names along with verification and DKIM signing status.
Email content object. Must include "from" (email address or object with "email" and "name") and "subject". Optionally include "html" and/or "text" for the email body.
recipients
array
yes
Array of recipient objects. Each must have an "address" object with an "email" field (and optional "name"). Example: [{"address": {"email": "[email protected]", "name": "User"}}]
spark-post.spark_post_list_webhooks
List webhooks configured in SparkPost. Returns webhook IDs, target URLs, and subscribed event types.
Headless calls still follow the integration read/write permission policy. Configure read/write defaults
with integrations:configure. Add --force only for trusted automation that should bypass that policy.