-
Notifications
You must be signed in to change notification settings - Fork 485
feat: add cloudwatch-appsignals-mcp-server with initial tools #619
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
base: main
Are you sure you want to change the base?
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #619 +/- ##
==========================================
- Coverage 86.71% 86.65% -0.06%
==========================================
Files 401 403 +2
Lines 26638 26778 +140
Branches 4158 4176 +18
==========================================
+ Hits 23099 23205 +106
- Misses 2348 2374 +26
- Partials 1191 1199 +8 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
This pull request sets up GitHub code scanning for this repository. Once the scans have completed and the checks have passed, the analysis results for this pull request branch will appear on this overview. Once you merge this pull request, the 'Security' tab will show more code scanning analysis results (for example, for the default branch). Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results. For more information about GitHub code scanning, check out the documentation. |
- View available CloudWatch metrics | ||
- Find associated log groups | ||
|
||
## Installation |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can you add a cursor deeplink install button (https://docs.cursor.com/deeplinks#generate-install-link)
|
||
# Initialize AWS clients with logging | ||
try: | ||
8000 | logs_client = boto3.client('logs', region_name=AWS_REGION) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
consider using user_agent_extra for boto3 client
|
||
|
||
@mcp.tool() | ||
async def get_service_detail(service_name: str) -> str: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
can you use Pydantic Field() to the args? i.e. service_name: str = Field(..., description="...")
A few documentation asks – can you please:
|
Thanks for your review @alexa-perlov! Pushed a commit to address all your previous comments and doc updates. |
Summary
This PR introduces the CloudWatch Application Signals MCP Server, which provides tools for monitoring and analyzing AWS services using AWS Application Signals.
This is the first of two PRs, establishing the core infrastructure and initial tools.
Changes
New MCP Server Added:
cloudwatch-appsignals-mcp-server
- Enables AI assistants to interact with AWS Application SignalsInitial Tools Implemented (2 of 7):
list_monitored_services
- Lists all services monitored by AWS Application Signalsget_service_detail
- Gets detailed information about a specific service including metrics and log groupsUser experience
Before: Users had no programmatic way for AI assistants to interact with AWS Application Signals data. Monitoring service health,
checking SLOs, and investigating issues required manual console access.
After: AI assistants (Claude, GitHub Copilot, Amazon Q) can now:
Checklist
If your change doesn't seem to apply, please leave them unchecked.
Is this a breaking change? (Y/N) N
RFC issue number:
#604
Checklist:
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.