AWS Service Reference MCP Server
LocalAbout AWS Service Reference MCP Server
AWS Service Reference MCP Server makes AWS Programmatic Service Reference data accessible to people working with AWS services and IAM policies. Its tools look up services, API actions, supported conditions and resources, and action properties.
Key features
- 01List AWS services
- 02Look up service API actions
- 03Retrieve action condition keys
- 04Retrieve action resource types
- 05Inspect action properties
Use cases
- 01Find actions available for an AWS service
- 02Check conditions and resources for an API action
- 03Assess action capabilities when drafting IAM policies
MCP support
It exposes five lookup tools to MCP clients for querying AWS services and their API action reference data.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.
Tools
Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.
Details
From the project READMEAWS Service Reference MCP Server
This MCP server provides tools to interact with the AWS Programmatic Service Reference, allowing you to:
- List all available AWS services
- Get API actions for specific AWS services
- Get condition keys supported by specific API actions
- Get resource types supported by specific API actions
- Get action properties for specific API actions (such as write or list capabilities)
Installation
- Make sure you have Python 3.10 or higher installed
- Clone this repository
- Install the required dependencies:
# Create and activate a virtual environment (recommended)
python -m venv .venv
source .venv/bin/activate # On Unix/macOS
.venv\Scripts\activate # On Windows
# Install dependencies
pip install -r requirements.txt
Usage
Running the Server
You can run the server directly:
python aws_service_reference.py
Using with Claude Desktop
-
Open your Claude Desktop configuration file:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
- macOS:
-
Add the server configuration:
{
"mcpServers": {
"aws-service-reference": {
"command": "python",
"args": ["/ABSOLUTE/PATH/TO/aws_service_reference.py"]
}
}
}
Replace /ABSOLUTE/PATH/TO/ with the actual path to where you saved the server file.
- Restart Claude Desktop
Available Tools
The server provides five tools:
list_aws_services: Lists all available AWS servicesget_service_actions: Gets API actions for a specific AWS serviceget_action_condition_keys: Gets condition keys supported by a specific API actionget_action_resource_types: Gets resource types supported by a specific API actionget_action_properties: Gets action properties for a specific API action (such as write or list capabilities)
Example Usage in Claude
Once connected, you can ask Claude questions like:
- "What AWS services are available?"
- "Show me all the API actions for the S3 service"
- "What condition keys are supported by the s3:PutObject action?"
- "What resource types can I use with the ec2:RunInstances action?"
- "What are the action properties of s3:PutObject?"
Example: Using the get_action_properties Tool
The get_action_properties tool provides information about what an action is capable of, such as whether it has write or list capabilities. This is useful when creating IAM policies and understanding the nature of different API actions.
# Example response for get_action_properties with s3:PutObject
Action properties for s3:PutObject:
IsList: False
IsPermissionManagement: False
IsTaggingOnly: False
IsWrite: True
You can use this information to:
- Identify write operations that modify resources
- Find permission management actions that should be carefully controlled
- Distinguish between read-only and write operations
- Identify actions that only modify tags
Development
Testing with MCP Inspector
You can test the server using the MCP Inspector:
mcp dev aws_service_reference.py
Dependencies
The project uses the following dependencies (specified in requirements.txt):
mcp[cli]>=0.1.0: The Model Context Protocol SDK with CLI toolshttpx>=0.26.0: Modern HTTP client for making API requests
Troubleshooting
If you encounter issues:
- Verify your Python version is 3.10 or higher
- Ensure all dependencies are installed correctly:
pip install -r requirements.txt - Check the Claude Desktop logs:
- macOS:
~/Library/Logs/Claude/mcp*.log - Windows:
%APPDATA%\Claude\logs\mcp*.log
- macOS:
- Make sure you're using absolute paths in the Claude Desktop configuration
License
This project is licensed under the MIT License.
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.