Chronulus MCP Server

Official

create_forecasting_agent_and_get_forecast

Generate forecasts for values between 0 and 1 using a NormalizedForecaster agent. Provide session_id, input data model, and input data to receive predictions with text explanations, including support for files and text inputs.

Instructions

This tool creates a NormalizedForecaster agent with your session and input data model and then provides a forecast input data to the agent and returns the prediction data and text explanation from the agent.

When to use this tool:

  • Use this tool to request a forecast from Chronulus
  • This tool is specifically made to forecast values between 0 and 1 and does not require historical data
  • The prediction can be thought of as seasonal weights, probabilities, or shares of something as in the decimal representation of a percent

How to use this tool:

  • First, make sure you have a session_id for the forecasting or prediction use case.
  • Next, think about the features / characteristics most suitable for producing the requested forecast and then create an input_data_model that corresponds to the input_data you will provide for the thing being forecasted.
  • Remember to pass all relevant information to Chronulus including text and images provided by the user.
  • If a user gives you files about a thing you are forecasting or predicting, you should pass these as inputs to the agent using one of the following types:
    • ImageFromFile
    • List[ImageFromFile]
    • TextFromFile
    • List[TextFromFile]
    • PdfFromFile
    • List[PdfFromFile]
  • If you have a large amount of text (over 500 words) to pass to the agent, you should use the Text or List[Text] field types
  • Finally, add information about the forecasting horizon and time scale requested by the user
  • Assume the dates and datetimes in the prediction results are already converted to the appropriate local timezone if location is a factor in the use case. So do not try to convert from UTC to local time when plotting.
  • When plotting the predictions, use a Rechart time series with the appropriate axes labeled and with the prediction explanation displayed as a caption below the plot

Input Schema

NameRequiredDescriptionDefault
forecast_start_dt_strYesThe datetime str in '%Y-%m-%d %H:%M:%S' format of the first value in the forecast horizon.
horizon_lenNoThe integer length of the forecast horizon. Eg., 60 if a 60 day forecast was requested.
input_dataYesThe forecast inputs that you will pass to the chronulus agent to make the prediction. The keys of the dict should correspond to the InputField name you provided in input_fields.
input_data_modelYesMetadata on the fields you will include in the input_data.
session_idYesThe session_id for the forecasting or prediction use case
time_scaleNoThe times scale of the forecast horizon. Valid time scales are 'hours', 'days', and 'weeks'.days

Input Schema (JSON Schema)

{ "$defs": { "InputField": { "properties": { "description": { "description": "A description of the value you will pass in the field.", "title": "Description", "type": "string" }, "name": { "description": "Field name. Should be a valid python variable name.", "title": "Name", "type": "string" }, "type": { "default": "str", "description": "The type of the field. \n ImageFromFile takes a single named-argument, 'file_path' as input which should be absolute path to the image to be included. So you should provide this input as json, eg. {'file_path': '/path/to/image'}.\n ", "enum": [ "str", "Text", "List[Text]", "TextFromFile", "List[TextFromFile]", "PdfFromFile", "List[PdfFromFile]", "ImageFromFile", "List[ImageFromFile]" ], "title": "Type", "type": "string" } }, "required": [ "name", "description" ], "title": "InputField", "type": "object" } }, "properties": { "forecast_start_dt_str": { "description": "The datetime str in '%Y-%m-%d %H:%M:%S' format of the first value in the forecast horizon.", "title": "Forecast Start Dt Str", "type": "string" }, "horizon_len": { "default": 60, "description": "The integer length of the forecast horizon. Eg., 60 if a 60 day forecast was requested.", "title": "Horizon Len", "type": "integer" }, "input_data": { "additionalProperties": { "anyOf": [ { "type": "string" }, { "type": "object" }, { "items": { "type": "object" }, "type": "array" } ] }, "description": "The forecast inputs that you will pass to the chronulus agent to make the prediction. The keys of the dict should correspond to the InputField name you provided in input_fields.", "title": "Input Data", "type": "object" }, "input_data_model": { "description": "Metadata on the fields you will include in the input_data.", "items": { "$ref": "#/$defs/InputField" }, "title": "Input Data Model", "type": "array" }, "session_id": { "description": "The session_id for the forecasting or prediction use case", "title": "Session Id", "type": "string" }, "time_scale": { "default": "days", "description": "The times scale of the forecast horizon. Valid time scales are 'hours', 'days', and 'weeks'.", "title": "Time Scale", "type": "string" } }, "required": [ "session_id", "input_data_model", "input_data", "forecast_start_dt_str" ], "title": "create_forecasting_agent_and_get_forecastArguments", "type": "object" }
ID: idtstx1trt