@albert-mr/genlayer-mcp-server
Version:
MCP server for generating GenLayer Intelligent Contracts with AI-native blockchain capabilities
139 lines • 5.29 kB
TypeScript
export declare const GENLAYER_NETWORKS: {
readonly localnet: {
readonly name: "Local Development";
readonly rpcUrl: "http://localhost:4000";
readonly chainId: 1337;
readonly description: "Local GenLayer development node";
};
readonly studionet: {
readonly name: "GenLayer Studio";
readonly rpcUrl: "https://studio.genlayer.com/api";
readonly chainId: 1337;
readonly description: "GenLayer Studio environment for testing";
};
readonly testnet_asimov: {
readonly name: "Asimov Testnet";
readonly rpcUrl: "https://testnet.genlayer.com/api";
readonly chainId: 42;
readonly description: "GenLayer Asimov testnet for public testing";
};
};
export declare const GENLAYER_URLS: {
readonly studio: "https://studio.genlayer.com/";
readonly docs: "https://docs.genlayer.com/";
readonly github: "https://github.com/genlayer-protocol";
readonly discord: "https://discord.gg/genlayer";
};
export declare const DEFAULT_VALUES: {
readonly rpcUrl: "http://localhost:4000";
readonly chainId: 1337;
readonly networkName: "localnet";
readonly gasLimit: 1000000;
readonly confirmationTimeout: 60000;
readonly templateType: "basic";
readonly includeExamples: true;
readonly detailLevel: "intermediate";
readonly minRequirementsLength: 10;
readonly minDescriptionLength: 10;
readonly minCriteriaLength: 20;
readonly cacheTimeout: 300000;
readonly maxConcurrentRequests: 10;
readonly requestTimeout: 30000;
};
export declare const GENLAYER_TYPES: {
readonly primitives: {
readonly string: "str";
readonly integer: "u256";
readonly boolean: "bool";
readonly address: "Address";
readonly float: "float";
readonly bytes: "bytes";
};
readonly collections: {
readonly list: "DynArray";
readonly dict: "TreeMap";
};
readonly special: {
readonly vector_store: "VecDB";
readonly embedding: "np.float32";
readonly model: "SentenceTransformer";
};
};
export declare const EXAMPLE_APIS: {
readonly financial: {
readonly coindesk: "https://api.coindesk.com/v1/bpi/currentprice.json";
readonly coingecko: "https://api.coingecko.com/api/v3/simple/price";
readonly alphavantage: "https://www.alphavantage.co/query";
};
readonly weather: {
readonly openweather: "https://api.openweathermap.org/data/2.5/weather";
};
readonly news: {
readonly newsapi: "https://newsapi.org/v2/everything";
readonly reddit: "https://api.reddit.com/r/news/search";
};
readonly social: {
readonly twitter: "https://api.twitter.com/2/tweets/search/recent";
};
readonly generic: "https://api.example.com/data";
};
export declare const VALIDATION_PATTERNS: {
readonly pascalCase: RegExp;
readonly camelCase: RegExp;
readonly kebabCase: RegExp;
readonly marketName: RegExp;
readonly methodName: RegExp;
readonly httpUrl: RegExp;
readonly validUrl: RegExp;
};
export declare const ERROR_MESSAGES: {
readonly validation: {
readonly pascalCase: "Name must be in PascalCase (e.g., MyContract, UserManager)";
readonly required: "This field is required";
readonly minLength: (field: string, min: number) => string;
readonly invalidUrl: "Must be a valid HTTP or HTTPS URL";
readonly invalidEnum: (field: string, options: string[]) => string;
};
readonly contract: {
readonly nameFormat: "Contract name must be in PascalCase and start with a capital letter";
readonly marketNameFormat: "Market name must be in PascalCase and end with \"Market\" (e.g., BitcoinPriceMarket)";
readonly requirementsTooShort: "Requirements must be at least 10 characters and describe what the contract should do";
readonly criteriaTooShort: "Resolution criteria must be specific and detailed (at least 20 characters)";
};
readonly network: {
readonly connectionFailed: "Unable to connect to GenLayer network. Check your RPC URL and network settings.";
readonly invalidChainId: "Invalid chain ID. Must match the target network.";
readonly gasEstimationFailed: "Gas estimation failed. Check contract parameters and network status.";
};
};
export declare const FEATURE_FLAGS: {
readonly enableCaching: true;
readonly enableMetrics: false;
readonly enableAdvancedValidation: true;
readonly enableSecurityScanning: false;
readonly enablePerformanceOptimization: true;
};
export declare const LIMITS: {
readonly maxContractSize: 50000;
readonly maxStorageFields: 50;
readonly maxConstructorArgs: 20;
readonly maxWebSources: 10;
readonly maxMetadataFields: 20;
readonly maxExampleOperations: 10;
readonly maxTestTypes: 10;
readonly maxContractMethods: 50;
};
export declare function getEnvironmentConfig(): {
logLevel: string;
enableCaching: boolean;
requestTimeout: number;
} | {
logLevel: string;
enableCaching: boolean;
requestTimeout: number;
} | {
logLevel: string;
enableCaching: boolean;
requestTimeout: number;
};
//# sourceMappingURL=constants.d.ts.map