Datasette-MCP 0.2 Released: First Stable Version Brings SQL Return Format Optimization

Datasette-MCP 0.2 exits alpha with optimized SQL return format for better AI model compatibility.
Datasette-MCP 0.2 marks the first stable release of the Datasette-MCP plugin, transitioning out of alpha. The key update changes the execute_sql return format from array of arrays to array of objects, significantly improving AI model reliability when processing query results. The release also upgrades the MCP dependency to 2.1.1 and signals API stability commitment from the maintainer.
Datasette-MCP Officially Reaches Stable Release
After a period of alpha testing, Datasette-MCP has finally reached its first non-alpha release with version 0.2. This plugin is a key tool for integrating the Datasette ecosystem with the Model Context Protocol (MCP), enabling AI models to more conveniently access and operate on structured data.

What Is Model Context Protocol?
Model Context Protocol (MCP) is an open standard protocol introduced by Anthropic in late 2024, designed to provide large language models (LLMs) with a unified way to connect to external data sources and tools. Before MCP, integrating each AI application with external systems required custom API solutions, leading to severe development fragmentation. MCP adopts a USB-C-like design philosophy — one standard interface compatible with all devices. The protocol defines three core primitives: Resources (for exposing data), Tools (for executing operations), and Prompts (prompt templates), through which AI models interact with external systems. MCP uses JSON-RPC 2.0 as its communication protocol and supports two transport methods: stdio and HTTP+SSE. Currently, mainstream AI clients like Claude Desktop, Cursor, and Windsurf natively support MCP, and the ecosystem is rapidly expanding.
Core Update: execute_sql Return Format Changed from Arrays to Objects
The most important improvement in this update is the adjustment to the execute_sql method's return format. In version 0.2, the "rows" field has been changed from an array of arrays structure to an array of objects structure.
While this change may seem simple, it significantly improves the practical experience for AI models. To understand the significance of this change, consider the specific differences between the two data formats: the array of arrays format, such as [[1, "Alice", 30], [2, "Bob", 25]], requires a separate columns field (e.g., ["id", "name", "age"]) to understand what each position means — it's a position-dependent format. The array of objects format, such as [{"id": 1, "name": "Alice", "age": 30}, {"id": 2, "name": "Bob", "age": 25}], makes each record a self-describing set of key-value pairs. Although the array of objects format suffers from size bloat due to repeated key names, its readability and fault tolerance far surpass the former.
For large language models, the self-describing nature of the array of objects format is crucial — models don't need to maintain a position-to-column-name mapping table when generating responses. Especially in long-context conversations, this explicit labeling can significantly reduce hallucinations and column name confusion errors. The traditional array of arrays structure requires models to remember which column name corresponds to each positional index, making it easy to get confused when processing complex query results. The array of objects structure uses key-value pairs directly, with each data field carrying a clear column name identifier, greatly reducing the risk of models "losing" column mapping relationships.
This optimization is especially friendly to less capable AI models, making them more reliable when processing database query results.
Dependency Upgrades and Stability Assurance
Besides the return format improvement, version 0.2 also upgrades the underlying dependency to mcp>=2.1.1, ensuring the plugin can leverage the latest Model Context Protocol features while achieving better stability and performance.
Author Simon Willison stated that after extensive hands-on usage and validation, he had sufficient confidence in this version's stability, and therefore decided to advance it from alpha status to an official release. In open-source software release practices, moving from alpha to official release is an important signal — alpha versions typically indicate that features are not yet fully stable, APIs may undergo breaking changes, and are only suitable for early adopters. Datasette-mcp's jump from the 0.1a series to 0.2, while still in the 0.x stage (indicating initial development period in semantic versioning), means that removing the alpha tag represents the project maintainer's commitment to API stability. Notably, pip does not install pre-release versions with alpha/beta tags by default, so this change also means regular users can obtain the latest version directly via pip install datasette-mcp without needing to add the --pre flag.
Deep Integration Between Datasette and the MCP Protocol
Datasette is a powerful open-source tool specifically designed for exploring and publishing structured data. It was created by Simon Willison (co-creator of the Django framework) in 2017, originally to simplify the process of publishing and exploring datasets for data journalists. Datasette's core philosophy is to turn SQLite database files directly into browsable, queryable Web APIs, emphasizing an "immutable data" design philosophy — packaging data as read-only SQLite files and providing SQL queries, automatic JSON APIs, data visualization, and more through a web interface. It boasts a rich plugin ecosystem supporting hundreds of extensions for data import, authentication, visualization, export, and more, and is widely used in government open data portals, investigative journalism projects, personal knowledge management, and other scenarios.
Model Context Protocol, on the other hand, is the standard protocol for AI models to interact with external tools and data sources. The combination of the two provides an elegant solution for AI application developers: datasette-mcp serves as a bridge plugin that automatically exposes all databases managed by Datasette as MCP tools, enabling any MCP-compatible AI client to directly execute SQL queries against this data without additional adaptation work.
This integration has a wide range of practical use cases, including:
- AI assistants querying business data to answer user questions
- Enabling AI models to autonomously explore datasets in data analysis scenarios
- Building data-driven AI applications without manually writing query logic
- Converting CSV, JSON, and other files into SQLite databases via Datasette, then immediately making them available for AI model analysis
Practical Implications for Developers
For developers using Datasette, the release of datasette-mcp 0.2 means they can more confidently integrate it into production environments. The improved return format makes AI model outputs more predictable, reducing the complexity of error handling.
At the same time, this is a typical example of the open-source community rapidly responding to real-world needs. From the issue raised in GitHub issue #1 to the improvements completed in version 0.2, it demonstrates the advantages of agile iteration in open-source projects.
As the Model Context Protocol ecosystem continues to mature, bridge tools like datasette-mcp will play an increasingly important role in AI application development. MCP was designed to eliminate integration barriers between AI models and external data, and datasette-mcp is a concrete realization of that vision — it allows developers to expose any structured data to AI models with just a few lines of configuration, helping build smarter, more data-driven application systems.
Key Takeaways
Related articles

Zhipu Open-Sources GLM-5.3-Flash 320B Model as Alibaba's Qwen4 Architecture Preview Launches Same Day
Zhipu open-sources GLM-5.3-Flash native multimodal model (320B total/18B active params) while Alibaba launches Qwen3.8-Flash-Next as Qwen4 architecture preview, both redefining LLM efficiency.

Instagram's New Rule: AI Accounts That Don't Disclose Their Identity Will Be Throttled
Instagram mandates AI identity disclosure — accounts that refuse will be throttled. Explore the enforcement challenges, detection limits, and industry impact.

Qwen 3.8 27B Hands-On Review: An Opus-Level Open-Source LLM You Can Run Locally
In-depth review of Alibaba's open-source Qwen 3.8 27B: a 27B-parameter multimodal model runnable on RTX 4090, approaching Claude Opus in coding and frontend tasks, fully open under Apache 2.0.