Skip to main content

AWS Service Reference MCP Server - Interact with AWS Programmatic Service Reference

Project description

AWS 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

  1. Make sure you have Python 3.10 or higher installed
  2. Clone this repository
  3. 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

  1. Open your Claude Desktop configuration file:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
  2. 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.

  1. Restart Claude Desktop

Available Tools

The server provides five tools:

  1. list_aws_services: Lists all available AWS services
  2. get_service_actions: Gets API actions for a specific AWS service
  3. get_action_condition_keys: Gets condition keys supported by a specific API action
  4. get_action_resource_types: Gets resource types supported by a specific API action
  5. get_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 tools
  • httpx>=0.26.0: Modern HTTP client for making API requests

Troubleshooting

If you encounter issues:

  1. Verify your Python version is 3.10 or higher
  2. Ensure all dependencies are installed correctly:
    pip install -r requirements.txt
    
  3. Check the Claude Desktop logs:
    • macOS: ~/Library/Logs/Claude/mcp*.log
    • Windows: %APPDATA%\Claude\logs\mcp*.log
  4. Make sure you're using absolute paths in the Claude Desktop configuration

License

This project is licensed under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iflow_mcp_mitchybawesome_sar_mcp-0.1.1.tar.gz (4.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file iflow_mcp_mitchybawesome_sar_mcp-0.1.1.tar.gz.

File metadata

  • Download URL: iflow_mcp_mitchybawesome_sar_mcp-0.1.1.tar.gz
  • Upload date:
  • Size: 4.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_mitchybawesome_sar_mcp-0.1.1.tar.gz
Algorithm Hash digest
SHA256 bc0d24c714c14610918ba6bdba6babd3d3f31abb90af8857f9f1abf853a1df0d
MD5 ff877aea0ff723c57274c2395674f52e
BLAKE2b-256 3d523469cce94547a377d3b0d20a5f52e91a0ccc617af14cd78324e5831eb25f

See more details on using hashes here.

File details

Details for the file iflow_mcp_mitchybawesome_sar_mcp-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: iflow_mcp_mitchybawesome_sar_mcp-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 11.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.2 {"installer":{"name":"uv","version":"0.10.2","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for iflow_mcp_mitchybawesome_sar_mcp-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 62032e92a488b4b500416cf12cf41adf8fbbcc6d8f7069b8c6b7edad2ae888cd
MD5 db26ec496db37206781ce9ebc71cc152
BLAKE2b-256 4e83ee77ac600a2b0566e05d731bb1f516e58f9ba7b08931172a7a426c9b814c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page