Skip to main content
Glama

Payware MCP Server

Official
by payware
check-keys.js2.48 kB
#!/usr/bin/env node import crypto from 'crypto'; import { getPrivateKey } from './src/config/env.js'; async function checkKeys() { // Get our private key const privateKey = getPrivateKey(); console.log('=== PRIVATE KEY (first 100 chars) ==='); console.log(privateKey.substring(0, 100) + '...'); // Extract public key from our private key const keyObject = crypto.createPrivateKey(privateKey); const publicKey = crypto.createPublicKey(keyObject); const publicKeyFromPrivate = publicKey.export({ type: 'spki', format: 'der' }); const publicKeyBase64 = publicKeyFromPrivate.toString('base64'); console.log('\n=== OUR PUBLIC KEY (derived from private key) ==='); console.log(publicKeyBase64); // The public key from payware DB const paywarePublicKey = 'MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAi0h9c+0VASQ2BUvet/ScY6qBhf2NmIjHBm7SqxNoaHL8S9bwx2FPPsnmQRdlYrGHiQmdPaVG4hNa5Wefwf1jlDrjJDNXF5PoxHN3cUWdhhv1YWybGneyLdbWCEmWjG3M9BqkJrcgug+vsSIeswoophtk9woQ1gn/HhMzFKu4OYUdM7kqUbSVMJLzmx3Ja+XR4p32F73X6fzKJNhtjTkrxegsYXGyEOBoVVePlAEEjgF1Khmm1zct/bj/MjDiKuieFARNF5n9v+rVqj4a0KQTT0knBhTUJr4XfV346uSZt23U5dxlz+s/PJWXEKSIVuki5xXMKX1V0+U+To1wLbdBPQIDAQAB'; console.log('\n=== PAYWARE DB PUBLIC KEY ==='); console.log(paywarePublicKey); console.log('\n=== COMPARISON ==='); const keysMatch = publicKeyBase64 === paywarePublicKey; console.log('Keys match:', keysMatch ? '✅ YES' : '❌ NO'); if (!keysMatch) { console.log('\n=== 🔍 KEY MISMATCH DETECTED ==='); console.log('This explains the ERR_INVALID_SIGNATURE error!'); console.log('The private key we are using does not correspond to the public key in payware DB.'); console.log('\n=== SOLUTION ==='); console.log('Either:'); console.log('1. Update payware DB with our public key:'); console.log(' ' + publicKeyBase64); console.log('2. Get the correct private key that matches the DB public key'); console.log('\n=== KEY DETAILS ==='); console.log('Our public key length:', publicKeyBase64.length); console.log('DB public key length:', paywarePublicKey.length); console.log('First 50 chars - Ours:', publicKeyBase64.substring(0, 50)); console.log('First 50 chars - DB :', paywarePublicKey.substring(0, 50)); } else { console.log('\n=== ✅ KEYS MATCH ==='); console.log('The signature error must be caused by something else.'); } } checkKeys().catch(console.error);

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/payware/mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server