@goplausible/algorand-mcp 4.0.0 → 4.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -19,20 +19,14 @@ export declare class Arc26Manager {
19
19
  */
20
20
  generateUriAndQr(params: Arc26ToolInput): Promise<{
21
21
  uri: string;
22
- qrCode: string;
22
+ qrCodePng: string;
23
+ qrCodeUtf8: string;
23
24
  }>;
24
25
  handleTool(name: string, args: Record<string, unknown>): Promise<{
25
- content: ({
26
- type: string;
27
- data: string;
28
- mimeType: string;
29
- text?: undefined;
30
- } | {
26
+ content: {
31
27
  type: string;
32
28
  text: string;
33
- data?: undefined;
34
- mimeType?: undefined;
35
- })[];
29
+ }[];
36
30
  }>;
37
31
  }
38
32
  export declare const arc26Manager: Arc26Manager;
@@ -87,14 +87,14 @@ export class Arc26Manager {
87
87
  if (queryParams.length > 0) {
88
88
  uri += '?' + queryParams.join('&');
89
89
  }
90
- // Generate QR code as terminal output
91
- // const qrCode = await QRCode.toString(uri, {
92
- // type: 'terminal',
93
- // errorCorrectionLevel: 'H',
94
- // margin: 1,
95
- // width: 300
96
- // });
97
- const qrCode = await QRCode.toDataURL(uri, {
90
+ // Generate QR code as SVG
91
+ const qrCodeUtf8 = await QRCode.toString(uri, {
92
+ type: 'utf8',
93
+ errorCorrectionLevel: 'H',
94
+ margin: 1,
95
+ width: 300
96
+ });
97
+ const qrCodePng = await QRCode.toDataURL(uri, {
98
98
  type: 'image/png',
99
99
  errorCorrectionLevel: 'H',
100
100
  margin: 1,
@@ -102,7 +102,8 @@ export class Arc26Manager {
102
102
  });
103
103
  return {
104
104
  uri,
105
- qrCode
105
+ qrCodePng: qrCodePng,
106
+ qrCodeUtf8: qrCodeUtf8
106
107
  };
107
108
  }
108
109
  async handleTool(name, args) {
@@ -116,17 +117,20 @@ export class Arc26Manager {
116
117
  xnote: args.xnote
117
118
  };
118
119
  if (name === 'generate_algorand_uri') {
119
- const { uri, qrCode } = await this.generateUriAndQr(toolArgs);
120
+ const { uri, qrCodePng, qrCodeUtf8 } = await this.generateUriAndQr(toolArgs);
120
121
  return {
121
122
  content: [
122
- {
123
- type: "image",
124
- data: qrCode.replace(/^data:image\/png;base64,/, ''),
125
- mimeType: "image/png"
126
- },
127
123
  {
128
124
  type: "text",
129
- text: JSON.stringify({ uri }, null, 2)
125
+ text: [
126
+ qrCodeUtf8,
127
+ "",
128
+ `![QR Code](data:image/png;base64,${qrCodePng})`,
129
+ "",
130
+ "```json",
131
+ JSON.stringify({ uri }, null, 2),
132
+ "```"
133
+ ].join("\n")
130
134
  }
131
135
  ]
132
136
  };
@@ -86,7 +86,7 @@ export class UtilityManager {
86
86
  type: 'text',
87
87
  text: JSON.stringify({
88
88
  name: 'Algorand MCP Server',
89
- version: '4.0.0',
89
+ version: '4.0.2',
90
90
  builder: 'GoPlausible',
91
91
  description: 'A Model Context Protocol (MCP) server providing comprehensive access to the Algorand blockchain. Supports account management, transaction building and signing, smart contract interaction, asset operations, ARC-26 URI generation, and deep integration with Algorand ecosystem services including NFDomains, Tinyman, Vestige, and Ultrade.',
92
92
  blockchain: 'Algorand — a carbon-negative, pure proof-of-stake Layer 1 blockchain delivering instant finality, low fees, and advanced smart contract capabilities via AVM (Algorand Virtual Machine).',
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@goplausible/algorand-mcp",
3
- "version": "4.0.0",
3
+ "version": "4.0.2",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },