First Trusted MCP server running on AWS Nitro Enclave Trusted Execution Environment
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"trusted-mcp-server": {
"command": "<see-readme>",
"args": []
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
This is a gmail MCP server running inside a secure AWS Nitro enclave instance. It was originally forked from the Claude Post MCP server. Most MCP servers are run locally via the stdio transport; we followed this guide to implement a remote MCP server using sse transport.
This server supports HTTP transport. Be the first to test it — help the community know if it works.
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
No package registry to scan.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in security
An evil MCP server used for redteam testing
Proof primitive for AI agents on MultiversX. Anchor file hashes on-chain as verifiable proofs.
AI-powered reverse engineering assistant that bridges IDA Pro with language models through MCP.
mcpki-server is the backend infrastructure for https://www.mcpki.org, enabling secure public key management and autonomous certificate handling for large language models (LLMs).
MCP Security Weekly
Get CVE alerts and security updates for Trusted Mcp Server and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
This is a gmail MCP server running inside a secure AWS Nitro enclave instance. It was originally forked from the Claude Post MCP server. Most MCP servers are run locally via the stdio transport; we followed this guide to implement a remote MCP server using sse transport.
To use this MCP server, you will need an app-specific password.
Then simply add the following block to your client's mcp.json file.
"gmail_mcp": {
"url": "https://gmail.mcp.freysa.ai/sse/?ADDR=<your.email@gmail.com>&ASP=<your app-specific password>"
}
Note that you might have to restart your client.
This implementation is a proof of concept. Passing app-specific passwords in URLs is not a secure pattern because:
Unfortunately, current MCP clients have limitations on how they connect to servers. At the moment of release, MCP specification does not define a standard authentication mechanism for SSE servers. This means we can't use more secure patterns like bearer tokens or other authorization headers that would normally be preferred.
For additional security, consider:
AWS Nitro Enclaves provide isolated compute environments that enhance security through hardware-based attestation. When code runs in a Nitro Enclave, the platform generates cryptographic measurements of the code's identity and state. These measurements serve as a verifiable guarantee that the code has not been modified and is executing exactly as intended, protecting against tampering or unauthorized modifications. For more information, see this blog post.
We use Nitriding to quickly deploy code in an AWS Nitro TEE.
To verify that the intended codebase is the one running in our TEE, you must reproduce running it in an AWS Nitro enclave yourself. Instructions to do so are below. Once you have it running, you can verify it using this repository as follows.
cd verifier
pnpm install && pnpm run build
cd mcp/react-ts-webpack
pnpm i && pnpm run dev
http://localhost:8080/ in your browser. You will be prompted to add two fields(a) the PCR2 hash, which is a hash of the codebase
(b) the Code attestation, which is signed by AWS
You can reproduce running this server in a TEE as follows.
Use the AWS EC2 console to select a sufficiently large instance and be sure to enable Nitro.
Make sure that the ports needed by your application are open by checking the security group, in "security" tab of the instance in the ec2 console.
Clone this repo to your ec2 instance.
Run the setup script to download all necessary dependencies.
sudo /setup.sh
sudo nano /etc/nitro_enclaves/allocator.yaml
sudo systemctl restart nitro-enclaves-allocator.service
make
make run
To actually use the MCP server, you will also need to run the gvproxy, as follows.
screen
./gvpro
... [View full README on GitHub](https://github.com/0xfreysa/trusted-mcp-server#readme)