@lishenxydlgzs/aws-athena-mcp

@lishenxydlgzs/aws-athena-mcp

site icon
2025.04.02 11
JavaScriptAWS Athena 查询数据库管理数据库
aws-athena-mcp 是一个基于 Model Context Protocol (MCP) 的服务,专门用于运行 AWS Athena 查询。该服务使 AI 助手能够执行 SQL 查询并获取 AWS Athena 数据库的结果。
View on GitHub

Overview

基本能力

产品定位

aws-athena-mcp 是一个用于 AWS Athena 查询的 MCP 服务器,旨在通过 AI 助手简化数据库查询操作。

核心功能

  1. 执行 SQL 查询:通过 run_query 工具执行 AWS Athena 查询。
  2. 查询状态检查:通过 get_status 工具检查查询执行状态。
  3. 结果获取:通过 get_result 工具获取查询结果。
  4. 保存查询管理:通过 list_saved_queriesrun_saved_query 工具管理并执行保存的查询。

适用场景

  1. 数据库查询:快速查询 AWS Athena 数据库中的数据。
  2. 数据预览:预览表结构和数据。
  3. 高级数据分析:执行复杂的聚合和过滤查询。
  4. 查询管理:管理和执行保存的查询。

工具列表

  1. run_query:执行 SQL 查询,返回结果或查询执行 ID。
  2. get_status:检查查询执行状态。
  3. get_result:获取查询结果。
  4. list_saved_queries:列出所有保存的查询。
  5. run_saved_query:执行保存的查询。

常见问题解答

  1. AWS 凭证配置:需通过 AWS CLI、环境变量或 IAM 角色配置。
  2. 查询超时:默认超时为 5 分钟,可通过 QUERY_TIMEOUT_MS 调整。
  3. 结果存储:查询结果需存储在指定的 S3 路径。

使用教程

使用依赖

  1. Node.js:需安装 Node.js >= 16。
  2. AWS 凭证:需配置 AWS 凭证,具有 Athena 和 S3 权限。
  3. S3 存储桶:需指定一个 S3 存储桶用于查询结果。

安装教程

  1. 配置 AWS 凭证bash aws configure
  2. 添加 MCP 配置json { "mcpServers": { "athena": { "command": "npx", "args": ["-y", "@lishenxydlgzs/aws-athena-mcp"], "env": { "OUTPUT_S3_PATH": "s3://your-bucket/athena-results/", "AWS_REGION": "us-east-1", "AWS_PROFILE": "default" } } } }

调试方式

  1. 执行查询json { "database": "default", "query": "SHOW DATABASES" }
  2. 检查状态json { "queryExecutionId": "12345-67890-abcdef" }
  3. 获取结果json { "queryExecutionId": "12345-67890-abcdef", "maxRows": 10 }

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。