crypto-mcp
Language:
TypeScript
Stars:
2
Forks:
0
Crypto_MCP
A Model Context Protocol (MCP) server for encrypting/decrypting/algorithm/hash
📝 Description
A Model Context Protocol (MCP) server for encrypting/decrypting/algorithm/hash.
📺 Demo
✨ Features
- Support AES encryption and decryption (128 bits)
- Support mode: ECB, CBC, CFB, OFB, CTR
- Support padding mode: Pkcs7, Iso97971, AnsiX923, Iso10126, ZeroPadding, NoPadding.
- Support output format: base64, hex
- Support input format: base64, hex
- Support MD5, SHA1, SHA256, SHA384, SHA512, SHA224 algorithm
- Support DES encryption and decryption (64 bits)
- Support mode: ECB, CBC, CFB, OFB, CTR
- Support padding mode: Pkcs7, Iso97971, AnsiX923, Iso10126, ZeroPadding, NoPadding.
- Support output format: base64, hex
- Support input format: base64, hex
🔮 Comming Soon
- Support more encryption and decryption algorithms
📦 Installation
Installing via Smithery
To install Crypto_MCP for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @1595901624/crypto-mcp --client claude
Manual Installation
- Clone the Repository
git clone https://github.com/1595901624/crypto-mcp.git
- Install Dependencies
pnpm install
- Build the Project
pnpm run build
- Add to your Claude Desktop MCP settings file
{
"mcpServers": {
"crypto-mcp": {
"command": "node",
"args": ["path/to/crypto-mcp/build/index.js"],
"disabled": false,
"autoApprove": []
}
}
}
🔧 Usage
Available Tools
AES
-
aes_encrypt
: Encrypt text with AES parameters:text
: The text to encrypt (Required)key
: The key to encrypt the text (optional, default is your-key-0123456)padding
: The padding mode (optional, default is Pkcs7)outputFormat
: The output format (optional, default is base64)iv
: The initialization vector (optional, default is your-iv-01234567)mode
: The mode to encrypt the text (optional, default is ECB)
-
aes_decrypt
: Decrypt text with AES parameters:text
: The text to decrypt (Required)key
: The key to decrypt the text (optional, default is your-key-0123456)padding
: The padding mode (optional, default is Pkcs7)inputFormat
: The input format (optional, default is base64)iv
: The initialization vector (optional, default is your-iv-01234567)mode
: The mode to decrypt the text (optional, default is ECB)
Digest
-
md5
: Calculate MD5 hash of a string parameters:input
: The input string to hash (Required)
-
sha1
: Calculate SHA-1 hash of a string parameters:input
: The input string to hash (Required)
-
sha256
: Calculate SHA-256 hash of a string parameters:input
: The input string to hash (Required)
-
sha384
: Calculate SHA-384 hash of a string parameters:input
: The input string to hash (Required)
-
sha512
: Calculate SHA-512 hash of a string parameters:input
: The input string to hash (Required)
-
sha224
: Calculate SHA-224 hash of a string parameters:input
: The input string to hash (Required)
DES
-
des_encrypt
: Encrypt text with DES parameters:-
text
: The text to encrypt (Required) -
key
: The key to encrypt the text (optional, default is your-key)- `padding`: The padding mode (optional, default is Pkcs7)
-
outputFormat
: The output format (optional, default is base64) -
iv
: The initialization vector (optional, default is your-iv-) -
mode
: The mode to encrypt the text (optional, default is ECB)
-
-
des_decrypt
: Decrypt text with DES parameters:text
: The text to decrypt (Required)key
: The key to decrypt the text (optional, default is your-key)padding
: The padding mode (optional, default is Pkcs7)inputFormat
: The input format (optional, default is base64)iv
: The initialization vector (optional, default is your-iv-)mode
: The mode to decrypt the text (optional, default is ECB)
📝 Development
# Install dependencies
npm install
# Build the project
npm run build
# Development with auto-rebuild
npm run watch
📝 License
This project is licensed under the MIT License. See the LICENSE file for details.