Skip to content

matifema/OWDTools

Repository files navigation

OWID Data Tools for Open WebUI

An Open WebUI tool plugin that brings the wealth of data from Our World in Data (OWID) directly into your LLM chats.

This tool enables your AI assistant to search the OWID catalog, seamlessly embed official interactive charts, and retrieve raw tabular data for deep analysis—all without leaving the chat interface.

Screenshots

OWID Official Maps OWID Official Charts
Custom Charts More Custom Charts

Features

  • Semantic Catalog Search: The LLM can quickly search through hundreds of OWID datasets (e.g., life expectancy, CO2 emissions, poverty) and find the exact metrics needed using fuzzy-matching and intelligent caching.
  • Official Interactive Embeds: Automatically embeds the authentic, fully interactive OWID Grapher directly into the chat interface via responsive iframes. Enjoy maps, multi-country comparisons, and rich tooltips just as they appear on the official website.
  • Raw Data Extraction: When numerical analysis is required, the tool can extract specific columns, filter by country and year, and return raw data in clean Markdown tables for the LLM to analyze.
  • Dark-Mode Native: Designed to integrate flawlessly with Open WebUI's aesthetic.

Installation

  1. Open your Open WebUI interface.
  2. Navigate to Workspace -> Tools.
  3. Click the + button to import a new tool.
  4. Copy the entire contents of owid_tools.py and paste it into the code editor.
  5. Save and enable the tool for your LLM models.

Prerequisites: Ensure the Python environment running Open WebUI has the following packages installed:

pip install pandas owid-catalog

Important Note for Pip Installations: If you installed Open WebUI via pip (rather than Docker), you may need to run npx inject in your environment to properly enable frontend features like interactive iframes.

Configuration (Valves)

You can configure the tool's behavior via the Valves settings in Open WebUI:

  • allow_iframe_embedding (Default: True): Allows embedding of the official OWID interactive iframes. If set to False, the tool will return direct hyperlinks instead.
  • chart_height_px (Default: 460): The default height for embedded charts.
  • max_table_rows (Default: 20): Maximum number of rows returned when fetching raw tabular data, protecting the LLM's context window.
  • max_search_results (Default: 5): Limits the number of search results returned per query to balance relevance and token usage.

Disclaimer & Data Ownership

This project is not affiliated with, endorsed by, or sponsored by Our World in Data.

This tool is simply an open-source wrapper designed to facilitate access to public data.

All data, charts, and associated metadata retrieved by this tool are the property of Our World in Data and their respective authors and data providers. OWID publishes their research and data as open access under the Creative Commons BY license (CC BY 4.0), though specific underlying datasets may have different licenses.

Please refer to the OWID Terms of Use and ensure you properly cite the original sources when utilizing this data in your own projects or publications.

License

The wrapper code in this repository is open-sourced under the MIT License. See the LICENSE file for details.

About

An MCP Server that brings the wealth of data from Our World in Data (OWID) directly into your LLM chats.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages