NirDiamant /
Controllable-RAG-Agent
This repository provides an advanced Retrieval-Augmented Generation (RAG) solution for complex question answering. It uses sophisticated graph based algorithm to handle the tasks.
88/100 healthLoading repository data…
ran-isenberg / repository
This repository provides a working, deployable, open source-based, serverless MCP server blueprint with an AWS Lambda function and AWS CDK Python code with all the best practices and a complete CI/CD pipeline.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
This project provides a working, open source based, AWS Lambda based Python MCP server implementation.
It provides two options:
It contains a production grade implementation including DEPLOYMENT code with CDK and a CI/CD pipeline, testing, observability and more (see Features section).
Choose the architecture that you see fit, each with its own pros and cons.
This project is a blueprint for new Serverless MCP servers.
📜Documentation | Blogs website
Contact details | mailto:ran.isenberg@ranthebuilder.cloud
You can start with a clean service out of this blueprint repository without using the 'Template' button on GitHub.
That's it, you are ready to deploy the MCP server (make sure Docker is running!):
cd {new repo folder}
poetry env activate
poetry install
make deploy
Check out the official Documentation.
Make sure you have poetry v2 and above.
You can also run 'make pr' will run all checks, synth, file formatters , unit tests, deploy to AWS and run integration and E2E tests.
Starting a production grade Serverless MCP can be overwhelming. You need to figure out many questions and challenges that have nothing to do with your business domain:
This project aims to reduce cognitive load and answer these questions for you by providing a production grade Python Serverless MCP server blueprint that implements best practices for AWS Lambda, MCP, Serverless CI/CD, and AWS CDK in one project.
The MCP server uses JSON RPC over HTTP (non stream-able) via API Gateway's body payload parameter. See integration tests and see how the test event is generated.
BE AWARE - The pure Lambda variation has limited MCP protocol support, it's based used for tools only simple MCP. For full blown services, use the FastMCP variation.
This project aims to reduce cognitive load and answer these questions for you by providing a skeleton Python Serverless service blueprint that implements best practices for AWS Lambda, Serverless CI/CD, and AWS CDK in one blueprint project.
This project is a blueprint for new Serverless MCP servers.
It provides two implementation options:
Choose the architecture that you see fit, each with its own pros and cons.

This project provides a working, open source based, AWS Lambda based Python MCP server implementation.
The MCP server uses JSON RPC over HTTP (non streamable) via API Gateway's body payload parameter. See integration tests and see how the test event is generated.
It contains an advanced implementation including IaC CDK code and a CI/CD pipeline, testing, observability and more (see Features section).
It's started based on AWS sample for MCP - but had major refactors since, combined with the AWS Lambda Handler cookbook template.
Better fitted for POCs or tool oriented MCPs. Can be secured with custom authentication code and WAF.
Native/pure Lambda example:
import os
from aws_lambda_env_modeler import init_environment_variables
from aws_lambda_powertools.logging import correlation_paths
from aws_lambda_powertools.metrics import MetricUnit
from aws_lambda_powertools.utilities.typing import LambdaContext
from service.handlers.models.env_vars import McpHandlerEnvVars
from service.handlers.utils.authentication import authenticate
from service.handlers.utils.observability import logger, metrics, tracer
from service.logic.math import add_two_numbers
from service.mcp_parser.session_data import SessionData
from service.handlers.models.env_vars import McpHandlerEnvVars
from service.mcp_parser.parser import MCPLambdaHandler
from service.mcp_parser.session import DynamoDBSessionStore
session_store = DynamoDBSessionStore(table_name_getter=lambda: os.getenv('TABLE_NAME'))
mcp = MCPLambdaHandler(name='mcp-lambda-server', version='1.0.0', session_store=session_store)
@mcp.tool()
def math(a: int, b: int) -> int:
"""Add two numbers together"""
# Uncomment the following line if you want to use session data
# session_data: Optional[SessionData] = mcp.get_session()
# call logic layer
result = add_two_numbers(a, b)
# save session data
mcp.set_session(data={'result': result})
metrics.add_metric(name='ValidMcpEvents', unit=MetricUnit.Count, value=1)
return result
@init_environment_variables(model=McpHandlerEnvVars)
@logger.inject_lambda_context(correlation_id_path=correlation_paths.API_GATEWAY_REST)
@metrics.log_metrics
@tracer.capture_lambda_handler(capture_response=False)
def lambda_handler(event: dict, context: LambdaContext) -> dict:
authenticate(event, context)
return mcp.handle_request(event, context)
Based on AWS Lambda Web Adapter and FastMCP.
Use an HTTP API GW and Lambda function. Can be used with a REST API GW with a custom domain too.
Better fitted for production-grade MCP servers as it upholds to the official MCP protocol and has native auth mechanism (OAuth).
Example with FastMCP and AWS web adapter extension:
from fastmcp import FastMCP
from service.handlers.utils.observability import logger
from service.logic.prompts.hld import hld_prompt
from service.logic.resources.profiles import get_profile_by_id
from service.logic.tools.math import add_two_numbers
mcp: FastMCP = FastMCP(name='mcp-lambda-server')
@mcp.tool
def math(a: int, b: int) -> int:
"""Add two numbers together"""
logger.info('using math tool', extra={'a': a, 'b': b})
return add_two_numbers(a, b)
# Dynamic resource template
@mcp.resource('users://{user_id}/profile')
def get_profile(user_id: int):
"""Fetch user profile by user ID."""
logger.info('fetching user profile', extra={'user_id': user_id})
return get_profile_by_id(user_id)
@mcp.prompt()
def generate_serverless_design_prompt(design_requirements: str) -> str:
"""Generate a serverless design prompt based on the provided design requirements."""
logger.info('generating serverless design prompt', extra={'design_requirements': design_requirements})
return hld_prompt(design_requirements)
app = mcp.http_app(transport='http', stateless_http=True, json_response=True)
The CDK code create an API GW with a path of /mcp which triggers the lambda on 'POST' requests.
The AWS Lambda handler uses a Lambda layer optimization which takes all the packages under the [packages] section in the Pipfile and downloads them in via a Docker instance.
This allows you to package any custom dependencies you might have, just add them to the Pipfile under the [packages] section.
The AWS Lambda handler will implement multiple best practice utilities.
Each utility is implemented when a new blog post is published about that utility.
The utilities cover multiple aspect of a production-ready service, including:
Code contributions are welcomed. Read this [guide.](https://github.com/ran-isenberg/aws-lambda-mcp-cookbook/blob/main/CONT
Selected from shared topics, language and repository description—not editorial ratings.
NirDiamant /
This repository provides an advanced Retrieval-Augmented Generation (RAG) solution for complex question answering. It uses sophisticated graph based algorithm to handle the tasks.
88/100 healthsimplerhacking /
This repository provides penetration testers and red teams with an extensive collection of dynamic phishing templates designed specifically for use with Evilginx3. May be updated periodically.
76/100 healthran-isenberg /
This repository provides a working, deployable, open source-based, serverless service blueprint with an AWS Lambda function and AWS CDK Python code with all the best practices and a complete CI/CD pipeline.
88/100 healthChenHongruixuan /
This repository contains some python code of some traditional change detection methods or provides their original websites, such as SFA, MAD, and some deep learning-based change detection methods, such as SiamCRNN, DSFA, and some FCN-based methods.
76/100 healthvchandu111 /
A fast, structured Python foundation designed specifically for GenAI learners. This repository provides a comprehensive 6-day learning path that covers essential Python concepts with a focus on practical applications for Generative AI work.
72/100 healthaws-samples /
This repository is designed to provide guidance for implementing comprehensive test suites for serverless applications.
63/100 health