Install
openclaw skills install @addysmoke/plonky-time-series-forecastingUse Plonky.ai to upload, analyze, and forecast recurring time-series data for planning and budgeting, with guidance on data quality and model suitability.
openclaw skills install @addysmoke/plonky-time-series-forecastingYou are using Plonky, a time-series forecasting API. This skill teaches you the end-to-end forecasting workflow — from data preparation to interpreting results.
You have access to these MCP tools:
register — create an account and get an API key (only if not already authenticated)get_credits — check your credit balanceupload_data — upload CSV datalist_datasets — see uploaded datasetsanalyze_dataset — get summary stats and data quality infocreate_forecast — run a forecast (blocks until complete)get_forecast — retrieve results for an existing forecastcreate_backtest — evaluate forecast accuracy (period_count + period_type, not n_splits)create_forecast_batch — forecast across multiple dimensionsBefore reaching for Plonky, assess whether a statistical forecast is the right tool for the task.
Good fit:
Poor fit — tell the user why and suggest alternatives:
When in doubt, run the forecast and a backtest. If MAPE is >30%, the data may not be forecastable — tell the user honestly.
Follow these steps in order. Do not skip the analysis step.
Before doing anything else, call get_credits. If it succeeds, you are already authenticated — do not call register. Only call register if get_credits fails with a 401 (no API key configured). Never generate a new email if registration fails with 409 (account already exists) — that means you already have an account.
Important: Plonky's forecasting engine is built for daily (or sub-daily) data. Internally, all data is reindexed to a daily time series before modeling. If the input is weekly or monthly, the gaps between observations are filled (zero-fill or forward-fill), which creates many artificial data points and degrades forecast quality. The forecast output is always daily-granularity regardless of input frequency.
Before uploading, also inspect for common issues:
upload_data. Note the dataset ID and columns.analyze_dataset to get summary statistics and quality flags.detected_frequency. If the data is weekly or monthly, warn the user: "Plonky is optimized for daily data. With [weekly/monthly] input, results will be less reliable." If monthly, strongly recommend the user try to source daily data instead.Report findings to the user before proceeding.
Before configuring the forecast, inspect the data for patterns that affect model quality. You can do this by examining the uploaded data or asking the user about it. This step is optional for simple datasets but strongly recommended for anything non-trivial.
Look for extreme values that could pull the forecast off track.
When the dataset has dimensions (region, product, channel), check how volume is distributed.
Check whether the recent data looks fundamentally different from the historical pattern.
Some series have long stretches of zero or near-zero values.
Check when the data ends relative to today.
After this analysis, give the user a brief honest assessment before proceeding:
If the dataset has categorical columns (region, product, channel, etc.), decide whether to use them:
Use dimensions when:
Skip dimensions when:
When using dimensions, always include an aggregate forecast (include_aggregate=True in batch) so the user has both the total and the breakdowns.
Default settings work well for most data. Only adjust when you have a reason:
If input data is monthly or weekly: Disable weekly_seasonality (it's meaningless for non-daily data). Consider reducing the forecast periods to match the user's horizon rather than leaving the default 90 days. When presenting results to the user, summarize at the original granularity (e.g., aggregate daily forecasts into monthly totals) rather than showing hundreds of daily rows.
For the first forecast, use defaults. Only fine-tune after reviewing backtest results.
get_credits. Each forecast costs 1 credit. Batches cost 1 per dimension.create_forecast (single) or create_forecast_batch (multi-dimension).Always run a backtest after the first forecast. This tells you how accurate the model is.
create_backtest with the forecast job ID, period_count, and period_type.
period_type="months", period_count=3 (holds out 3 months of actuals)period_type="months", period_count=3period_type="months", period_count=6days, weeks, months, quarters, yearsInterpreting backtest metrics:
| Metric | Good | Acceptable | Poor |
|---|---|---|---|
| MAPE | <10% | 10-25% | >25% |
| MAE | Depends on scale — compare to mean value | ||
| RMSE | Depends on scale — sensitive to large errors |
MAPE (Mean Absolute Percentage Error) is the most intuitive: a MAPE of 15% means the forecast is typically off by about 15%.
If backtest metrics are poor:
Report the backtest results to the user with an honest assessment.
When presenting forecast results to the user:
get_credits. If insufficient, tell the user to top up at https://plonky.ai/billinganalyze_dataset before forecasting.list_datasets if needed.get_forecast with the job ID later.