Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ body:
label: Pre-reqs
description: |
Please run through the following list and make sure you've tried the usual "quick fixes":
- Search the [current open issues](https://github.com/gemini-cli-extensions/dataplex/issues)
- Search the [current open issues](https://github.com/gemini-cli-extensions/knowledge-catalog/issues)
- Update to the latest version of the extension and [Gemini CLI](https://github.com/google-gemini/gemini-cli?tab=readme-ov-file#stable)
options:
- label: "I've searched the current open issues"
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ body:
description: |
Please run through the following list and make sure you've tried the usual "quick fixes":
options:
- label: "Search the [current open issues](https://github.com/gemini-cli-extensions/dataplex/issues)"
- label: "Search the [current open issues](https://github.com/gemini-cli-extensions/knowledge-catalog/issues)"
required: true

- type: textarea
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/question.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ body:
description: |
Please run through the following list and make sure you've tried the usual "quick fixes":
options:
- label: "Search the [issues](https://github.com/gemini-cli-extensions/dataplex/issues)"
- label: "Search the [issues](https://github.com/gemini-cli-extensions/knowledge-catalog/issues)"
required: true

- type: textarea
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/mirror-changelog.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ jobs:
- name: Add Toolbox Release Notes to PR Body
uses: actions/github-script@ed597411d8f924073f98dfc5c65a23a2325f34cd # v8
env:
REQUIRED_KEYWORDS: 'dataplex'
REQUIRED_KEYWORDS: 'knowledge-catalog, dataplex'
with:
script: |
const requiredKeywordsEnv = process.env.REQUIRED_KEYWORDS;
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/package-and-upload-assets.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ name: Package and Upload Release Assets
# Global variables
env:
PACKAGE_NAME: "dataplex"
FILES_TO_PACKAGE: "gemini-extension.json DATAPLEX.md LICENSE"
FILES_TO_PACKAGE: "gemini-extension.json KNOWLEDGE_CATALOG.md LICENSE"
GCS_BUCKET_URL: "https://storage.googleapis.com/mcp-toolbox-for-databases/geminicli"

on:
Expand Down
1 change: 1 addition & 0 deletions .lycheeignore
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
https://github.com/gemini-cli-extensions/dataplex/compare/
https://github.com/gemini-cli-extensions/knowledge-catalog/compare/
118 changes: 59 additions & 59 deletions CHANGELOG.md

Large diffs are not rendered by default.

12 changes: 6 additions & 6 deletions DEVELOPER.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# DEVELOPER.md

This document provides instructions for setting up your development environment
and contributing to the Dataplex Gemini CLI Extension project.
and contributing to the Knowledge Catalog (formerly known as Dataplex) Gemini CLI Extension project.

## Prerequisites

Expand All @@ -10,7 +10,7 @@ Before you begin, ensure you have the following:
1. **Gemini CLI:** Install the Gemini CLI version v0.6.0 or above. Installation
instructions can be found on the official Gemini CLI documentation. You can
verify your version by running `gemini --version`.
2. **Dataplex:** For testing tools, you will need access to an active Dataplex setup.
2. **Knowledge Catalog:** For testing tools, you will need access to an active Knowledge Catalog setup.

## Developing the Extension

Expand All @@ -21,8 +21,8 @@ The core logic for this extension is handled by a pre-built `toolbox` binary. Th
1. **Clone the Repository:**

```bash
git clone https://github.com/gemini-cli-extensions/dataplex.git
cd dataplex
git clone https://github.com/gemini-cli-extensions/knowledge-catalog.git
cd knowledge-catalog
```

2. **Download the Toolbox Binary:** The required version of the `toolbox` binary
Expand All @@ -47,7 +47,7 @@ The core logic for this extension is handled by a pre-built `toolbox` binary. Th
The CLI will prompt you to confirm the linking. Accept it to proceed.

4. **Testing Changes:** After linking, start the Gemini CLI (`gemini`).
You can now interact with the `dataplex` tools to manually test your changes
You can now interact with the `knowledge-catalog` tools to manually test your changes
against your connected database.

## Testing
Expand Down Expand Up @@ -76,7 +76,7 @@ are currently tested in the [MCP Toolbox GitHub](https://github.com/googleapis/g
## Building the Extension

The "build" process for this extension involves packaging the extension's
metadata files (`gemini-extension.json`, `dataplex.md`, `LICENSE`) along with the
metadata files (`gemini-extension.json`, `KNOWLEDGE_CATALOG.md`, `LICENSE`) along with the
pre-built `toolbox` binary into platform-specific archives (`.tar.gz` or `.zip`).

This process is handled automatically by the
Expand Down
14 changes: 7 additions & 7 deletions DATAPLEX.md → KNOWLEDGE_CATALOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,17 +8,17 @@ Your primary objective is to help discover, organize and manage metadata related

To install this extension, the Gemini CLI version must be v0.6.0 or above. The version can be found by running: `gemini --version`.

## Dataplex MCP Server (Data Plane: Connecting and Querying)
## Knowledge Catalog(formerly known as Dataplex) MCP Server (Data Plane: Connecting and Querying)

This section covers connecting to a Dataplex instance.
This section covers connecting to a Knowledge Catalog instance.

1. **Verify Environment Variables**: The extension requires the following environment variables to be set before the Gemini CLI is started:

* `DATAPLEX_PROJECT`: The GCP project ID.

2. **Handle Missing Variables**: If a command fails with an error message containing a placeholder like `${DATAPLEX_PROJECT}`, it signifies a missing environment variable. Inform the user which variable is missing and instruct them to set it.

3. **Handle Permission Errors**: If you encounter permission errors, ensure the user has the correct Dataplex permissions:
3. **Handle Permission Errors**: If you encounter permission errors, ensure the user has the correct Knowledge Catalog permissions:
* Dataplex Reader (`roles/dataplex.viewer`) to search and look up entries.
* Dataplex Editor (`roles/dataplex.editor`) to modify entries.

Expand Down Expand Up @@ -147,7 +147,7 @@ Entries can be linked together using EntryLinks to represent relationships betwe

# Tool instructions

## Tool: dataplex_search_entries
## Tool: search_entries

## General

Expand Down Expand Up @@ -341,12 +341,12 @@ This abbreviated syntax works for the qualified predicates except for `label` in
1. Explain that no search result was found
2. Suggest to provide a more specific search query.

## Tool: dataplex_lookup_entry
## Tool: lookup_entry

### Request

1. Always try to limit the size of the response by specifying `aspect_types` parameter. Make sure to include to select view=CUSTOM when using aspect_types parameter. If you do not know the name of the aspect type, use the `dataplex_search_aspect_types` tool.
2. If you do not know the name of the entry, use `dataplex_search_entries` tool
1. Always try to limit the size of the response by specifying `aspect_types` parameter. Make sure to include to select view=CUSTOM when using aspect_types parameter. If you do not know the name of the aspect type, use the `search_aspect_types` tool.
2. If you do not know the name of the entry, use `search_entries` tool

### Response

Expand Down
20 changes: 10 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# Gemini CLI Extension - Dataplex
# Gemini CLI Extension - Knowledge Catalog (formerly known as Dataplex)

> [!NOTE]
> This extension is currently in beta (pre-v1.0), and may see breaking changes until the first stable release (v1.0).

This Gemini CLI extension provides a set of tools to interact with [Dataplex](https://cloud.google.com/dataplex/docs) instances. It allows you to manage your data lakes, zones, and assets directly from the [Gemini CLI](https://google-gemini.github.io/gemini-cli/), using natural language prompts.
This Gemini CLI extension provides a set of tools to interact with [Knowledge Catalog](https://cloud.google.com/dataplex/docs) instances. It allows you to manage your data lakes, zones, and assets directly from the [Gemini CLI](https://google-gemini.github.io/gemini-cli/), using natural language prompts.

Learn more about [Gemini CLI Extensions](https://github.com/google-gemini/gemini-cli/blob/main/docs/extensions/index.md).
> [!IMPORTANT]
Expand All @@ -13,7 +13,7 @@ Learn more about [Gemini CLI Extensions](https://github.com/google-gemini/gemini

[form]: https://docs.google.com/forms/d/e/1FAIpQLSfEGmLR46iipyNTgwTmIDJqzkAwDPXxbocpXpUbHXydiN1RTw/viewform?usp=pp_url&entry.157487=dataplex

## Why Use the Dataplex Extension?
## Why Use the Knowledge Catalog Extension?

* **Natural Language Management:** Stop wrestling with complex commands. Explore schemas and query data by describing what you want in plain English.
* **Seamless Workflow:** As a Google-developed extension, it integrates seamlessly into the Gemini CLI environment. No need to constantly switch contexts for common database tasks.
Expand All @@ -39,7 +39,7 @@ Before you begin, ensure you have the following:
To install the extension, use the command:

```bash
gemini extensions install https://github.com/gemini-cli-extensions/dataplex
gemini extensions install https://github.com/gemini-cli-extensions/knowledge-catalog
```

### Configuration
Expand All @@ -55,15 +55,15 @@ To view or update your configuration:
* Gemini CLI: `/extensions list`

**Update Settings:**
* Terminal: `gemini extensions config dataplex [setting name] [--scope <scope>]`
* Terminal: `gemini extensions config knowledge-catalog [setting name] [--scope <scope>]`
* `setting name`: (Optional) The single setting to configure.
* `scope`: (Optional) The scope of the setting in (`user` or `workspace`). Defaults to `user`.
* Currently, you must restart the Gemini CLI for changes to take effect. We recommend using `gemini --resume` to resume your session.

Alternatively, you can manually set these environment variables before starting the Gemini CLI:

```bash
export DATAPLEX_PROJECT="<your-gcp-project-id>"
export KNOWLEDGE_CATALOG_PROJECT="<your-gcp-project-id>"
```

> [!NOTE]
Expand All @@ -80,7 +80,7 @@ gemini

## Usage Examples

Interact with Dataplex using natural language right from your IDE:
Interact with Knowledge Catalog using natural language right from your IDE:

* **Explore Catalog and Metadata:**
* "Find all catalog entries related to 'customer orders'."
Expand All @@ -92,8 +92,8 @@ Interact with Dataplex using natural language right from your IDE:

## Supported Tools

* `search_entries`: Use this tool to search for entries in Dataplex Catalog based on the provided search query.
* `lookup_entry`: Use this tool to retrieve a specific entry from Dataplex Catalog.
* `search_entries`: Use this tool to search for entries in Knowledge Catalog based on the provided search query.
* `lookup_entry`: Use this tool to retrieve a specific entry from Knowledge Catalog.
* `search_aspect_types`: Use this tool to find aspect types relevant to the query.

## Additional Extensions
Expand All @@ -108,5 +108,5 @@ Common issues:

* "failed to find default credentials: google: could not find default credentials.": Ensure [Application Default Credentials](https://cloud.google.com/docs/authentication/gcloud) are available in your environment. See [Set up Application Default Credentials](https://cloud.google.com/docs/authentication/external/set-up-adc) for more information.
* "✖ Error during discovery for server: MCP error -32000: Connection closed": The database connection has not been established. Ensure your configuration is set via environment variables.
* "✖ MCP ERROR: Error: spawn /Users/USER/.gemini/extensions/dataplex/toolbox ENOENT": The Toolbox binary did not download correctly. Ensure you are using Gemini CLI v0.6.0+.
* "✖ MCP ERROR: Error: spawn /Users/USER/.gemini/extensions/knowledge-catalog/toolbox ENOENT": The Toolbox binary did not download correctly. Ensure you are using Gemini CLI v0.6.0+.
* "cannot execute binary file": The Toolbox binary did not download correctly. Ensure the correct binary for your OS/Architecture has been downloaded. See [Installing the server](https://mcp-toolbox.dev/documentation/introduction/#install-toolbox) for more information.
8 changes: 4 additions & 4 deletions gemini-extension.json
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
{
"name": "dataplex",
"name": "knowledge-catalog",
"version": "0.3.1",
"description": "Connect to Dataplex Universal Catalog to discover, manage, monitor, and govern data and AI artifacts across your data platform",
"description": "Connect to Knowledge Catalog (formerly known as Dataplex) to discover, manage, monitor, and govern data and AI artifacts across your data platform",
"mcpServers": {
"dataplex": {
"knowledgeCatalog": {
"command": "${extensionPath}${/}toolbox",
"args": [
"--prebuilt",
Expand All @@ -12,7 +12,7 @@
]
}
},
"contextFileName": "DATAPLEX.md",
"contextFileName": "KNOWLEDGE_CATALOG.md",
"settings": [
{
"name": "Project ID",
Expand Down
Loading