MCP HubMCP Hub
anton10xr

gibber-mcp

by: anton10xr

Tiny MCP server with cryptography tools, sufficient to establish end-to-end encryption between LLM agents

172created 02/03/2025
Visit
cryptography
LLM

📌Overview

Purpose: The Tiny Cryptography MCP Server aims to facilitate secure communication between AI models and tools using the Model Context Protocol.

Overview: This server, built with Express.js and powered by the Stanford Javascript Crypto Library (SJCL), provides essential cryptographic functionalities including key pair generation, shared secret derivation, and message encryption/decryption. It supports real-time communication through server-sent events (SSE), enhancing the capabilities of AI systems by allowing them to leverage external tools more effectively.

Key Features:

  • Key Pair Generation: Generates SJCL P-256 key pairs, enabling secure key management without exposing private keys.

  • Shared Secret Derivation: Derives a shared secret from private and public keys, ensuring secure communication channels between parties.

  • Message Encryption: Utilizes SJCL AES-CCM to encrypt messages, providing a reliable method for safeguarding data in transit.

  • Message Decryption: Enables the decryption of encrypted messages, allowing for secure retrieval of information.

  • Real-Time Communication: Implements server-sent events (SSE) for live interaction, facilitating immediate data exchange and updates.


Tiny Cryptography MCP Server

A Model Context Protocol server built with Express.js that provides cryptographic tools including key pair generation, shared secret derivation, and message encryption/decryption.

Now available at: http://104.248.174.57/sse

Powered by Stanford Javascript Crypto Library (SJCL)

What is MCP?

The Model Context Protocol (MCP) is an open standard that defines how AI models and tools communicate. It allows AI systems to use tools more effectively and standardizes the way models request information and actions.

Features

  • Generate SJCL P-256 key pairs
  • Derive shared secrets for secure communication
  • Encrypt messages using SJCL AES-CCM
  • Decrypt encrypted messages
  • Server-sent events (SSE) for real-time communication

Installation

# Clone the repository
git clone https://github.com/anton10xr/gibber-mcp
cd mcp-server

# Install dependencies
npm install

Environment Variables

  • PORT: The port on which the server will run (default: 3006)

Development

# Start the development server
npm run dev

Production

# Build the project
npm run build

# Start the production server
npm start

API Endpoints

  • GET /sse: Connect to the server using server-sent events
  • POST /messages/:id: Send messages to a specific connection

Tools

  1. generateKeyPair: Generate a new SJCL P-256 key pair.
  2. deriveSharedSecret: Derive a shared secret from private and public keys.
  3. encrypt: Encrypt messages using SJCL AES-CCM.
  4. decrypt: Decrypt messages using SJCL AES-CCM.

License

MIT