A

Apache Iceberg

Provides direct access to Apache Iceberg tables stored in AWS, enabling exploration of catalogs, sch...

31 views
0 installs
Updated Jan 4, 2026
Not audited
Provides direct access to Apache Iceberg tables stored in AWS, enabling exploration of catalogs, schemas, properties, and partition information without complex queries or code.
  1. Create or identify an AWS identity with programmatic access

    • In the AWS Console > IAM, either create a new IAM user (Programmatic access) or identify an existing role/profile that has read access to your Glue catalog and underlying object storage (S3).
    • Recommended minimum permissions: Glue read (e.g., glue:GetDatabases, glue:GetDatabase, glue:GetTables, glue:GetTable) and S3 read/list (e.g., s3:ListBucket, s3:GetObject). You can attach managed policies such as AmazonS3ReadOnlyAccess and an appropriate Glue read policy.
  2. Obtain AWS credentials (if using an access key)

    • For an IAM user: create an access key and copy the Access Key ID and Secret Access Key (you will only see the secret once).
    • If using an assumed role / SSO, make sure you have a named profile configured that can assume the role (see next step).
  3. Install & configure the AWS CLI (if not already)

    • Install AWS CLI per AWS docs.
    • Configure a named profile for the credentials (replace and enter the Access Key ID / Secret when prompted):
      aws configure --profile <profile-name>
      
    • When prompted for region, enter your preferred region (or leave blank; the MCP defaults to us-east-1 if ICEBERG_MCP_REGION is not set).
  4. (Optional) Configure an SSO/assume-role profile

    • If you use AWS SSO or a role assumption flow, create a named profile in ~/.aws/config that performs the SSO/login or sets credential_process/role_arn so the CLI profile name (e.g., ) resolves to usable credentials.
  5. Verify the profile can access the Glue catalog / S3

    • Example Glue check (replace and ):
      aws glue get-databases --profile <profile-name> --region <region>
      
    • Or verify S3 access:
      aws s3 ls --profile <profile-name> --region <region>
      
  6. Open the FastMCP connection interface (use the “Install Now” button)

    • Click the repository’s “Install Now” button to open the FastMCP connection/installation UI.
  7. Fill the environment variables in the FastMCP connection interface

    • Add an env var named ICEBERG_MCP_PROFILE with the value set to the AWS CLI profile name you configured in step 3 (e.g., my-iceberg-profile).
    • (Optional) Add ICEBERG_MCP_REGION with your AWS region (e.g., us-west-2). If you omit ICEBERG_MCP_REGION, the server will default to us-east-1.
    • Notes:
      • To use the default AWS profile, either set ICEBERG_MCP_PROFILE to default or leave ICEBERG_MCP_PROFILE blank (the MCP will use the default role/profile if not specified).
      • If your profile uses SSO/assume-role, ensure the environment where FastMCP runs can obtain those credentials (use a profile that resolves without interactive prompts).
  8. Save / Install the MCP server

    • Complete the Install Now flow and deploy the MCP server with those environment variables populated.
  9. Test the MCP connection from your MCP client

    • From your MCP client (Claude/Cursor/etc.), run a simple tool command like:
      • "List all namespaces in my catalog"
    • Confirm the server returns namespace/table information. If authentication fails, re-check the profile name, region, and that the credentials/role have Glue + S3 read permissions.
  10. Troubleshooting pointers

    • If you see permission errors, ensure the IAM identity has Glue and S3 read/list permissions.
    • If the MCP cannot find the profile, verify the profile exists in the AWS credentials/config files on the machine/environment where FastMCP is running, or use an environment-based credential mechanism that your deployment supports (e.g., instance profile, secret manager).
    • If you need a different credential type (instance role, secrets), populate ICEBERG_MCP_PROFILE accordingly or leave blank to use the host’s default credentials.

Quick Start

View on GitHub

More for Database

View All →

More for Data & Analytics

View All →

Report Issue

Thank you! Your issue report has been submitted successfully.