Auto Ontology MCP
NVIDIA Auto Ontology semantic layer as an MCP server: SQL gets validated, facts land in a personal knowledge base.
- 383 ★ on the repository
- Last commit
- Apache-2.0
Extended access
Why this level
- Connects to your databases for reading and stores datasource URLs with passwords in plain text.
- Writes go only to the local `knowledge.sqlite`.
Install
- Works in
Manual install
claude mcp add auto-ontology -- uvx --from git+https://github.com/gogoymh/auto-ontology-mcp auto-ontology-mcpThe Claude Code variant from Quick start. It needs `uv` installed.
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- Connects to your databases for reading and stores datasource URLs with passwords in plain text.
- Writes go only to the local `knowledge.sqlite`.
This is third-party code. Review the repository files before installing.
What it does
Auto Ontology MCP does two jobs. The first is questions to databases. The client model builds business terms, reviews joins between tables and writes SQL, while the server checks the query against the ontology and the data. For instance, `validate_sql` rejects a join on coincidentally matching integers and `check_answerable` reports that no metric covers the question. The second job is a personal knowledge base. The agent reads receipts, statements, papers or notes, stores facts as records, ideas as linked concepts and quotes in a full-text index. Originals stay in an Obsidian vault and `export_wiki` writes everything out as a vault. The language work is done by your client model, so no API key is needed.
Who it is for. Analysts and developers who query a database through Claude Code or Cursor and do not want silently wrong numbers from text-to-SQL.
Good fit when
- Revenue by product and state is wanted, yet the schema has two city columns.
- The agent drafted SQL and it must be checked against known relationships before it runs.
- Receipts, statements and notes should become a table of facts with quotes.
- A knowledge base is needed as an Obsidian vault with links between pages.
Not a fit when
- A ready service with its own UI and model is wanted.
- The database must not be connected even with read-only rights.
- A single one-off query is enough and no data model is needed.
Example request
Connect the demo database and tell me the revenue for the Sushi Roll product in Pennsylvania in June 2024, with SQL validation.MCP
- Transport
- stdio, http
- Authentication
- not required
Environment variables
AUTO_ONTOLOGY_HOME- Directory for the ontology store, knowledge store and demo; `~/.auto-ontology-mcp` by default
AUTO_ONTOLOGY_MCP_TOKENsecret- Token for the HTTP transport, required beyond localhost
Limitations
Python 3.12 and `uv` are required. Datasource URLs, passwords included, are stored in `~/.auto-ontology-mcp/ontology.db` in plain text, so use a read-only account; on shared machines set `AUTO_ONTOLOGY_ALLOW_DATASOURCE_TOOLS=0`. Queries are limited to 30 seconds and 500 rows. Over HTTP a token is required beyond localhost. SQL validation catches common join and scale mistakes, yet result correctness depends on how the model described the terms. The server is at version 0.6.1 and its store format upgrades the first time a newer version opens it.
How to disable. Remove the server entry from the client config (`claude mcp remove auto-ontology`) and delete the `~/.auto-ontology-mcp` data directory.
FAQ
Is a language model API key needed?
No. The model in your MCP client does reading, extraction and SQL writing, while the server handles checks, profiling and storage.
Can the server change my database?
No. Connected databases are read-only, enforced in three layers from the SQL guard to transaction rollback. The server writes only to `knowledge.sqlite`.
How do I see it on an example?
The `auto-ontology-mcp demo` command creates a sample retail database and three documents. `--remove` clears the demo.
Which databases are supported?
SQLite out of the box, plus PostgreSQL, MySQL and DuckDB through the optional `postgres`, `mysql` and `duckdb` extras.
How do I run the server over HTTP?
With `auto-ontology-mcp serve --transport http --port 8765 --token ...`. A token is required for any access beyond localhost.
Discussion
No questions or reviews yet.
Related
MCP serversAn MCP server for a knowledge graph over Unity Catalog tables: the agent picks a domain, reads the ontology and runs GraphQL.
A knowledge graph with an MCP server: the agent searches concepts by meaning and sees how well each is supported.
An MCP server builds an ontology from a database schema and checks agent SQL before it runs, for PostgreSQL, Snowflake and more
InfraNodus MCP server turns any text into a knowledge graph and shows topic clusters, the gaps between them and research questions
A text-to-SQL MCP server: an agent asks a database in words, gets SQL plus a trace, and a stated refusal when data is missing.
ArcadeDB ships a built-in MCP server: an agent reads graph, document and vector data, and writes are opt-in.
README in short
The project brings NVIDIA Auto Ontology’s semantic layer to any MCP client. The server runs over stdio and HTTP, supports SQLite, PostgreSQL, DuckDB and MySQL, and installs through `uvx` straight from GitHub.