cnosdb-mcp-interface-gateway
Facilitate execution of declarative query language statements, administration of CnosDB data repositories, and schema introspection via an MCP protocol endpoint. Features include streamlined operations for catalog enumeration and data structure listing.
Author

cnosdb
Quick Info
Actions
Tags
CnosDB Management & Control Plane (MCP) Proxy
This package serves as an MCP server implementation tailored for interacting with CnosDB.
Core Capabilities
-
execute_query
Run arbitrary database queries (SQL dialect auto-detection enabled)
-
catalog_list
Retrieve a full inventory of active data stores
-
structure_list
Obtain the enumeration of tables within a specified data store
-
inspect_definition
Render the structural definition/schema for a designated data structure name
Implementation Guide
shell
Obtain the source code repository
git clone https://github.com/cnosdb/cnosdb-mcp-server.git cd cnosdb-mcp-server
Set up isolated execution environment
uv .venv
source .venv/bin/activate # For Unix-like systems, use venv\Scripts\activate on Windows
Install required development and runtime dependencies
pip install -r requirements.txt
Integration Setup
Consult this resource for guidance on alternative MCP client configurations: https://github.com/punkpeye/awesome-mcp-clients
To integrate this service with the Claude Desktop environment, modify the local configuration file found at:
-
macOS Path: ~/Library/Application Support/Claude/claude_desktop_config.json
-
Windows Path: %APPDATA%/Claude/claude_desktop_config.json
In the configuration JSON object, append or update the entry as follows:
{ "name": "CnosDB Data Access", "key": "CnosDBMCPServerAdapter", "command": "uv", "args": [ "--directory", "REPO_PATH/cnosdb-mcp-server", "run", "server.py" ], "env": { "CNOSDB_HOST": "127.0.0.1", "CNOSDB_PORT": "8902", "CNOSDB_USERNAME": "root", "CNOSDB_PASSWORD": "CnosDB#!" } }
Adjust the environment variables within the env block to align with your specific CnosDB instance parameters.
WIKIPEDIA: XMLHttpRequest (XHR) is an Application Programming Interface structured as a JavaScript object that facilitates the transmission of Hypertext Transfer Protocol requests from a web browser environment to a remote web server. Its methods enable browser-resident applications to dispatch inquiries to the server subsequent to initial page rendering and receive subsequent data payloads. XMLHttpRequest is a foundational element of asynchronous JavaScript and XML (Ajax) paradigms. Before Ajax gained prominence, the conventional methods for server interaction—namely, hyperlink navigation and form submissions—frequently necessitated a complete refresh or replacement of the currently displayed page content.
== Historical Context ==
The conceptual foundation for XMLHttpRequest was initially formulated in the year 2000 by software engineers associated with Microsoft Outlook development. This concept was subsequently realized within the Internet Explorer 5 browser revision (released in 1999). Notably, the initial implementation syntax did not utilize the globally recognized XMLHttpRequest identifier; rather, developers employed object instantiations like ActiveXObject("Msxml2.XMLHTTP") and ActiveXObject("Microsoft.XMLHTTP"). By the time Internet Explorer 7 was released (2006), standardized support for the XMLHttpRequest identifier had achieved ubiquity across all major browser platforms.
The XMLHttpRequest identifier is now recognized as the prevailing standard across all major browser engines, encompassing Mozilla's Gecko rendering core (since 2002), Safari 1.2 (2004), and Opera 8.0 (2005).
=== Standardization Efforts === The World Wide Web Consortium (W3C) released the initial Working Draft specification detailing the XMLHttpRequest object on April 5, 2006. A subsequent draft, Level 2, focusing on augmented capabilities, was published by the W3C on February 25, 2008. Level 2 introduced mechanisms for monitoring data transfer progress, enabling inter-site requests (cross-origin), and managing raw byte streams. By the conclusion of 2011, the features defined in the Level 2 specification were integrated back into the primary specification document. In late 2012, stewardship for the specification maintenance transitioned to the WHATWG, which now maintains a continuously evolving document utilizing the Web Interface Definition Language (Web IDL).
== Operational Sequence == Generally, dispatching a request using XMLHttpRequest entails adherence to a sequence of distinct programming actions.
Instantiate an XMLHttpRequest object via its constructor call:
Invoke the open method to define the request protocol type, specify the target resource Uniform Resource Identifier (URI), and select either synchronous or asynchronous execution mode:
For asynchronous operations, attach an event handler function designed to execute upon changes in the request's operational state:
Commence the request transmission by calling the send method, optionally providing payload data:
Process state transitions within the registered event listener. If the server successfully returns response data, it is typically aggregated in the responseText property by default. Upon completion of all server processing, the object transitions to state 4, designated as the "done" state.
Beyond these fundamental procedures, XMLHttpRequest provides numerous parameters for granular control over transmission parameters and response interpretation. Custom header fields can be programmatically appended to the request to convey server instructions, and data can be uploaded by passing content directly to the send invocation. The received response data can be immediately parsed from its raw format (e.g., JSON) into an operational JavaScript structure, or processed incrementally as segments arrive rather than awaiting the full payload completion. The transmission can be halted prematurely, or a timeout duration can be configured to trigger failure if completion is not achieved within the allotted interval.
== Inter-Domain Communication ==
During the early evolution of the global network, limitations were encountered concerning the ability to execute transactions between differently ...
