@rapay/mcp-server 1.2.3 → 1.2.4
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.
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/tools.d.ts +1 -1
- package/dist/tools.js +54 -4
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
package/dist/index.js
CHANGED
package/dist/tools.d.ts
CHANGED
|
@@ -24,7 +24,7 @@ export declare const SENSITIVE_TOOLS: Set<string>;
|
|
|
24
24
|
export declare function isSensitiveTool(toolName: string): boolean;
|
|
25
25
|
/**
|
|
26
26
|
* Compute the integrity hash of the tool definitions
|
|
27
|
-
* Hash is based on tool names
|
|
27
|
+
* Hash is based on tool names, input schemas, and annotations (deterministic)
|
|
28
28
|
*/
|
|
29
29
|
export declare function computeToolHash(): string;
|
|
30
30
|
/**
|
package/dist/tools.js
CHANGED
|
@@ -60,6 +60,13 @@ const PAYMENT_TOOLS = [
|
|
|
60
60
|
},
|
|
61
61
|
required: ["amount", "recipient_id", "business_purpose", "user_confirmed"],
|
|
62
62
|
},
|
|
63
|
+
annotations: {
|
|
64
|
+
title: "Send Payment",
|
|
65
|
+
readOnlyHint: false,
|
|
66
|
+
destructiveHint: true,
|
|
67
|
+
idempotentHint: false,
|
|
68
|
+
openWorldHint: true,
|
|
69
|
+
},
|
|
63
70
|
},
|
|
64
71
|
{
|
|
65
72
|
name: "ra_refund",
|
|
@@ -71,6 +78,13 @@ const PAYMENT_TOOLS = [
|
|
|
71
78
|
properties: {},
|
|
72
79
|
required: [],
|
|
73
80
|
},
|
|
81
|
+
annotations: {
|
|
82
|
+
title: "Process Refund",
|
|
83
|
+
readOnlyHint: false,
|
|
84
|
+
destructiveHint: true,
|
|
85
|
+
idempotentHint: false,
|
|
86
|
+
openWorldHint: true,
|
|
87
|
+
},
|
|
74
88
|
},
|
|
75
89
|
];
|
|
76
90
|
/**
|
|
@@ -86,6 +100,13 @@ const QUERY_TOOLS = [
|
|
|
86
100
|
properties: {},
|
|
87
101
|
required: [],
|
|
88
102
|
},
|
|
103
|
+
annotations: {
|
|
104
|
+
title: "Check Balance",
|
|
105
|
+
readOnlyHint: true,
|
|
106
|
+
destructiveHint: false,
|
|
107
|
+
idempotentHint: true,
|
|
108
|
+
openWorldHint: true,
|
|
109
|
+
},
|
|
89
110
|
},
|
|
90
111
|
{
|
|
91
112
|
name: "ra_history",
|
|
@@ -103,6 +124,13 @@ const QUERY_TOOLS = [
|
|
|
103
124
|
},
|
|
104
125
|
required: [],
|
|
105
126
|
},
|
|
127
|
+
annotations: {
|
|
128
|
+
title: "Transaction History",
|
|
129
|
+
readOnlyHint: true,
|
|
130
|
+
destructiveHint: false,
|
|
131
|
+
idempotentHint: true,
|
|
132
|
+
openWorldHint: true,
|
|
133
|
+
},
|
|
106
134
|
},
|
|
107
135
|
{
|
|
108
136
|
name: "ra_whoami",
|
|
@@ -113,6 +141,13 @@ const QUERY_TOOLS = [
|
|
|
113
141
|
properties: {},
|
|
114
142
|
required: [],
|
|
115
143
|
},
|
|
144
|
+
annotations: {
|
|
145
|
+
title: "Account Info",
|
|
146
|
+
readOnlyHint: true,
|
|
147
|
+
destructiveHint: false,
|
|
148
|
+
idempotentHint: true,
|
|
149
|
+
openWorldHint: true,
|
|
150
|
+
},
|
|
116
151
|
},
|
|
117
152
|
{
|
|
118
153
|
name: "ra_dashboard",
|
|
@@ -123,6 +158,13 @@ const QUERY_TOOLS = [
|
|
|
123
158
|
properties: {},
|
|
124
159
|
required: [],
|
|
125
160
|
},
|
|
161
|
+
annotations: {
|
|
162
|
+
title: "Open Dashboard",
|
|
163
|
+
readOnlyHint: true,
|
|
164
|
+
destructiveHint: false,
|
|
165
|
+
idempotentHint: true,
|
|
166
|
+
openWorldHint: true,
|
|
167
|
+
},
|
|
126
168
|
},
|
|
127
169
|
{
|
|
128
170
|
name: "ra_dispute",
|
|
@@ -134,6 +176,13 @@ const QUERY_TOOLS = [
|
|
|
134
176
|
properties: {},
|
|
135
177
|
required: [],
|
|
136
178
|
},
|
|
179
|
+
annotations: {
|
|
180
|
+
title: "Manage Disputes",
|
|
181
|
+
readOnlyHint: true,
|
|
182
|
+
destructiveHint: false,
|
|
183
|
+
idempotentHint: true,
|
|
184
|
+
openWorldHint: true,
|
|
185
|
+
},
|
|
137
186
|
},
|
|
138
187
|
];
|
|
139
188
|
/**
|
|
@@ -158,25 +207,26 @@ export function isSensitiveTool(toolName) {
|
|
|
158
207
|
*/
|
|
159
208
|
/**
|
|
160
209
|
* Expected hash of tool definitions (update when tools change)
|
|
161
|
-
* This is the SHA-256 hash of the sorted tool names
|
|
210
|
+
* This is the SHA-256 hash of the sorted tool names, input schemas, and annotations.
|
|
162
211
|
*
|
|
163
212
|
* To regenerate after modifying tools:
|
|
164
213
|
* 1. Run: cd mcp-server && npm run build
|
|
165
214
|
* 2. Run: RAPAY_DEBUG=1 node dist/index.js (will log computed hash)
|
|
166
215
|
* 3. Update this constant with the new hash
|
|
167
216
|
*
|
|
168
|
-
* Last updated: 2026-02-
|
|
217
|
+
* Last updated: 2026-02-08 (Session 64 added annotations to hash)
|
|
169
218
|
*/
|
|
170
|
-
const EXPECTED_TOOL_HASH = "
|
|
219
|
+
const EXPECTED_TOOL_HASH = "f5d8adb129c9c36d";
|
|
171
220
|
/**
|
|
172
221
|
* Compute the integrity hash of the tool definitions
|
|
173
|
-
* Hash is based on tool names
|
|
222
|
+
* Hash is based on tool names, input schemas, and annotations (deterministic)
|
|
174
223
|
*/
|
|
175
224
|
export function computeToolHash() {
|
|
176
225
|
// Create a deterministic representation of tools
|
|
177
226
|
const toolData = TOOLS.map((tool) => ({
|
|
178
227
|
name: tool.name,
|
|
179
228
|
inputSchema: tool.inputSchema,
|
|
229
|
+
annotations: tool.annotations ?? null,
|
|
180
230
|
}))
|
|
181
231
|
.sort((a, b) => a.name.localeCompare(b.name))
|
|
182
232
|
.map((t) => JSON.stringify(t))
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rapay/mcp-server",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.4",
|
|
4
4
|
"description": "Ra Pay MCP Server for Claude Desktop and Claude Code - AI Agent Payment Infrastructure",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -49,7 +49,7 @@
|
|
|
49
49
|
"access": "public"
|
|
50
50
|
},
|
|
51
51
|
"dependencies": {
|
|
52
|
-
"@modelcontextprotocol/sdk": "^1.
|
|
52
|
+
"@modelcontextprotocol/sdk": "^1.11.0",
|
|
53
53
|
"cross-spawn": "^7.0.6"
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|