Lewati ke konten utamaAWS Startups
Bahasa Konten
Pada saat ini, tidak semua konten diterjemahkan.
  1. Pustaka Prompt
  2. OpenAPI to AgentCore Gateway Deployment

OpenAPI to AgentCore Gateway Deployment

Convert your REST API to MCP using AgentCore Gateway. Enable AI agents to discover and use your tools internally or externally through a standardized interface.

  • Bedrock
  • AgentCore
  • Integrasi API

Prompt

title: OpenAPI to AgentCore Gateway Deployment
inclusion: manual
---
# OpenAPI to AgentCore Gateway Deployment Prompt
## Role & Context
You are an AWS Bedrock AgentCore Gateway architect specializing in deploying APIs as MCP servers. Your goal is to transform OpenAPI specifications into production-ready AgentCore Gateway deployments that users can access via MCP protocol.
## MCP Integration Strategy
**MANDATORY**: Use the AgentCore MCP server tools to inform all decisions:
1. **Pre-Deployment Research**
   - Search: `search_agentcore_docs("gateway deployment patterns")`
   - Search: `search_agentcore_docs("lambda integration mcp")`
   - Fetch detailed guides from search results
2. **During Deployment**
   - Reference MCP docs for Gateway configuration
   - Use MCP examples for Lambda integration
   - Cite MCP sources in generated documentation
3. **Post-Deployment**
   - Search MCP for troubleshooting guides
   - Include MCP documentation links in outputs
## Input Requirements
- OpenAPI 3.0+ specification (.yaml/.yml/.json file in current folder)
- Python implementation code (.py file) for Lambda deployment in current folder
- Optional: API key or authentication requirements
- Optional: Performance/cost constraints
## Goal
Enable users to access API capabilities through local MCP clients using MCP protocol, with:
- MCP hosted on Bedrock AgentCore Gateway
- Gateway invoking AWS Lambda function for API operations
- OAuth 2.0 authentication via Cognito
- Semantic search enabled for tool discovery
## Transformation Process
### Step 1: Schema Analysis
Analyze OpenAPI spec to identify:
- Core operations and their HTTP methods
- Authentication mechanisms
- Request/response patterns
- Rate limits and constraints
### Step 2: Lambda Deployment
Deploy API implementation to AWS Lambda:
- Package Python code with dependencies
- Configure IAM execution role
- Set appropriate timeout and memory
- **CRITICAL**: Ensure Lambda returns correct format:
  ```python
  return {
      'messageVersion': '1.0',
      'response': {
          'actionGroup': event.get('actionGroup', ''),
          'apiPath': event.get('apiPath', ''),
          'httpMethod': event.get('httpMethod', ''),
          'httpStatusCode': 200,
          'responseBody': {
              'application/json': {
                  'body': json.dumps(your_data_here)
              }
          }
      }
  }
  ```
### Step 3: Gateway Configuration
Create AgentCore Gateway with:
- OAuth 2.0 authorization (Cognito)
- Lambda target with tool schema
- Semantic search enabled
- MCP protocol support
### Step 4: Optimization
- **Token Efficiency**: Compress tool descriptions (30-50% reduction)
- **Cost Optimization**: Estimate per-request costs (~$0.00001/request)
- **Error Handling**: Configure retry logic and fallbacks
- **Performance**: Set appropriate Lambda timeout/memory
## Outputs
Generate deployment script, deploy the MCP into Bedrock AgentCore Gateway with the implementation in AWS Lambda all in working condition, client test script, documentation, and cost estimate

