apache / apache/gravitino

[Subtask] feat(mcp-server): write tools for remaining metadata types (policy, statistics, ...)

Open
#11,693 0 comments 0 reactions 0 assignees View on GitHub
subtask
Dominant language
Java
Stars
3.2k
Forks
935
Avg merge
1d 16h
Merged PRs (30d)
298

Description

### Describe the subtask

#11574 / #11567 added write tools for catalog, schema, table, topic, fileset, model and tag. A few metadata types still lack full write support. Add the remaining write tools following the same pattern (interface method → plain REST client impl → FastMCP tool → mock → unit tests), with authorization enforced by Gravitino.

**Missing write tools:**
- **policy**: create / alter / delete a policy (today only `associate_policy_with_metadata` / `disassociate_policy_from_metadata` exist).
- **statistics**: update / drop statistics for metadata and partitions (currently read-only).
- **model version alias**: `update_model_version_aliases` (model has register/delete and version link/delete only — noted in review of #11621).
- **job templates**: register / delete a job template (job has `run_job` / `cancel_job` only).

### Parent issue

#11573

Contributor guide

Open the contributing guide

Research direction

Start by examining the existing write tools added in #11574 and #11567, following the interface method, plain REST client implementation, FastMCP tool, mock, and unit-test layers. Implement the listed policy, statistics, model version alias, and job-template operations using the same pattern. Done means each missing operation has corresponding support and unit coverage, with authorization left to Gravitino.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
backend-api-design, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.