This is an automated email from the ASF dual-hosted git repository.
jshao pushed a change to branch main
in repository https://gitbox.apache.org/repos/asf/gravitino.git
from c07150851e update README (#7956)
add 9bcf4a1724 [#7561][#7909][#7912] feat(mcp): initial support for
Gravitino MCP server (#7905)
No new revisions were added by this update.
Summary of changes:
build.gradle.kts | 11 +-
docs/gravitino-mcp-server.md | 74 ++
{clients/client-python => mcp-server}/.gitignore | 11 +-
mcp-server/.python-version | 1 +
.../human-signals.txt => mcp-server/LICENSE | 4 +-
{clients/client-python => mcp-server}/NOTICE | 3 -
mcp-server/build.gradle.kts | 274 ++++++
.../api => mcp-server/mcp_server}/__init__.py | 0
.../config.py => mcp-server/mcp_server/__main__.py | 5 +-
.../mcp_server/client}/__init__.py | 8 +-
.../mcp_server/client/catalog_operation.py | 15 +-
mcp-server/mcp_server/client/factory.py | 54 ++
.../mcp_server/client/gravitino_operation.py | 37 +-
.../mcp_server/client/plain}/__init__.py | 0
.../plain/plain_rest_client_catalog_operation.py | 31 +-
.../client/plain/plain_rest_client_operation.py | 55 ++
.../plain/plain_rest_client_schema_operation.py | 26 +-
.../plain/plain_rest_client_table_operation.py | 44 +
.../mcp_server/client/plain/utils.py | 27 +-
.../mcp_server/client/schema_operation.py | 18 +-
.../mcp_server/client/table_operation.py | 33 +-
.../mcp_server/core/__init__.py | 5 +-
.../mcp_server/core/context.py | 19 +-
.../mcp_server/core/setting.py | 23 +-
mcp-server/mcp_server/main.py | 102 +++
mcp-server/mcp_server/server.py | 117 +++
.../mcp_server/tools/__init__.py | 12 +-
mcp-server/mcp_server/tools/catalog.py | 103 +++
mcp-server/mcp_server/tools/schema.py | 63 ++
mcp-server/mcp_server/tools/table.py | 227 +++++
.../typing.py => mcp-server/pyproject.toml | 27 +-
.../gravitino/api => mcp-server/tests}/__init__.py | 0
.../api => mcp-server/tests/unit}/__init__.py | 0
.../tests/unit/tools}/__init__.py | 9 +-
mcp-server/tests/unit/tools/mock_operation.py | 59 ++
.../tests/unit/tools/test_catalog.py | 40 +-
mcp-server/tests/unit/tools/test_schema.py | 44 +
mcp-server/tests/unit/tools/test_table.py | 59 ++
mcp-server/uv.lock | 938 +++++++++++++++++++++
settings.gradle.kts | 1 +
40 files changed, 2422 insertions(+), 157 deletions(-)
create mode 100644 docs/gravitino-mcp-server.md
copy {clients/client-python => mcp-server}/.gitignore (93%)
create mode 100644 mcp-server/.python-version
copy web/web/licenses/human-signals.txt => mcp-server/LICENSE (99%)
copy {clients/client-python => mcp-server}/NOTICE (56%)
create mode 100644 mcp-server/build.gradle.kts
copy {clients/client-python/gravitino/api =>
mcp-server/mcp_server}/__init__.py (100%)
copy clients/client-python/tests/integration/config.py =>
mcp-server/mcp_server/__main__.py (91%)
copy {clients/client-python/gravitino/api/types/json_serdes =>
mcp-server/mcp_server/client}/__init__.py (75%)
copy clients/client-python/gravitino/api/auditable.py =>
mcp-server/mcp_server/client/catalog_operation.py (75%)
create mode 100644 mcp-server/mcp_server/client/factory.py
copy clients/client-python/gravitino/api/audit.py =>
mcp-server/mcp_server/client/gravitino_operation.py (52%)
copy {clients/client-python/gravitino/api =>
mcp-server/mcp_server/client/plain}/__init__.py (100%)
copy clients/client-python/gravitino/api/job/job_handle.py =>
mcp-server/mcp_server/client/plain/plain_rest_client_catalog_operation.py (56%)
create mode 100644
mcp-server/mcp_server/client/plain/plain_rest_client_operation.py
copy clients/client-python/gravitino/api/expressions/sorts/null_ordering.py =>
mcp-server/mcp_server/client/plain/plain_rest_client_schema_operation.py (55%)
create mode 100644
mcp-server/mcp_server/client/plain/plain_rest_client_table_operation.py
copy clients/client-python/gravitino/client/metadata_object_impl.py =>
mcp-server/mcp_server/client/plain/utils.py (56%)
copy clients/client-python/gravitino/api/auditable.py =>
mcp-server/mcp_server/client/schema_operation.py (69%)
copy clients/client-python/gravitino/api/expressions/partitions/partition.py
=> mcp-server/mcp_server/client/table_operation.py (54%)
copy clients/client-python/gravitino/constants/doc.py =>
mcp-server/mcp_server/core/__init__.py (89%)
copy clients/client-python/gravitino/constants/version.py =>
mcp-server/mcp_server/core/context.py (69%)
copy clients/client-python/gravitino/dto/responses/catalog_list_response.py =>
mcp-server/mcp_server/core/setting.py (66%)
create mode 100644 mcp-server/mcp_server/main.py
create mode 100644 mcp-server/mcp_server/server.py
copy clients/client-python/gravitino/auth/auth_constants.py =>
mcp-server/mcp_server/tools/__init__.py (72%)
create mode 100644 mcp-server/mcp_server/tools/catalog.py
create mode 100644 mcp-server/mcp_server/tools/schema.py
create mode 100644 mcp-server/mcp_server/tools/table.py
copy clients/client-python/gravitino/typing.py => mcp-server/pyproject.toml
(64%)
copy {clients/client-python/gravitino/api => mcp-server/tests}/__init__.py
(100%)
copy {clients/client-python/gravitino/api =>
mcp-server/tests/unit}/__init__.py (100%)
copy {clients/client-python/gravitino/utils =>
mcp-server/tests/unit/tools}/__init__.py (84%)
create mode 100644 mcp-server/tests/unit/tools/mock_operation.py
copy clients/client-python/tests/unittests/test_unparsed_expression.py =>
mcp-server/tests/unit/tools/test_catalog.py (50%)
create mode 100644 mcp-server/tests/unit/tools/test_schema.py
create mode 100644 mcp-server/tests/unit/tools/test_table.py
create mode 100644 mcp-server/uv.lock