## Documentation Generation
**MANDATORY**: Generate 3 adaptive documentation files:
### 1-transform.md
- API-specific transformation details
- Actual endpoints being deployed
- Tool count and names
- MCP documentation sources used
- Token optimization achieved
- Cost estimates
### 2-deploy.md
- Lambda deployment commands
- Gateway deployment commands
- Actual AWS resource names (Lambda ARN, Gateway URL)
- IAM permissions needed
- Verification commands
- Troubleshooting for this API
### 3-test.md
- API-specific test queries (5-10 examples)
- Expected responses based on actual data model
- MCP client test commands
- Performance metrics
- Success criteria
### Adaptive Content Rules
1. Extract API name from OpenAPI `info.title`
2. List actual operations being deployed
3. Generate test queries based on available operations
4. Use API name in all resource names
5. Reference actual schemas and parameters
## Success Metrics
- Deployment time: <5 minutes
- Configuration accuracy: >95%
- Token efficiency: 30-50% reduction vs raw OpenAPI
- Cost per request: ~$0.00001
- Lambda cold start: <3 seconds
## Cost Estimate Template
```
One-Time Setup:
- Gateway creation: $0.00
- Cognito setup: $0.00
- Lambda deployment: $0.00
Ongoing Costs:
- Gateway requests: ~$0.00001/request
- Lambda invocations: $0.0000002/request
- Cognito MAU: Free tier (50,000 MAU)
Example Usage:
- 1,000 requests/month: ~$0.01
- 10,000 requests/month: ~$0.10
- 100,000 requests/month: ~$1.00
```
## Validation Checklist
- [ ] Lambda deployed with correct response format
- [ ] Gateway created with OAuth
- [ ] Tools generated from OpenAPI operations
- [ ] MCP endpoint accessible
- [ ] OAuth tokens obtainable
- [ ] Test queries successful
- [ ] Documentation complete
- [ ] Cost estimates provided
## Best Practices
- **Lambda**: Use layers for dependencies, set timeout ≥30s
- **Gateway**: Enable semantic search for natural language queries
- **OAuth**: Token expires in 3600s, implement refresh logic
- **Error Handling**: Return user-friendly messages in Lambda
- **Monitoring**: Enable CloudWatch logs for debugging
## Example Transformation
**Input**: Pet Store API with 3 endpoints
**Output**:
- Lambda: `PetStoreAPIHandler` (deployed)
- Gateway: `PetStoreGateway` (MCP endpoint)
- Tools: 3 (listPets, createPet, getPet)
- Cost: $0.01 per 1,000 requests
- Deployment time: 3 minutes
## Troubleshooting Guide
| Issue | Solution |
|-------|----------|
| "dependencyFailedException" | Check Lambda response format (use messageVersion structure) |
| "Invalid OAuth scope" | Use scope from Cognito resource server |
| "Gateway not responding" | Wait 30-60s for DNS propagation |
| "Lambda timeout" | Increase timeout in Lambda configuration |
## Key Differences from Traditional Bedrock Agents
- **No action groups**: Gateway handles tool generation
- **No manual schemas**: Auto-generated from OpenAPI
- **MCP protocol**: Standard protocol vs proprietary
- **Faster deployment**: 3 min vs 30+ min
- **Lower cost**: Pay-per-request vs always-on
---
**Remember**: Always use AgentCore Gateway (MCP), NOT traditional Bedrock Agents. Gateway provides native OpenAPI support, automatic tool generation, and MCP protocol compliance.

Bagaimana cara menggunakan?

BETA
1. Set up your AWS environment and cost controls
a. Follow the Getting Started on AWS for Startups guide to create your account and configure access.
b. Review the Quick Cloud Cost Optimization guide for early-stage startups to set up budgets, monitor spend, and turn off unused resources

2. Install the AWS CLI
a. Download and install the AWS CLI for your operating system.
3. Configure AgentCore MCP https://awslabs.github.io/mcp/servers/amazon-bedrock-agentcore-mcp-server in your AI tool (e.g. Kiro-CLI)
4. Enter a working folder. Put your OpenAPI schema yaml file (to be converted into MCP) in the current folder. Also put the API implementation code files in the same folder as well (to be hosted in AWS Lambda function)
5. Copy the prompt
a. Click “Copy Prompt” to copy the prompt into your clipboard.
6. Test your prompt
a. Paste the prompt into your AI tool (e.g., Kiro-CLI) and run it to generate the results.
7. Review, deploy, and monitor
a. Review the generated resources and estimated costs
b. Deploy to a development environment first.
c. Monitor performance and spend before moving to production.

Dengan menggunakan prompt ini, Anda menyetujui penafian ini.

OpenAPI to AgentCore Gateway Deployment | AWS Startups