mchades commented on code in PR #13804:
URL: https://github.com/apache/gravitino/pull/13804#discussion_r4257392935
##########
docs/gravitino-mcp-server.md:
##########
@@ -138,7 +138,56 @@ Gravitino MCP server supports the following tools, and you
could export tool by
| `get_partition` | Retrieve a partition's metadata. Only
for catalogs with a partition API. | `partition` |
| `list_of_views` | Retrieve a list of views for a schema.
Only for catalogs supporting views. | `view` |
| `load_view` | Retrieve a view's metadata. Only for
catalogs supporting views. | `view` |
+| `list_of_semantic_models` | List the Semantic Models the caller
can access in a schema. | `semantic_model` |
+| `load_semantic_model` | Load a Semantic Model's metadata and
definition. | `semantic_model` |
+| `create_semantic_model` | Create a Semantic Model from a native
REST definition. | `semantic_model` |
+| `alter_semantic_model` | Apply Semantic Model updates
atomically. | `semantic_model` |
+| `drop_semantic_model` | Drop a Semantic Model's metadata.
| `semantic_model` |
+### Semantic Models
+
+Semantic Model tools manage schema-scoped semantic metadata through the
Gravitino REST API.
+Use the `semantic_model` tag with `--include-tool-tags` to expose these five
tools.
+They use the same per-call `metalake` selection and authentication as other
tools;
+Gravitino filters listings and enforces authorization, including access to
referenced source tables.
+Names used in REST paths must be non-empty and cannot be `.` or `..`, which
HTTP clients
+normalize as path navigation. Names must also satisfy the server's naming
rules.
+
+For example, call `create_semantic_model` with the following arguments after
the
+`sales.mart.orders` source table exists in the selected metalake:
+
+```json
+{
+ "metalake": "prod",
+ "catalog_name": "sales",
+ "schema_name": "mart",
+ "name": "sales_model",
+ "definition": {
+ "datasets": [
+ {
+ "name": "orders",
+ "source": {"namespace": ["sales", "mart"], "name": "orders"},
+ "fields": []
+ }
+ ]
+ },
+ "comment": "Governed sales definitions",
+ "properties": {"domain": "sales"}
+}
+```
+
+`definition` uses the native camelCase [Semantic Model REST
schema](./open-api/semantic-models.yaml).
Review Comment:
Replaced the fragment link with an inline description of the native
definition fields alongside the existing JSON example.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]