Skip to content

feat: add S3 Tables MCP Server #584

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 57 commits into from
Jul 14, 2025
Merged

Conversation

okhomin
Copy link
Contributor

@okhomin okhomin commented Jun 13, 2025

Summary

An MCP server providing programmatic read/write access to AWS S3 Tables information through standardized endpoints, enabling AI assistants to retrieve current S3 Tables data.

Changes

Added S3 Tables MCP Server implementation.

Please provide a summary of what's being changed

User experience

Please share what the user experience looks like before and after this change

Users can perform read S3 Tables operations by default.
Users need to specify --allow-write to allow write operations.

Checklist

If your change doesn't seem to apply, please leave them unchecked.

  • I have reviewed the contributing guidelines
  • I have performed a self-review of this change
  • Changes have been tested
  • Changes are documented

Is this a breaking change? No

RFC issue number: #583

Checklist:

  • Migration process documented
  • Implement warnings (if it can live side by side)

Acknowledgment

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the project license.

@scottschreckengaust scottschreckengaust changed the title add S3 Tables MCP Server implementation feat: add S3 Tables MCP Server Jun 13, 2025
@scottschreckengaust scottschreckengaust added hold-merging Signals to hold the PR from merging new mcp server A new MCP server ideally linked to an issue labels Jun 13, 2025
Copy link

codecov bot commented Jun 13, 2025

Codecov Report

Attention: Patch coverage is 85.79117% with 132 lines in your changes missing coverage. Please review.

Project coverage is 88.29%. Comparing base (6012199) to head (8e85bc4).
Report is 1 commits behind head on main.

Files with missing lines Patch % Lines
...ver/awslabs/s3_tables_mcp_server/file_processor.py 77.83% 24 Missing and 19 partials ⚠️
...-mcp-server/awslabs/s3_tables_mcp_server/server.py 76.74% 35 Missing and 5 partials ⚠️
.../awslabs/s3_tables_mcp_server/engines/pyiceberg.py 72.18% 22 Missing and 15 partials ⚠️
...cp-server/awslabs/s3_tables_mcp_server/database.py 75.86% 7 Missing ⚠️
...-mcp-server/awslabs/s3_tables_mcp_server/models.py 96.85% 4 Missing ⚠️
...-mcp-server/awslabs/s3_tables_mcp_server/tables.py 98.63% 0 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #584      +/-   ##
==========================================
- Coverage   88.45%   88.29%   -0.16%     
==========================================
  Files         551      564      +13     
  Lines       37435    38364     +929     
  Branches     5820     5932     +112     
==========================================
+ Hits        33113    33874     +761     
- Misses       2756     2867     +111     
- Partials     1566     1623      +57     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-advanced-security
Copy link

This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation.

@okhomin okhomin requested a review from gsoundar June 13, 2025 16:58
@scottschreckengaust scottschreckengaust self-assigned this Jun 16, 2025
Copy link

@gsoundar gsoundar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This commit looks good to me.

@scottschreckengaust
Copy link
Member

Please add entries at .github/CODEOWNERS, mkdocs.yml, and docs/index.md, plus add a documentation file at docs/servers/s3-tables-mcp-server.md.

Copy link
Member

@scottschreckengaust scottschreckengaust left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Review comments.

@scottschreckengaust
Copy link
Member

Run pre-commit run --all-files at the top-level of the repository to review failures.

okhomin and others added 2 commits July 11, 2025 14:36
Co-authored-by: Scott Schreckengaust <scottschreckengaust@users.noreply.github.com>
Copy link
Member

@scottschreckengaust scottschreckengaust left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Copy link
Member

@scottschreckengaust scottschreckengaust left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@scottschreckengaust scottschreckengaust merged commit 114339e into awslabs:main Jul 14, 2025
120 of 121 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
new mcp server A new MCP server ideally linked to an issue
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants