Powertools for AWS MCP
Search the Powertools for AWS Lambda documentation across multiple runtimes to find documentation and examples.
Powertools for AWS MCP
The Powertools for AWS Model Context Protocol (MCP) is an MCP implementation that provides search functionality for the Powertools for AWS Lambda documentation across multiple runtimes. It allows your LLM agents to search for documentation and examples related to the toolkit, helping you to quickly find the information you need to use Powertools for AWS Lambda effectively.
[!WARNING] This project is experimental and under active development. APIs and features may change frequently without notice.
💡 Get Involved
We're actively seeking community feedback and feature suggestions join our Discord or open an issue to share your thoughts.
Use Cases
- Bring documentation and examples directly into your LLM agents' context.
- Search for specific topics or keywords within the Powertools for AWS documentation.
- Help your agents understand how to use the Powertools for AWS Lambda toolkit effectively.
Getting Started
Cursor | VS Code |
---|---|
Most clients that support MCP can use this server out of the box using a configuration similar to the following:
[!NOTE] If you are using an older version of the MCP, make sure to update your configuration to use the new package name
powertools-for-aws-mcp
.
{
"mcpServers": {
"powertools": {
"command": "npx",
"args": ["-y", "powertools-for-aws-mcp"]
}
}
}
This setup uses the Node.js package manager to run the MCP server locally and communicate with it using the STDIO interface.
Client-Specific Setup Instructions
For detailed setup instructions for specific clients, see the configurations below:
Getting Started with Amazon Q Developer CLI
See Amazon Q Developer CLI documentation for details.
Add MCP Server using CLI commands:
qchat mcp add powertools npx -y powertools-for-aws-mcp
Manual Configuration:
If you select global scope, the MCP server configuration is stored in ~/.aws/amazonq/mcp.json
and available across all your projects. If you select local scope, the configuration is stored in .amazonq/mcp.json
within your current project.
~/.aws/amazonq/mcp.json
{
"mcpServers": {
"powertools": {
"command": "npx",
"args": ["-y", "powertools-for-aws-mcp"]
}
}
}
Getting Started with Kiro
See Kiro Model Context Protocol Documentation for details.
- Navigate to
Kiro
>MCP Servers
- Add a new MCP server by selecting the
+ Add
button. - Paste the configuration given below:
kiro_mcp_settings.json
For macOS/Linux:
{
"mcpServers": {
"powertools": {
"command": "npx",
"args": ["-y", "powertools-for-aws-mcp"]
}
}
}
For Windows:
{
"mcpServers": {
"powertools": {
"disabled": false,
"timeout": 60,
"type": "stdio",
"command": "npx",
"args": ["-y", "powertools-for-aws-mcp"]
}
}
}
Getting Started with Cursor
- You can place MCP configuration in two locations, depending on your use case:
A. Project Configuration - For tools specific to a project, create a .cursor/mcp.json
file in your project directory. - This allows you to define MCP servers that are only available within that specific project.
B. Global Configuration - For tools that you want to use across all projects, create a ~/.cursor/mcp.json
file in your home directory. - This makes MCP servers available in all your Cursor workspaces.
.cursor/mcp.json
{
"mcpServers": {
"powertools": {
"command": "npx",
"args": ["-y", "powertools-for-aws-mcp"]
}
}
}
-
Using MCP in Chat: The Composer Agent will automatically use any MCP tools that are listed under Available Tools on the MCP settings page if it determines them to be relevant. To prompt tool usage intentionally, please prompt Cursor to use the desired MCP Server you wish to use. For example,
Using the Powertools MCP Server, do...
-
Tool Approval: By default, when the Agent wants to use an MCP tool, it will display a message asking for your approval. You can use the arrow next to the tool name to expand the message and see what arguments the Agent is calling the tool with.
Getting Started with Windsurf
-
Access MCP Settings
- Navigate to Windsurf - Settings > Advanced Settings or use the Command Palette > Open Windsurf Settings Page
- Look for the "Model Context Protocol (MCP) Servers" section
-
Add MCP Servers
- Select "Add Server" to add a new MCP server
- You can choose from available templates like GitHub, Puppeteer, PostgreSQL, etc.
- Alternatively, select "Add custom server" to configure your own server
-
Manual Configuration
- You can also manually edit the MCP configuration file located at
~/.codeium/windsurf/mcp_config.json
- You can also manually edit the MCP configuration file located at
~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"powertools": {
"command": "npx",
"args": ["-y", "powertools-for-aws-mcp"]
}
}
}
Getting Started with VS Code
Configure MCP servers in VS Code settings or in .vscode/mcp.json
(see VS Code MCP docs for more info.):
.vscode/mcp.json
{
"mcpServers": {
"powertools": {
"command": "npx",
"args": ["-y", "powertools-for-aws-mcp"]
}
}
}
Getting Started with Claude Code
Add MCP Server using CLI commands:
claude mcp add powertools
Manual Configuration (Recommended):
You can directly edit the configuration file located at ~/.claude.json
. This approach is more flexible and allows you to see all configurations at once.
~/.claude.json
{
"mcpServers": {
"powertools": {
"type": "stdio",
"command": "npx",
"args": ["-y", "powertools-for-aws-mcp"]
}
}
}
Restart Claude Code: After editing the config file, restart Claude Code for the changes to take effect.
Development
After cloning the repository, you can set up your development environment by running:
npm ci
npm run setup:hooks
After that you can run tests using npm t
or npm run test:unit:coverage
for coverage reports.
You can also run the server locally using: npm run dev
, this will start an inspector server that lets you interact with the MCP server using a browser UI.
If you want, you can also configure the server to run with Amazon Q, Claude Desktop, or other LLM clients that support the Model Context Protocol (MCP) by using node
as command and passing the --experimental-transform-types
flag and the path to the src/index.ts
file of this project.
For example, with Claude Code, you can add the server by running:
claude mcp add pt-dev node -- --experimental-transform-types /path/to/project/powertools-mcp/src/index.ts
Credits
Michael Walmsley at ServerlessDNA.com for creating the initial implementation of this MCP server and donating it to the Powertools for AWS team at Amazon Web Services.
License
This library is licensed under the MIT License. See the LICENSE file.
Related Servers
Travel Planner
A server for travel planning and interacting with Google Maps services.
Finviz MCP Server
Provides stock screening and fundamental analysis using Finviz data. Requires a Finviz Elite subscription.
DeepResearch
Lightning-Fast, High-Accuracy Deep Research Agent 👉 8–10x faster 👉 Greater depth & accuracy 👉 Unlimited parallel runs
OrdiscanMCP v1
MCP server for interacting with the Ordiscan API to query Bitcoin ordinals and inscriptions. Requires an Ordiscan API key.
MCP Domain Availability Checker
Check the availability of domain names across over 50 popular TLDs using DNS and WHOIS verification.
Package Registry Search
Search and get up-to-date information about NPM, Cargo, PyPi, and NuGet packages.
PBS API
Access Australian Pharmaceutical Benefits Scheme data for medicine information, pricing, and availability. Built with Python and FastAPI.
Haloscan MCP Server
An MCP server for interacting with the Haloscan SEO API.
Metasearch
A metasearch server that uses the Tavily API to perform searches based on specified queries.
Stock Analysis
Access real-time and historical Indian stock data using the Yahoo Finance API.