io.github.winedarksea/AutoTS MCP Server
io.github.winedarksea/AutoTS
Automated time series forecasting with genetic algorithm model search, anomaly detection, and probabilistic forecasts at scale.
What is the io.github.winedarksea/AutoTS MCP server?
The AutoTS MCP server is a time series forecasting package that automatically searches for the best forecasting models, preprocessing, and ensembling strategies using genetic algorithms. It supports dozens of forecasting models (naive, statistical, ML, deep learning), 30+ time series transforms, multivariate outputs, and probabilistic forecasts, all operating directly on Pandas DataFrames. The server won the M6 forecasting competition in 2023 and scales to hundreds of thousands of input series.
AutoTS automates the process of building high-accuracy time series forecasts by testing multiple models and preprocessing strategies, then selecting and ensembling the best performers. Use it when you need to forecast multiple time series at scale without manually tuning models, or when you want to compare dozens of forecasting approaches automatically. It handles both long and wide data formats, supports exogenous regressors, and includes tools for anomaly detection, event risk analysis, and cross-validation.
How to install io.github.winedarksea/AutoTS
Copy-paste configuration for popular MCP clients.
Tools & capabilities
Tools this server exposes to the agent.
AutoML Model Search— Genetic algorithm-based search to automatically find the best forecasting models, transformations, and ensembling strategies for a given dataset.Multiple Forecasting Models— Dozens of built-in models including naive, statistical, machine learning, and deep learning approaches, all with sklearn-style fit/predict interface.Time Series Transformers— Over 30 time series-specific transforms (fit/transform/inverse_transform) for preprocessing and feature engineering.Ensemble Methods— Horizontal and mosaic-style ensembles that assign optimal models per series while maintaining scalability.Probabilistic Forecasting— Upper and lower bound forecasts (prediction intervals) for uncertainty quantification.Multivariate Forecasting— Support for forecasting multiple time series simultaneously with shared or independent models.Cross-Validation— Multiple validation methods and metrics for robust model evaluation and selection.Exogenous Regressors— Ability to pass user-defined external variables to improve forecast accuracy.Event Risk Forecasting— Specialized forecasting mode for analyzing event risk and anomalies.Template Import/Export— Save and load model templates for reproducibility and transfer learning across datasets.
Use cases
- Automatically forecast demand, sales, or inventory across hundreds of product SKUs without manual model tuning
- Generate probabilistic stock price or financial time series forecasts with confidence intervals
- Detect anomalies and forecast event risk in sensor or operational time series data
- Compare dozens of forecasting approaches (naive, ARIMA, ML, deep learning) automatically to find the best for your data
- Scale forecasting to tens of thousands of similar time series by using subset selection and weighted model assignment
io.github.winedarksea/AutoTS MCP server FAQ
AutoTS is an automated time series forecasting package that uses genetic algorithms to search for the best combination of forecasting models, preprocessing transforms, and ensembling strategies. It won the M6 forecasting competition in 2023.
Yes, AutoTS is open-source and available on PyPI. Install with `pip install autots` or `pip install autots-mcp` for the MCP server version.
Install via PyPI with `pip install autots-mcp`, then add to your MCP configuration: `{"mcpServers": {"autots": {"command": "autots-mcp"}}}`.
AutoTS accepts time series data in wide format (pandas DataFrame with DatetimeIndex) or long format (three columns: date, series_id, value). No conversion to proprietary objects is needed.
No, AutoTS is a local Python package that runs on your machine. It does not require any authentication, API keys, or external services.
Yes, AutoTS is designed to scale to tens and hundreds of thousands of series. Use predefined model lists like 'scalable' and 'fast_parallel', subset selection, and distributed processing for optimal performance on large datasets.
README (reference)
Source of truth, from the repository.
AutoTS
<img src="/img/autots_1280.png" width="400" height="184" title="AutoTS Logo">AutoTS is a time series package for Python designed for rapidly deploying high-accuracy forecasts at scale. Give it a try in your browser with the official demo app.
In 2023, AutoTS won in the M6 forecasting competition, delivering the highest performance investment decisions across 12 months of stock market forecasting.
There are dozens of forecasting models usable in the sklearn style of .fit() and .predict().
These includes naive, statistical, machine learning, and deep learning models.
Additionally, there are over 30 time series specific transforms usable in the sklearn style of .fit(), .transform() and .inverse_transform().
All of these function directly on Pandas Dataframes, without the need for conversion to proprietary objects.
All models support forecasting multivariate (multiple time series) outputs and also support probabilistic (upper/lower bound) forecasts. Most models can readily scale to tens and even hundreds of thousands of input series. Many models also support passing in user-defined exogenous regressors.
These models are all designed for integration in an AutoML feature search which automatically finds the best models, preprocessing, and ensembling for a given dataset through genetic algorithms.
Horizontal and mosaic style ensembles are the flagship ensembling types, allowing each series to receive the most accurate possible models while still maintaining scalability.
A combination of metrics and cross-validation options, the ability to apply subsets and weighting, regressor generation tools, simulation forecasting mode, event risk forecasting, live datasets, template import and export, plotting, and a collection of data shaping parameters round out the available feature set.
Table of Contents
- Installation
- Basic Use
- Tips for Speed and Large Data
- Flowchart
- Extended Tutorial GitHub or Docs
- Production Example
Installation
pip install autots
This includes dependencies for basic models, but additonal packages are required for some models and methods.
Be advised there are several other projects that have chosen similar names, so make sure you are on the right AutoTS code, papers, and documentation.
Basic Use
Input data for AutoTS is expected to come in either a long or a wide format:
- The wide format is a
pandas.DataFramewith apandas.DatetimeIndexand each column a distinct series. - The long format has three columns:
- Date (ideally already in pandas-recognized
datetimeformat) - Series ID. For a single time series, series_id can be
= None. - Value
- Date (ideally already in pandas-recognized
- For long data, the column name for each of these is passed to
.fit()asdate_col,id_col, andvalue_col. No parameters are needed for wide data.
Lower-level functions are only designed for wide style data.
# also load: _hourly, _monthly, _weekly, _yearly, or _live_daily
from autots import AutoTS, load_daily
# sample datasets can be used in either of the long or wide import shapes
long = False
df = load_daily(long=long)
model = AutoTS(
forecast_length=21,
frequency="infer",
prediction_interval=0.9,
ensemble=None,
model_list="superfast", # "fast", "default", "fast_parallel"
transformer_list="fast", # "superfast",
drop_most_recent=1,
max_generations=4,
num_validations=2,
validation_method="backwards"
)
model = model.fit(
df,
date_col='datetime' if long else None,
value_col='value' if long else None,
id_col='series_id' if long else None,
)
prediction = model.predict()
# plot a sample
prediction.plot(model.df_wide_numeric,
series=model.df_wide_numeric.columns[0],
start_date="2019-01-01")
# Print the details of the best model
print(model)
# point forecasts dataframe
forecasts_df = prediction.forecast
# upper and lower forecasts
forecasts_up, forecasts_low = prediction.upper_forecast, prediction.lower_forecast
# accuracy of all tried model results
model_results = model.results()
# and aggregated from cross validation
validation_results = model.results("validation")
The lower-level API, in particular the large section of time series transformers in the scikit-learn style, can also be utilized independently from the AutoML framework.
Check out extended_tutorial.md for a more detailed guide to features.
Also take a look at the production_example.py
Tips for Speed and Large Data:
- Use appropriate model lists, especially the predefined lists:
superfast(simple naive models) andfast(more complex but still faster models, optimized for many series)fast_parallel(a combination offastandparallel) orparallel, given many CPU cores are availablen_jobsusually gets pretty close with='auto'but adjust as necessary for the environment
- 'scalable' is the best list to avoid crashing when many series are present. There is also a transformer_list = 'scalable'
- see a dict of predefined lists (some defined for internal use) with
from autots.models.model_list import model_lists
- Use the
subsetparameter when there are many similar series,subset=100will often generalize well for tens of thousands of similar series.- if using
subset, passingweightsfor series will weight subset selection towards higher priority series. - if limited by RAM, it can be distributed by running multiple instances of AutoTS on different batches of data, having first imported a template pretrained as a starting point for all.
- if using
- Set
model_interrupt=Trueto skip only the current model when you hitCtrl+C. TapCtrl+Ca second time within 1.5 seconds to end the entire run, or pass something likemodel_interrupt={"mode": "skip", "double_press_window": 1.2}to tighten/loosen the window. - Use the
result_filemethod of.fit()which will save progress after each generation - helpful to save progress if a long training is being done. Useimport_resultsto recover. - While Transformations are pretty fast, setting
transformer_max_depthto a lower number (say, 2) will increase speed. Also utilizetransformer_list== 'fast' or 'superfast'. - Check out this example of using AutoTS with pandas UDF.
- Ensembles are obviously slower to predict because they run many models, 'distance' models 2x slower, and 'simple' models 3x-5x slower.
ensemble='horizontal-max'withmodel_list='no_shared_fast'can scale relatively well given many cpu cores because each model is only run on the series it is needed for.
- Reducing
num_validationsandmodels_to_validatewill decrease runtime but may lead to poorer model selections. - For datasets with many records, upsampling (for example, from daily to monthly frequency forecasts) can reduce training time if appropriate.
- this can be done by adjusting
frequencyandaggfuncbut is probably best done before passing data into AutoTS.
- this can be done by adjusting
- It will be faster if NaN's are already filled. If a search for optimal NaN fill method is not required, then fill any NaN with a satisfactory method before passing to class.
- Set
runtime_weightinginmetric_weightingto a higher value. This will guide the search towards faster models, although it may come at the expense of accuracy. - Memory shortage is the most common cause of random process/kernel crashes. Try testing a data subset and using a different model list if issues occur. Please also report crashes if found to be linked to a specific set of model parameters (not AutoTS parameters but the underlying forecasting model params). Also crashes vary significantly by setup such as underlying linpack/blas so seeing crash differences between environments can be expected.
MCP Server
See the README.md in ./autots/mcp. Note install with pip install autots[mcp] for full dependencies, or the equivalent pip install autots-mcp.
{
"mcpServers": {
"autots": {
"command": "autots-mcp"
}
}
}
mcp-name: io.github.winedarksea/AutoTS
How to Contribute:
- Give feedback on where you find the documentation confusing
- Use AutoTS and...
- Report errors and request features by adding Issues on GitHub
- Posting the top model templates for your data (to help improve the starting templates)
- Feel free to recommend different search grid parameters for your favorite models
- And, of course, contributing to the codebase directly on GitHub.
AutoTS Process
flowchart TD
A[Initiate AutoTS Model] --> B[Import Template]
B --> C[Load Data]
C --> D[Split Data Into Initial Train/Test Holdout]
D --> E[Run Initial Template Models]
E --> F[Evaluate Accuracy Metrics on Results]
F --> G[Generate Score from Accuracy Metrics]
G --> H{Max Generations Reached or Timeout?}
H -->|No| I[Evaluate All Previous Templates]
I --> J[Genetic Algorithm Combines Best Results and New Random Parameters into New Template]
J --> K[Run New Template Models and Evaluate]
K --> G
H -->|Yes| L[Select Best Models by Score for Validation Template]
L --> M[Run Validation Template on Additional Holdouts]
M --> N[Evaluate and Score Validation Results]
N --> O{Create Ensembles?}
O -->|Yes| P[Generate Ensembles from Validation Results]
P --> Q[Run Ensembles Through Validation]
Q --> N
O -->|No| R[Export Best Models Template]
R --> S[Select Single Best Model]
S --> T[Generate Future Time Forecast]
T --> U[Visualize Results]
R --> B[Import Best Models Template]
Citation
If you wish to cite AutoTS in an academic work, the following paper may be used.
Colin Catlin, Adaptive forecasting in dynamic markets: An evaluation of AutoTS within the M6 competition, International Journal of Forecasting, Volume 41, Issue 4, 2025, Pages 1485-1493, ISSN 0169-2070, https://doi.org/10.1016/j.ijforecast.2025.08.004.
Also known as Project CATS (Catlin's Automated Time Series) hence the logo.
Related MCP servers
Read Lighter perpetual markets and place guarded orders, including the H100 compute-price market.
View repository →Community-built read-only Nockchain access: balances, payment verification, blocks, node health.
View repository →
io.github.wireboard/mcp
Official MCP server for WireBoard. Lets LLM agents query your analytics in conversation.

io.github.wisdomrock/code-context-gate
Context-aware code retrieval MCP server — ranked, gated results for AI coding agents

io.github.wisdomrock/primereact-mcp
105 PrimeReact v10 components with props, types, and events
Connect AI agents to ROS 2 nodes, topics, services, and actions via Model Context Protocol.

