@polymerdao/mcp-polymer
Version:
A Model Context Protocol (MCP) server for blockchain event verification using Polymer's Prove API.
51 lines (50 loc) • 1.78 kB
JavaScript
const ENVIRONMENT_CONFIGS = {
devnet: {
validationKey: '0x8d3921b96a3815f403fb3a4c7ff525969d16f9e0',
chainId: 901,
polymerApiBase: 'https://proof.devnet.polymer.zone',
rpcEnvironment: 'testnet'
},
testnet: {
validationKey: '0xBbba797f031f630Ba321F042a9c89F077BCb9703',
chainId: 29105089,
polymerApiBase: 'https://proof.testnet.polymer.zone',
rpcEnvironment: 'testnet'
},
shadownet: {
validationKey: '0x6c5a5af58b0dd916ff2a3e95e5339a45f7da1cd4',
chainId: 444,
polymerApiBase: 'https://proof.shadownet.polymer.zone',
rpcEnvironment: 'mainnet'
},
mainnet: {
validationKey: '0x4632e987c6f31d6351e39324dec6f1404af56209',
chainId: 444,
polymerApiBase: 'https://proof.polymer.zone',
rpcEnvironment: 'mainnet'
}
};
export function getEnvironmentConfig(environment) {
const config = ENVIRONMENT_CONFIGS[environment];
if (!config) {
throw new Error(`Unknown environment: ${environment}. Valid environments are: ${Object.keys(ENVIRONMENT_CONFIGS).join(', ')}`);
}
return config;
}
export function validateEnvironment(environment) {
const validEnvironments = Object.keys(ENVIRONMENT_CONFIGS);
if (!validEnvironments.includes(environment)) {
throw new Error(`Invalid environment: ${environment}. Valid environments are: ${validEnvironments.join(', ')}`);
}
return environment;
}
export function listEnvironments() {
return Object.keys(ENVIRONMENT_CONFIGS);
}
export function getApiKey() {
const apiKey = process.env.POLYMER_API_KEY;
if (!apiKey) {
throw new Error('API key not found. Please set environment variable: POLYMER_API_KEY');
}
return apiKey;
}