Skip to content

feat: Adding in service authorisation reference mcp server as per RFC issue #463 #730

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 4 commits into
base: main
Choose a base branch
from

Conversation

MitchyBAwesome
Copy link

Fixes

Summary

This PR introduces a new Model Context Protocol (MCP) server that provides programmatic access to AWS service authorization information. The implementation includes:

re: Issue #463

Changes

New Files Added:
• src/sar-mcp/aws_service_reference.py - Main MCP server implementation (173 lines)
• src/sar-mcp/README.md - Comprehensive documentation (130 lines)
• src/sar-mcp/requirements.txt - Python dependencies

Key Features:
Service Discovery: List all available AWS services
Action Enumeration: Get API actions for specific AWS services
Authorization Context: Retrieve condition keys, resource types, and action properties for specific API actions
IAM Policy Support: Understand action capabilities (write, list, permission management, tagging-only operations)

Technical Implementation:
• Built using FastMCP framework for MCP server functionality
• Async HTTP client (httpx) for API communication with AWS Service Reference endpoint
• Five distinct tools for different authorization queries:
• list_aws_services
• get_service_actions
• get_action_condition_keys
• get_action_resource_types
• get_action_properties

User experience

This MCP enables developers and security engineers to programmatically access AWS service authorization metadata, making it easier to create accurate IAM policies and understand service capabilities within MCP-enabled applications.

Checklist

If your change doesn't seem to apply, please leave them unchecked.

  • I have reviewed the contributing guidelines
  • I have performed a self-review of this change
  • Changes have been tested
  • Changes are documented

Is this a breaking change? N

RFC issue number: #463

Checklist:

  • Migration process documented
  • Implement warnings (if it can live side by side)

Acknowledgment

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the project license.

@MitchyBAwesome MitchyBAwesome requested a review from a team as a code owner July 3, 2025 05:10
@MitchyBAwesome MitchyBAwesome changed the title Adding in service authorisation reference mcp server as per RFC issue #463 feat: Adding in service authorisation reference mcp server as per RFC issue #463 Jul 4, 2025
@scottschreckengaust
Copy link
Member

Please review DEVELOPERS_GUIDE.md

@scottschreckengaust scottschreckengaust added the hold-merging Signals to hold the PR from merging label Jul 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
hold-merging Signals to hold the PR from merging
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants