@lishenxydlgzs/aws-athena-mcp
用于运行 AWS Athena 查询的模型上下文协议 (MCP) 服务器。此服务器使 AI 助手能够针对您的 AWS Athena 数据库执行 SQL 查询并检索结果。
用法
使用以下方法之一配置 AWS 凭证:
AWS CLI 配置
环境变量(
AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY)IAM 角色(如果在 AWS 上运行)
将服务器添加到您的 MCP 配置:
该服务器提供以下工具:
run_query:使用 AWS Athena 执行 SQL 查询参数:
数据库:要查询的 Athena 数据库
查询:要执行的 SQL 查询
maxRows:返回的最大行数(默认值:1000,最大值:10000)
返回:
如果查询在超时内完成:完整的查询结果
如果超时:仅获取 queryExecutionId 以供后续检索
get_status:检查查询执行的状态参数:
queryExecutionId:从 run_query 返回的 ID
返回:
状态:查询状态(QUEUED、RUNNING、SUCCEEDED、FAILED 或 CANCELLED)
stateChangeReason:状态改变的原因(如果有)
submissionDateTime:查询提交的时间
completionDateTime:查询完成的时间(如果完成)
统计信息:查询执行统计信息(如果有)
get_result:检索已完成查询的结果参数:
queryExecutionId:从 run_query 返回的 ID
maxRows:返回的最大行数(默认值:1000,最大值:10000)
返回:
如果查询成功完成,则显示完整的查询结果
如果查询失败或仍在运行,则出现错误
list_saved_queries:列出 Athena 中所有已保存(命名)的查询。返回:
包含
id、name和可选description的已保存查询数组查询从配置的
ATHENA_WORKGROUP和AWS_REGION返回
run_saved_query:通过 ID 运行之前保存的查询。
参数:
namedQueryId:已保存查询的 IDdatabaseOverride:可选覆盖已保存查询的默认数据库maxRows:返回的最大行数(默认值:1000)timeoutMs:超时时间(毫秒)(默认值:60000)
返回:
与
run_query相同的行为:完整结果或执行 ID
Related MCP server: AWS Athena MCP Server
使用示例
显示所有数据库
给 AI 助手的消息: List all databases in Athena
MCP参数:
列出数据库中的表
给 AI 助手的消息: Show me all tables in the default database
MCP参数:
获取表架构
给 AI 助手的消息: What's the schema of the asin_sitebestimg table?
MCP参数:
表格行预览
发送给 AI 助手的消息: Show some rows from my_database.mytable
MCP参数:
具有过滤和聚合的高级查询
给AI助手的消息: Find the average price by category for in-stock products
MCP参数:
检查查询状态
获取已完成查询的结果
列出已保存的查询
运行已保存的查询
要求
Node.js >= 16
具有适当 Athena 和 S3 权限的 AWS 凭证
用于存储查询结果的 S3 存储桶
命名查询(可选)必须存在于指定的
ATHENA_WORKGROUP和AWS_REGION中
执照
麻省理工学院