paput-mcp 2.2.4 → 2.4.0

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.
Files changed (247) hide show
  1. package/README.md +137 -104
  2. package/dist/cli/index.js +6 -6
  3. package/dist/cli/setup-ai.js +124 -126
  4. package/dist/cli/setup-ai.js.map +1 -1
  5. package/dist/handlers/add-knowledge-candidates/handler.js +11 -9
  6. package/dist/handlers/add-knowledge-candidates/handler.js.map +1 -1
  7. package/dist/handlers/add-knowledge-candidates/tool.js +4 -4
  8. package/dist/handlers/add-knowledge-candidates/tool.js.map +1 -1
  9. package/dist/handlers/cache-status/handler.js +11 -9
  10. package/dist/handlers/cache-status/handler.js.map +1 -1
  11. package/dist/handlers/cache-status/tool.js +1 -1
  12. package/dist/handlers/cache-status/tool.js.map +1 -1
  13. package/dist/handlers/create-memo/handler.js +25 -14
  14. package/dist/handlers/create-memo/handler.js.map +1 -1
  15. package/dist/handlers/create-memo/tool.js +6 -6
  16. package/dist/handlers/create-memo/tool.js.map +1 -1
  17. package/dist/handlers/create-note/handler.js +19 -9
  18. package/dist/handlers/create-note/handler.js.map +1 -1
  19. package/dist/handlers/create-note/tool.js +4 -4
  20. package/dist/handlers/create-note/tool.js.map +1 -1
  21. package/dist/handlers/delete-skill-sheet-project/handler.js +18 -2
  22. package/dist/handlers/delete-skill-sheet-project/handler.js.map +1 -1
  23. package/dist/handlers/delete-skill-sheet-project/tool.js +2 -2
  24. package/dist/handlers/delete-skill-sheet-project/tool.js.map +1 -1
  25. package/dist/handlers/discard-pending-candidate/handler.js +9 -7
  26. package/dist/handlers/discard-pending-candidate/handler.js.map +1 -1
  27. package/dist/handlers/discard-pending-candidate/tool.js +6 -3
  28. package/dist/handlers/discard-pending-candidate/tool.js.map +1 -1
  29. package/dist/handlers/get-categories/handler.js +10 -4
  30. package/dist/handlers/get-categories/handler.js.map +1 -1
  31. package/dist/handlers/get-categories/tool.js +1 -1
  32. package/dist/handlers/get-categories/tool.js.map +1 -1
  33. package/dist/handlers/get-memo/handler.js +14 -11
  34. package/dist/handlers/get-memo/handler.js.map +1 -1
  35. package/dist/handlers/get-memo/tool.js +2 -2
  36. package/dist/handlers/get-memo/tool.js.map +1 -1
  37. package/dist/handlers/get-note/handler.js +19 -16
  38. package/dist/handlers/get-note/handler.js.map +1 -1
  39. package/dist/handlers/get-note/tool.js +2 -2
  40. package/dist/handlers/get-note/tool.js.map +1 -1
  41. package/dist/handlers/get-session-transcript/handler.js +9 -3
  42. package/dist/handlers/get-session-transcript/handler.js.map +1 -1
  43. package/dist/handlers/get-session-transcript/tool.js +4 -4
  44. package/dist/handlers/get-session-transcript/tool.js.map +1 -1
  45. package/dist/handlers/get-skill-sheet/handler.js +32 -29
  46. package/dist/handlers/get-skill-sheet/handler.js.map +1 -1
  47. package/dist/handlers/get-skill-sheet/tool.js +1 -1
  48. package/dist/handlers/get-skill-sheet/tool.js.map +1 -1
  49. package/dist/handlers/index.js +1 -11
  50. package/dist/handlers/index.js.map +1 -1
  51. package/dist/handlers/list-ideas/handler.js +9 -3
  52. package/dist/handlers/list-ideas/handler.js.map +1 -1
  53. package/dist/handlers/list-pending-candidates/handler.js +6 -4
  54. package/dist/handlers/list-pending-candidates/handler.js.map +1 -1
  55. package/dist/handlers/list-pending-candidates/tool.js +2 -2
  56. package/dist/handlers/list-pending-candidates/tool.js.map +1 -1
  57. package/dist/handlers/save-pending-candidate/handler.js +12 -9
  58. package/dist/handlers/save-pending-candidate/handler.js.map +1 -1
  59. package/dist/handlers/save-pending-candidate/tool.js +6 -6
  60. package/dist/handlers/save-pending-candidate/tool.js.map +1 -1
  61. package/dist/handlers/scan-sessions/handler.js +6 -4
  62. package/dist/handlers/scan-sessions/handler.js.map +1 -1
  63. package/dist/handlers/scan-sessions/tool.js +3 -3
  64. package/dist/handlers/scan-sessions/tool.js.map +1 -1
  65. package/dist/handlers/search-memo/handler.js +16 -8
  66. package/dist/handlers/search-memo/handler.js.map +1 -1
  67. package/dist/handlers/search-memo/tool.js +8 -8
  68. package/dist/handlers/search-memo/tool.js.map +1 -1
  69. package/dist/handlers/search-notes/handler.js +17 -9
  70. package/dist/handlers/search-notes/handler.js.map +1 -1
  71. package/dist/handlers/search-notes/tool.js +5 -5
  72. package/dist/handlers/search-notes/tool.js.map +1 -1
  73. package/dist/handlers/sync-remote-memos/handler.js +9 -5
  74. package/dist/handlers/sync-remote-memos/handler.js.map +1 -1
  75. package/dist/handlers/sync-remote-memos/tool.js +3 -3
  76. package/dist/handlers/sync-remote-memos/tool.js.map +1 -1
  77. package/dist/handlers/test-utils.js +13 -0
  78. package/dist/handlers/test-utils.js.map +1 -0
  79. package/dist/handlers/update-memo/handler.js +22 -11
  80. package/dist/handlers/update-memo/handler.js.map +1 -1
  81. package/dist/handlers/update-memo/tool.js +8 -8
  82. package/dist/handlers/update-memo/tool.js.map +1 -1
  83. package/dist/handlers/update-note/handler.js +23 -13
  84. package/dist/handlers/update-note/handler.js.map +1 -1
  85. package/dist/handlers/update-note/tool.js +5 -5
  86. package/dist/handlers/update-note/tool.js.map +1 -1
  87. package/dist/handlers/update-skill-sheet-basic-info/handler.js +26 -2
  88. package/dist/handlers/update-skill-sheet-basic-info/handler.js.map +1 -1
  89. package/dist/handlers/update-skill-sheet-basic-info/tool.js +5 -5
  90. package/dist/handlers/update-skill-sheet-basic-info/tool.js.map +1 -1
  91. package/dist/handlers/update-skill-sheet-self-pr/handler.js +14 -2
  92. package/dist/handlers/update-skill-sheet-self-pr/handler.js.map +1 -1
  93. package/dist/handlers/update-skill-sheet-self-pr/tool.js +2 -2
  94. package/dist/handlers/update-skill-sheet-self-pr/tool.js.map +1 -1
  95. package/dist/handlers/update-skill-sheet-skills/handler.js +34 -3
  96. package/dist/handlers/update-skill-sheet-skills/handler.js.map +1 -1
  97. package/dist/handlers/update-skill-sheet-skills/index.js +1 -1
  98. package/dist/handlers/update-skill-sheet-skills/index.js.map +1 -1
  99. package/dist/handlers/update-skill-sheet-skills/tool.js +9 -9
  100. package/dist/handlers/update-skill-sheet-skills/tool.js.map +1 -1
  101. package/dist/handlers/upsert-skill-sheet-project/handler.js +105 -0
  102. package/dist/handlers/upsert-skill-sheet-project/handler.js.map +1 -0
  103. package/dist/handlers/upsert-skill-sheet-project/index.js +2 -0
  104. package/dist/handlers/upsert-skill-sheet-project/index.js.map +1 -0
  105. package/dist/handlers/{update-skill-sheet-project → upsert-skill-sheet-project}/tool.js +18 -19
  106. package/dist/handlers/upsert-skill-sheet-project/tool.js.map +1 -0
  107. package/dist/index.js +1 -1
  108. package/dist/index.js.map +1 -1
  109. package/dist/schemas/tool-input.js +228 -0
  110. package/dist/schemas/tool-input.js.map +1 -0
  111. package/dist/server.js +8 -5
  112. package/dist/server.js.map +1 -1
  113. package/dist/services/api/client.js +1 -1
  114. package/dist/services/api/client.js.map +1 -1
  115. package/dist/services/api/idea.js.map +1 -1
  116. package/dist/services/api/index.js +0 -1
  117. package/dist/services/api/index.js.map +1 -1
  118. package/dist/services/api/memo.js +3 -17
  119. package/dist/services/api/memo.js.map +1 -1
  120. package/dist/services/api/note.js +3 -17
  121. package/dist/services/api/note.js.map +1 -1
  122. package/dist/services/api/skill-sheet.js +3 -3
  123. package/dist/services/api/skill-sheet.js.map +1 -1
  124. package/dist/services/local-cache/index.js +2 -2
  125. package/dist/services/local-cache/index.js.map +1 -1
  126. package/dist/services/session/index.js +41 -18
  127. package/dist/services/session/index.js.map +1 -1
  128. package/dist/tool.js +80 -42
  129. package/dist/tool.js.map +1 -1
  130. package/dist/types/constants.js +12 -12
  131. package/dist/types/constants.js.map +1 -1
  132. package/dist/types/index.js +0 -2
  133. package/dist/types/index.js.map +1 -1
  134. package/package.json +7 -4
  135. package/dist/cli/install-codex-skill.js +0 -58
  136. package/dist/cli/install-codex-skill.js.map +0 -1
  137. package/dist/handlers/add-skill-sheet-project/handler.js +0 -16
  138. package/dist/handlers/add-skill-sheet-project/handler.js.map +0 -1
  139. package/dist/handlers/add-skill-sheet-project/index.js +0 -2
  140. package/dist/handlers/add-skill-sheet-project/index.js.map +0 -1
  141. package/dist/handlers/add-skill-sheet-project/tool.js +0 -96
  142. package/dist/handlers/add-skill-sheet-project/tool.js.map +0 -1
  143. package/dist/handlers/add-skill-sheet-skill/handler.js +0 -13
  144. package/dist/handlers/add-skill-sheet-skill/handler.js.map +0 -1
  145. package/dist/handlers/add-skill-sheet-skill/index.js +0 -2
  146. package/dist/handlers/add-skill-sheet-skill/index.js.map +0 -1
  147. package/dist/handlers/add-skill-sheet-skill/tool.js +0 -41
  148. package/dist/handlers/add-skill-sheet-skill/tool.js.map +0 -1
  149. package/dist/handlers/create-memo-tool.js +0 -35
  150. package/dist/handlers/create-memo-tool.js.map +0 -1
  151. package/dist/handlers/create-memo.js +0 -72
  152. package/dist/handlers/create-memo.js.map +0 -1
  153. package/dist/handlers/create-skill-sheet/handler.js +0 -72
  154. package/dist/handlers/create-skill-sheet/handler.js.map +0 -1
  155. package/dist/handlers/create-skill-sheet/index.js +0 -3
  156. package/dist/handlers/create-skill-sheet/index.js.map +0 -1
  157. package/dist/handlers/create-skill-sheet/tool.js +0 -123
  158. package/dist/handlers/create-skill-sheet/tool.js.map +0 -1
  159. package/dist/handlers/delete-skill-sheet-skill/handler.js +0 -17
  160. package/dist/handlers/delete-skill-sheet-skill/handler.js.map +0 -1
  161. package/dist/handlers/delete-skill-sheet-skill/index.js +0 -2
  162. package/dist/handlers/delete-skill-sheet-skill/index.js.map +0 -1
  163. package/dist/handlers/delete-skill-sheet-skill/tool.js +0 -19
  164. package/dist/handlers/delete-skill-sheet-skill/tool.js.map +0 -1
  165. package/dist/handlers/get-skill-sheet-projects/handler.js +0 -14
  166. package/dist/handlers/get-skill-sheet-projects/handler.js.map +0 -1
  167. package/dist/handlers/get-skill-sheet-projects/index.js +0 -2
  168. package/dist/handlers/get-skill-sheet-projects/index.js.map +0 -1
  169. package/dist/handlers/get-skill-sheet-projects/tool.js +0 -18
  170. package/dist/handlers/get-skill-sheet-projects/tool.js.map +0 -1
  171. package/dist/handlers/get-skill-sheet-skills/handler.js +0 -13
  172. package/dist/handlers/get-skill-sheet-skills/handler.js.map +0 -1
  173. package/dist/handlers/get-skill-sheet-skills/index.js +0 -2
  174. package/dist/handlers/get-skill-sheet-skills/index.js.map +0 -1
  175. package/dist/handlers/get-skill-sheet-skills/tool.js +0 -13
  176. package/dist/handlers/get-skill-sheet-skills/tool.js.map +0 -1
  177. package/dist/handlers/search-memo-tool.js +0 -41
  178. package/dist/handlers/search-memo-tool.js.map +0 -1
  179. package/dist/handlers/search-memo.js +0 -80
  180. package/dist/handlers/search-memo.js.map +0 -1
  181. package/dist/handlers/skill-sheet-basic-info/handler.js +0 -12
  182. package/dist/handlers/skill-sheet-basic-info/handler.js.map +0 -1
  183. package/dist/handlers/skill-sheet-basic-info/index.js +0 -2
  184. package/dist/handlers/skill-sheet-basic-info/index.js.map +0 -1
  185. package/dist/handlers/skill-sheet-basic-info/tool.js +0 -30
  186. package/dist/handlers/skill-sheet-basic-info/tool.js.map +0 -1
  187. package/dist/handlers/skill-sheet-projects/handlers.js +0 -48
  188. package/dist/handlers/skill-sheet-projects/handlers.js.map +0 -1
  189. package/dist/handlers/skill-sheet-projects/index.js +0 -2
  190. package/dist/handlers/skill-sheet-projects/index.js.map +0 -1
  191. package/dist/handlers/skill-sheet-projects/tools.js +0 -228
  192. package/dist/handlers/skill-sheet-projects/tools.js.map +0 -1
  193. package/dist/handlers/skill-sheet-projects/types.js +0 -2
  194. package/dist/handlers/skill-sheet-projects/types.js.map +0 -1
  195. package/dist/handlers/skill-sheet-self-pr/handler.js +0 -12
  196. package/dist/handlers/skill-sheet-self-pr/handler.js.map +0 -1
  197. package/dist/handlers/skill-sheet-self-pr/index.js +0 -2
  198. package/dist/handlers/skill-sheet-self-pr/index.js.map +0 -1
  199. package/dist/handlers/skill-sheet-self-pr/tool.js +0 -18
  200. package/dist/handlers/skill-sheet-self-pr/tool.js.map +0 -1
  201. package/dist/handlers/skill-sheet-skills/handlers.js +0 -57
  202. package/dist/handlers/skill-sheet-skills/handlers.js.map +0 -1
  203. package/dist/handlers/skill-sheet-skills/index.js +0 -2
  204. package/dist/handlers/skill-sheet-skills/index.js.map +0 -1
  205. package/dist/handlers/skill-sheet-skills/tools.js +0 -161
  206. package/dist/handlers/skill-sheet-skills/tools.js.map +0 -1
  207. package/dist/handlers/skill-sheet-skills/types.js +0 -2
  208. package/dist/handlers/skill-sheet-skills/types.js.map +0 -1
  209. package/dist/handlers/update-skill-sheet/handler.js +0 -115
  210. package/dist/handlers/update-skill-sheet/handler.js.map +0 -1
  211. package/dist/handlers/update-skill-sheet/index.js +0 -3
  212. package/dist/handlers/update-skill-sheet/index.js.map +0 -1
  213. package/dist/handlers/update-skill-sheet/tool.js +0 -122
  214. package/dist/handlers/update-skill-sheet/tool.js.map +0 -1
  215. package/dist/handlers/update-skill-sheet-project/handler.js +0 -16
  216. package/dist/handlers/update-skill-sheet-project/handler.js.map +0 -1
  217. package/dist/handlers/update-skill-sheet-project/index.js +0 -2
  218. package/dist/handlers/update-skill-sheet-project/index.js.map +0 -1
  219. package/dist/handlers/update-skill-sheet-project/tool.js.map +0 -1
  220. package/dist/handlers/update-skill-sheet-skill/handler.js +0 -25
  221. package/dist/handlers/update-skill-sheet-skill/handler.js.map +0 -1
  222. package/dist/handlers/update-skill-sheet-skill/index.js +0 -2
  223. package/dist/handlers/update-skill-sheet-skill/index.js.map +0 -1
  224. package/dist/handlers/update-skill-sheet-skill/tool.js +0 -45
  225. package/dist/handlers/update-skill-sheet-skill/tool.js.map +0 -1
  226. package/dist/old-index.js +0 -210
  227. package/dist/old-index.js.map +0 -1
  228. package/dist/server/paput-server.js +0 -38
  229. package/dist/server/paput-server.js.map +0 -1
  230. package/dist/services/api/base.js +0 -35
  231. package/dist/services/api/base.js.map +0 -1
  232. package/dist/services/api-service.js +0 -83
  233. package/dist/services/api-service.js.map +0 -1
  234. package/dist/services/index.js +0 -2
  235. package/dist/services/index.js.map +0 -1
  236. package/dist/services/paput-api.js +0 -45
  237. package/dist/services/paput-api.js.map +0 -1
  238. package/dist/tools/memo.js +0 -134
  239. package/dist/tools/memo.js.map +0 -1
  240. package/dist/types/mcp.js +0 -2
  241. package/dist/types/mcp.js.map +0 -1
  242. package/dist/types/paput.js +0 -2
  243. package/dist/types/paput.js.map +0 -1
  244. package/dist/utils/config.js +0 -23
  245. package/dist/utils/config.js.map +0 -1
  246. package/dist/utils/logger.js +0 -19
  247. package/dist/utils/logger.js.map +0 -1
@@ -6,25 +6,25 @@ export async function handleCreateMemo(args, apiClient) {
6
6
  content: [
7
7
  {
8
8
  type: 'text',
9
- text: 'パラメータが不足しています',
9
+ text: 'Missing parameters',
10
10
  },
11
11
  ],
12
12
  isError: true,
13
13
  };
14
14
  }
15
- // パラメータの検証
15
+ // Validate parameters
16
16
  if (typeof args.title !== 'string' || typeof args.body !== 'string') {
17
17
  return {
18
18
  content: [
19
19
  {
20
20
  type: 'text',
21
- text: 'タイトルと本文は文字列で指定してください',
21
+ text: 'Title and body must be strings',
22
22
  },
23
23
  ],
24
24
  isError: true,
25
25
  };
26
26
  }
27
- // パラメータの構築
27
+ // Build parameters
28
28
  const params = {
29
29
  title: args.title,
30
30
  body: args.body,
@@ -33,13 +33,13 @@ export async function handleCreateMemo(args, apiClient) {
33
33
  if (typeof args.created_at === 'string') {
34
34
  params.created_at = args.created_at;
35
35
  }
36
- // カテゴリの処理
36
+ // Process categories
37
37
  if (Array.isArray(args.categories)) {
38
38
  params.categories = args.categories
39
39
  .filter((item) => typeof item === 'string')
40
40
  .map((name) => ({ name }));
41
41
  }
42
- // プロジェクトの処理
42
+ // Process projects
43
43
  if (Array.isArray(args.projects)) {
44
44
  params.projects = args.projects.filter((item) => typeof item === 'object' &&
45
45
  item !== null &&
@@ -47,16 +47,16 @@ export async function handleCreateMemo(args, apiClient) {
47
47
  typeof item.id === 'number');
48
48
  }
49
49
  else if (!args.projects && process.env.PAPUT_PROJECT_MATCH) {
50
- // 環境変数が設定されている場合、プロジェクトを検索して自動紐付け
50
+ // When configured, search for a project and link it automatically
51
51
  try {
52
52
  const projects = await searchSkillSheetProjects(apiClient, process.env.PAPUT_PROJECT_MATCH);
53
53
  if (projects.length > 0) {
54
- // 最初にマッチしたプロジェクトを使用
54
+ // Use the first matched project
55
55
  params.projects = [projects[0]];
56
56
  }
57
57
  }
58
58
  catch (error) {
59
- // プロジェクト検索が失敗しても、メモ作成は続行
59
+ // Continue creating the memo even if project search fails
60
60
  console.error('Failed to search projects:', error);
61
61
  }
62
62
  }
@@ -67,17 +67,28 @@ export async function handleCreateMemo(args, apiClient) {
67
67
  content: [
68
68
  {
69
69
  type: 'text',
70
- text: `メモの作成に失敗しました: ${result.error || '不明なエラー'}`,
70
+ text: `Failed to create memo: ${result.error || 'Unknown error'}`,
71
71
  },
72
72
  ],
73
73
  isError: true,
74
74
  };
75
75
  }
76
- let message = `メモ「${params.title}」が正常に作成されました。`;
76
+ let message = `Memo "" was created successfully.`;
77
77
  if (params.projects && params.projects.length > 0) {
78
- message += `\nプロジェクト: ${params.projects[0].title || `ID: ${params.projects[0].id}`}`;
78
+ message += `\nProject: ${params.projects[0].title || `ID: ${params.projects[0].id}`}`;
79
79
  }
80
80
  return {
81
+ structuredContent: {
82
+ success: true,
83
+ action: 'created',
84
+ memo: {
85
+ title: params.title,
86
+ is_public: params.is_public,
87
+ created_at: params.created_at,
88
+ categories: params.categories || [],
89
+ projects: params.projects || [],
90
+ },
91
+ },
81
92
  content: [
82
93
  {
83
94
  type: 'text',
@@ -87,12 +98,12 @@ export async function handleCreateMemo(args, apiClient) {
87
98
  };
88
99
  }
89
100
  catch (error) {
90
- const errorMessage = error instanceof Error ? error.message : '不明なエラー';
101
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error';
91
102
  return {
92
103
  content: [
93
104
  {
94
105
  type: 'text',
95
- text: `メモの作成中にエラーが発生しました: ${errorMessage}`,
106
+ text: `Error while creating memo: ${errorMessage}`,
96
107
  },
97
108
  ],
98
109
  isError: true,
@@ -1 +1 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/create-memo/handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/create-memo/handler.ts"],"names":[],"mappings":"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"}
@@ -2,33 +2,33 @@ import { handleCreateMemo } from './handler.js';
2
2
  export const createMemoTool = {
3
3
  definition: {
4
4
  name: 'paput_create_memo',
5
- description: 'PaPut にメモを作成します',
5
+ description: 'Create a PaPut memo. Use this when the user explicitly wants to save a memo directly, not when adding reusable knowledge candidates to the pending queue.',
6
6
  inputSchema: {
7
7
  type: 'object',
8
8
  properties: {
9
9
  title: {
10
10
  type: 'string',
11
- description: 'メモのタイトル',
11
+ description: 'Memo title',
12
12
  },
13
13
  body: {
14
14
  type: 'string',
15
- description: 'メモの内容',
15
+ description: 'Memo body',
16
16
  },
17
17
  is_public: {
18
18
  type: 'boolean',
19
- description: 'メモを公開するかどうか',
19
+ description: 'Whether to publish the memo',
20
20
  default: false,
21
21
  },
22
22
  created_at: {
23
23
  type: 'string',
24
- description: 'メモの作成日時。ISO 8601 形式で指定します(例: 2026-05-30T12:34:56Z',
24
+ description: 'Memo creation timestamp in ISO 8601 format, for example 2026-05-30T12:34:56Z',
25
25
  },
26
26
  categories: {
27
27
  type: 'array',
28
28
  items: {
29
29
  type: 'string',
30
30
  },
31
- description: 'メモのカテゴリ',
31
+ description: 'Memo categories',
32
32
  },
33
33
  },
34
34
  required: ['title', 'body'],
@@ -1 +1 @@
1
- {"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/create-memo/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,CAAC,MAAM,cAAc,GAAgB;IACzC,UAAU,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,iBAAiB;QAC9B,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,SAAS;iBACvB;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,OAAO;iBACrB;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,aAAa;oBAC1B,OAAO,EAAE,KAAK;iBACf;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,oDAAoD;iBACvD;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;qBACf;oBACD,WAAW,EAAE,SAAS;iBACvB;aACF;YACD,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;SAC5B;KACF;IACD,OAAO,EAAE,gBAAgB;CAC1B,CAAC"}
1
+ {"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/create-memo/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,CAAC,MAAM,cAAc,GAAgB;IACzC,UAAU,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,WAAW,EACT,2JAA2J;QAC7J,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,YAAY;iBAC1B;gBACD,IAAI,EAAE;oBACJ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,WAAW;iBACzB;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,6BAA6B;oBAC1C,OAAO,EAAE,KAAK;iBACf;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EACT,8EAA8E;iBACjF;gBACD,UAAU,EAAE;oBACV,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;qBACf;oBACD,WAAW,EAAE,iBAAiB;iBAC/B;aACF;YACD,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC;SAC5B;KACF;IACD,OAAO,EAAE,gBAAgB;CAC1B,CAAC"}
@@ -5,30 +5,30 @@ export async function handleCreateNote(args, apiClient) {
5
5
  content: [
6
6
  {
7
7
  type: 'text',
8
- text: 'パラメータが不足しています',
8
+ text: 'Missing parameters',
9
9
  },
10
10
  ],
11
11
  isError: true,
12
12
  };
13
13
  }
14
- // パラメータの検証
14
+ // Validate parameters
15
15
  if (typeof args.title !== 'string') {
16
16
  return {
17
17
  content: [
18
18
  {
19
19
  type: 'text',
20
- text: 'タイトルは文字列で指定してください',
20
+ text: 'Title must be a string',
21
21
  },
22
22
  ],
23
23
  isError: true,
24
24
  };
25
25
  }
26
- // パラメータの構築
26
+ // Build parameters
27
27
  const params = {
28
28
  title: args.title,
29
29
  is_public: typeof args.is_public === 'boolean' ? args.is_public : false,
30
30
  };
31
- // メモの処理
31
+ // Process memos
32
32
  if (Array.isArray(args.memo_ids)) {
33
33
  params.memos = args.memo_ids
34
34
  .filter((id) => typeof id === 'number')
@@ -41,28 +41,38 @@ export async function handleCreateNote(args, apiClient) {
41
41
  content: [
42
42
  {
43
43
  type: 'text',
44
- text: `ノートの作成に失敗しました: ${result.error || '不明なエラー'}`,
44
+ text: `Failed to create note: ${result.error || 'Unknown error'}`,
45
45
  },
46
46
  ],
47
47
  isError: true,
48
48
  };
49
49
  }
50
50
  return {
51
+ structuredContent: {
52
+ success: true,
53
+ action: 'created',
54
+ note: {
55
+ id: result.id || null,
56
+ title: params.title,
57
+ is_public: params.is_public,
58
+ memos: params.memos || [],
59
+ },
60
+ },
51
61
  content: [
52
62
  {
53
63
  type: 'text',
54
- text: `ノート「${params.title}」が正常に作成されました。${result.id ? `ID: ${result.id}` : ''}`,
64
+ text: `Note "" was created successfully. ${result.id ? `ID: ${result.id}` : ''}`,
55
65
  },
56
66
  ],
57
67
  };
58
68
  }
59
69
  catch (error) {
60
- const errorMessage = error instanceof Error ? error.message : '不明なエラー';
70
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error';
61
71
  return {
62
72
  content: [
63
73
  {
64
74
  type: 'text',
65
- text: `ノートの作成中にエラーが発生しました: ${errorMessage}`,
75
+ text: `Error while creating note: ${errorMessage}`,
66
76
  },
67
77
  ],
68
78
  isError: true,
@@ -1 +1 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/create-note/handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAGxD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAyC,EACzC,SAAoB;IAEpB,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,eAAe;iBACtB;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,WAAW;IACX,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACnC,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,mBAAmB;iBAC1B;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,WAAW;IACX,MAAM,MAAM,GAAqB;QAC/B,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,SAAS,EAAE,OAAO,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK;KACxE,CAAC;IAEF,QAAQ;IACR,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ;aACzB,MAAM,CAAC,CAAC,EAAE,EAAgB,EAAE,CAAC,OAAO,EAAE,KAAK,QAAQ,CAAC;aACpD,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAEnD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,kBAAkB,MAAM,CAAC,KAAK,IAAI,QAAQ,EAAE;qBACnD;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,OAAO,MAAM,CAAC,KAAK,gBAAgB,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;iBAC/E;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;QAEpD,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,uBAAuB,YAAY,EAAE;iBAC5C;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/create-note/handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAGxD,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,IAAyC,EACzC,SAAoB;IAEpB,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,oBAAoB;iBAC3B;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,sBAAsB;IACtB,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACnC,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,wBAAwB;iBAC/B;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,mBAAmB;IACnB,MAAM,MAAM,GAAqB;QAC/B,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,SAAS,EAAE,OAAO,IAAI,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK;KACxE,CAAC;IAEF,gBAAgB;IAChB,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACjC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,QAAQ;aACzB,MAAM,CAAC,CAAC,EAAE,EAAgB,EAAE,CAAC,OAAO,EAAE,KAAK,QAAQ,CAAC;aACpD,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAEnD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACpB,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,0BAA0B,MAAM,CAAC,KAAK,IAAI,eAAe,EAAE;qBAClE;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QAED,OAAO;YACL,iBAAiB,EAAE;gBACjB,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,SAAS;gBACjB,IAAI,EAAE;oBACJ,EAAE,EAAE,MAAM,CAAC,EAAE,IAAI,IAAI;oBACrB,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,EAAE;iBAC1B;aACF;YACD,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,qCAAqC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,MAAM,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE;iBACjF;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QAE3D,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,8BAA8B,YAAY,EAAE;iBACnD;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -2,17 +2,17 @@ import { handleCreateNote } from './handler.js';
2
2
  export const createNoteTool = {
3
3
  definition: {
4
4
  name: 'paput_create_note',
5
- description: 'PaPut にノートを作成します',
5
+ description: 'Create a PaPut note that groups existing memos. Use this to organize related memo IDs into a named note.',
6
6
  inputSchema: {
7
7
  type: 'object',
8
8
  properties: {
9
9
  title: {
10
10
  type: 'string',
11
- description: 'ノートのタイトル',
11
+ description: 'Note title',
12
12
  },
13
13
  is_public: {
14
14
  type: 'boolean',
15
- description: 'ノートを公開するかどうか',
15
+ description: 'Whether to publish the note',
16
16
  default: false,
17
17
  },
18
18
  memo_ids: {
@@ -20,7 +20,7 @@ export const createNoteTool = {
20
20
  items: {
21
21
  type: 'number',
22
22
  },
23
- description: 'ノートに含めるメモのIDリスト',
23
+ description: 'Memo IDs to include in the note',
24
24
  },
25
25
  },
26
26
  required: ['title'],
@@ -1 +1 @@
1
- {"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/create-note/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,CAAC,MAAM,cAAc,GAAgB;IACzC,UAAU,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,kBAAkB;QAC/B,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,UAAU;iBACxB;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,cAAc;oBAC3B,OAAO,EAAE,KAAK;iBACf;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;qBACf;oBACD,WAAW,EAAE,iBAAiB;iBAC/B;aACF;YACD,QAAQ,EAAE,CAAC,OAAO,CAAC;SACpB;KACF;IACD,OAAO,EAAE,gBAAgB;CAC1B,CAAC"}
1
+ {"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/create-note/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,CAAC,MAAM,cAAc,GAAgB;IACzC,UAAU,EAAE;QACV,IAAI,EAAE,mBAAmB;QACzB,WAAW,EACT,0GAA0G;QAC5G,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,KAAK,EAAE;oBACL,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,YAAY;iBAC1B;gBACD,SAAS,EAAE;oBACT,IAAI,EAAE,SAAS;oBACf,WAAW,EAAE,6BAA6B;oBAC1C,OAAO,EAAE,KAAK;iBACf;gBACD,QAAQ,EAAE;oBACR,IAAI,EAAE,OAAO;oBACb,KAAK,EAAE;wBACL,IAAI,EAAE,QAAQ;qBACf;oBACD,WAAW,EAAE,iCAAiC;iBAC/C;aACF;YACD,QAAQ,EAAE,CAAC,OAAO,CAAC;SACpB;KACF;IACD,OAAO,EAAE,gBAAgB;CAC1B,CAAC"}
@@ -1,12 +1,28 @@
1
1
  import { deleteSkillSheetProject } from '../../services/api/skill-sheet.js';
2
2
  export async function handler(params, apiClient) {
3
- const projectId = params?.project_id;
3
+ if (!params || typeof params.project_id !== 'number') {
4
+ return {
5
+ content: [
6
+ {
7
+ type: 'text',
8
+ text: 'Project ID to delete is required',
9
+ },
10
+ ],
11
+ isError: true,
12
+ };
13
+ }
14
+ const projectId = params.project_id;
4
15
  await deleteSkillSheetProject(apiClient, projectId);
5
16
  return {
17
+ structuredContent: {
18
+ success: true,
19
+ action: 'deleted',
20
+ project_id: projectId,
21
+ },
6
22
  content: [
7
23
  {
8
24
  type: 'text',
9
- text: 'プロジェクトを削除しました',
25
+ text: 'Project was deleted',
10
26
  },
11
27
  ],
12
28
  };
@@ -1 +1 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/delete-skill-sheet-project/handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAE5E,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,MAA2C,EAC3C,SAAoB;IAEpB,MAAM,SAAS,GAAG,MAAM,EAAE,UAAoB,CAAC;IAC/C,MAAM,uBAAuB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAEpD,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,eAAe;aACtB;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/delete-skill-sheet-project/handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAE5E,MAAM,CAAC,KAAK,UAAU,OAAO,CAC3B,MAA2C,EAC3C,SAAoB;IAEpB,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,CAAC,UAAU,KAAK,QAAQ,EAAE,CAAC;QACrD,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,kCAAkC;iBACzC;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC;IACpC,MAAM,uBAAuB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IAEpD,OAAO;QACL,iBAAiB,EAAE;YACjB,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,SAAS;YACjB,UAAU,EAAE,SAAS;SACtB;QACD,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,qBAAqB;aAC5B;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -2,13 +2,13 @@ import { handler } from './handler.js';
2
2
  export const deleteSkillSheetProjectTool = {
3
3
  definition: {
4
4
  name: 'paput_delete_skill_sheet_project',
5
- description: 'PaPut のスキルシートからプロジェクトを削除します',
5
+ description: 'Delete a project from the PaPut skill sheet by project ID. Use only when the user intends to remove that skill sheet project.',
6
6
  inputSchema: {
7
7
  type: 'object',
8
8
  properties: {
9
9
  project_id: {
10
10
  type: 'number',
11
- description: '削除するプロジェクトのID',
11
+ description: 'Project ID to delete',
12
12
  },
13
13
  },
14
14
  required: ['project_id'],
@@ -1 +1 @@
1
- {"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/delete-skill-sheet-project/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,CAAC,MAAM,2BAA2B,GAAgB;IACtD,UAAU,EAAE;QACV,IAAI,EAAE,kCAAkC;QACxC,WAAW,EAAE,6BAA6B;QAC1C,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,eAAe;iBAC7B;aACF;YACD,QAAQ,EAAE,CAAC,YAAY,CAAC;SACzB;KACF;IACD,OAAO;CACR,CAAC"}
1
+ {"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/delete-skill-sheet-project/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,CAAC,MAAM,2BAA2B,GAAgB;IACtD,UAAU,EAAE;QACV,IAAI,EAAE,kCAAkC;QACxC,WAAW,EACT,+HAA+H;QACjI,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,UAAU,EAAE;oBACV,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,sBAAsB;iBACpC;aACF;YACD,QAAQ,EAAE,CAAC,YAAY,CAAC;SACzB;KACF;IACD,OAAO;CACR,CAAC"}
@@ -2,7 +2,7 @@ import { updatePendingCandidate } from '../../services/local-cache/index.js';
2
2
  export async function handleDiscardPendingCandidate(args, _apiClient) {
3
3
  if (!args || typeof args.candidate_id !== 'string') {
4
4
  return {
5
- content: [{ type: 'text', text: 'candidate_id は必須です' }],
5
+ content: [{ type: 'text', text: 'candidate_id is required' }],
6
6
  isError: true,
7
7
  };
8
8
  }
@@ -15,20 +15,22 @@ export async function handleDiscardPendingCandidate(args, _apiClient) {
15
15
  if (!updated) {
16
16
  return {
17
17
  content: [
18
- { type: 'text', text: '破棄対象の pending 候補が見つかりません' },
18
+ { type: 'text', text: 'Pending candidate to discard was not found' },
19
19
  ],
20
20
  isError: true,
21
21
  };
22
22
  }
23
+ const result = {
24
+ discarded: true,
25
+ candidate_id: updated.id,
26
+ title: updated.title,
27
+ };
23
28
  return {
29
+ structuredContent: result,
24
30
  content: [
25
31
  {
26
32
  type: 'text',
27
- text: JSON.stringify({
28
- discarded: true,
29
- candidate_id: updated.id,
30
- title: updated.title,
31
- }, null, 2),
33
+ text: JSON.stringify(result, null, 2),
32
34
  },
33
35
  ],
34
36
  };
@@ -1 +1 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/discard-pending-candidate/handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAE7E,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,IAAyC,EACzC,UAAqB;IAErB,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;QACnD,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,EAAE,CAAC;YACvD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACxE,GAAG,SAAS;QACZ,MAAM,EAAE,WAAW;QACnB,gBAAgB,EAAE,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;QAC3E,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACrC,CAAC,CAAC,CAAC;IAEJ,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE;gBACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,0BAA0B,EAAE;aACnD;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAClB;oBACE,SAAS,EAAE,IAAI;oBACf,YAAY,EAAE,OAAO,CAAC,EAAE;oBACxB,KAAK,EAAE,OAAO,CAAC,KAAK;iBACrB,EACD,IAAI,EACJ,CAAC,CACF;aACF;SACF;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/discard-pending-candidate/handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAE7E,MAAM,CAAC,KAAK,UAAU,6BAA6B,CACjD,IAAyC,EACzC,UAAqB;IAErB,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;QACnD,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,0BAA0B,EAAE,CAAC;YAC7D,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACxE,GAAG,SAAS;QACZ,MAAM,EAAE,WAAW;QACnB,gBAAgB,EAAE,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;QAC3E,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACrC,CAAC,CAAC,CAAC;IAEJ,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE;gBACP,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,4CAA4C,EAAE;aACrE;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAG;QACb,SAAS,EAAE,IAAI;QACf,YAAY,EAAE,OAAO,CAAC,EAAE;QACxB,KAAK,EAAE,OAAO,CAAC,KAAK;KACrB,CAAC;IAEF,OAAO;QACL,iBAAiB,EAAE,MAAM;QACzB,OAAO,EAAE;YACP;gBACE,IAAI,EAAE,MAAM;gBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;aACtC;SACF;KACF,CAAC;AACJ,CAAC"}
@@ -2,12 +2,15 @@ import { handleDiscardPendingCandidate } from './handler.js';
2
2
  export const discardPendingCandidateTool = {
3
3
  definition: {
4
4
  name: 'paput_discard_pending_candidate',
5
- description: 'pending の知見候補を破棄します',
5
+ description: 'Discard a pending knowledge candidate so it will not be saved as a PaPut memo. Use this for duplicates, low-value candidates, or candidates with sensitive/project-specific content.',
6
6
  inputSchema: {
7
7
  type: 'object',
8
8
  properties: {
9
- candidate_id: { type: 'string', description: '破棄する候補ID' },
10
- reason: { type: 'string', description: '破棄理由' },
9
+ candidate_id: {
10
+ type: 'string',
11
+ description: 'Candidate ID to discard',
12
+ },
13
+ reason: { type: 'string', description: 'Reason for discarding' },
11
14
  },
12
15
  required: ['candidate_id'],
13
16
  },
@@ -1 +1 @@
1
- {"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/discard-pending-candidate/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAE7D,MAAM,CAAC,MAAM,2BAA2B,GAAgB;IACtD,UAAU,EAAE;QACV,IAAI,EAAE,iCAAiC;QACvC,WAAW,EAAE,qBAAqB;QAClC,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE;gBACzD,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE;aAChD;YACD,QAAQ,EAAE,CAAC,cAAc,CAAC;SAC3B;KACF;IACD,OAAO,EAAE,6BAA6B;CACvC,CAAC"}
1
+ {"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/discard-pending-candidate/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,6BAA6B,EAAE,MAAM,cAAc,CAAC;AAE7D,MAAM,CAAC,MAAM,2BAA2B,GAAgB;IACtD,UAAU,EAAE;QACV,IAAI,EAAE,iCAAiC;QACvC,WAAW,EACT,sLAAsL;QACxL,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,YAAY,EAAE;oBACZ,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,yBAAyB;iBACvC;gBACD,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,uBAAuB,EAAE;aACjE;YACD,QAAQ,EAAE,CAAC,cAAc,CAAC;SAC3B;KACF;IACD,OAAO,EAAE,6BAA6B;CACvC,CAAC"}
@@ -4,10 +4,13 @@ export async function handleGetCategories(args, apiClient) {
4
4
  const categories = await getCategories(apiClient);
5
5
  if (categories.length === 0) {
6
6
  return {
7
+ structuredContent: {
8
+ categories,
9
+ },
7
10
  content: [
8
11
  {
9
12
  type: 'text',
10
- text: 'カテゴリーが登録されていません。',
13
+ text: 'No categories are registered.',
11
14
  },
12
15
  ],
13
16
  };
@@ -16,21 +19,24 @@ export async function handleGetCategories(args, apiClient) {
16
19
  .map((category) => `• ${category.name} (ID: ${category.id})`)
17
20
  .join('\n');
18
21
  return {
22
+ structuredContent: {
23
+ categories,
24
+ },
19
25
  content: [
20
26
  {
21
27
  type: 'text',
22
- text: `利用可能なカテゴリー:\n\n${categoryList}`,
28
+ text: `Available categories:\n\n${categoryList}`,
23
29
  },
24
30
  ],
25
31
  };
26
32
  }
27
33
  catch (error) {
28
- const errorMessage = error instanceof Error ? error.message : '不明なエラー';
34
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error';
29
35
  return {
30
36
  content: [
31
37
  {
32
38
  type: 'text',
33
- text: `カテゴリーの取得中にエラーが発生しました: ${errorMessage}`,
39
+ text: `Error while fetching categories: ${errorMessage}`,
34
40
  },
35
41
  ],
36
42
  isError: true,
@@ -1 +1 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/get-categories/handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAG/D,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAyC,EACzC,SAAoB;IAEpB,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,CAAC;QAElD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,kBAAkB;qBACzB;iBACF;aACF,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAG,UAAU;aAC5B,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,KAAK,QAAQ,CAAC,IAAI,SAAS,QAAQ,CAAC,EAAE,GAAG,CAAC;aAC5D,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,kBAAkB,YAAY,EAAE;iBACvC;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;QAEpD,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,yBAAyB,YAAY,EAAE;iBAC9C;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/get-categories/handler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAG/D,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAyC,EACzC,SAAoB;IAEpB,IAAI,CAAC;QACH,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,SAAS,CAAC,CAAC;QAElD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC5B,OAAO;gBACL,iBAAiB,EAAE;oBACjB,UAAU;iBACX;gBACD,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,+BAA+B;qBACtC;iBACF;aACF,CAAC;QACJ,CAAC;QAED,MAAM,YAAY,GAAG,UAAU;aAC5B,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,KAAK,QAAQ,CAAC,IAAI,SAAS,QAAQ,CAAC,EAAE,GAAG,CAAC;aAC5D,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,OAAO;YACL,iBAAiB,EAAE;gBACjB,UAAU;aACX;YACD,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,4BAA4B,YAAY,EAAE;iBACjD;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QAE3D,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,oCAAoC,YAAY,EAAE;iBACzD;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -2,7 +2,7 @@ import { handleGetCategories } from './handler.js';
2
2
  export const getCategoriesTool = {
3
3
  definition: {
4
4
  name: 'paput_get_categories',
5
- description: 'PaPut のカテゴリー一覧を取得します',
5
+ description: 'List available PaPut categories. Use this before assigning categories or checking whether a category already exists.',
6
6
  inputSchema: {
7
7
  type: 'object',
8
8
  properties: {},
@@ -1 +1 @@
1
- {"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/get-categories/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAEnD,MAAM,CAAC,MAAM,iBAAiB,GAAgB;IAC5C,UAAU,EAAE;QACV,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,sBAAsB;QACnC,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;SACf;KACF;IACD,OAAO,EAAE,mBAAmB;CAC7B,CAAC"}
1
+ {"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/get-categories/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAEnD,MAAM,CAAC,MAAM,iBAAiB,GAAgB;IAC5C,UAAU,EAAE;QACV,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EACT,sHAAsH;QACxH,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,EAAE;SACf;KACF;IACD,OAAO,EAAE,mBAAmB;CAC7B,CAAC"}
@@ -5,7 +5,7 @@ export async function handleGetMemo(args, apiClient) {
5
5
  content: [
6
6
  {
7
7
  type: 'text',
8
- text: 'メモIDが指定されていません。',
8
+ text: 'Memo ID is required.',
9
9
  },
10
10
  ],
11
11
  isError: true,
@@ -17,13 +17,13 @@ export async function handleGetMemo(args, apiClient) {
17
17
  try {
18
18
  const result = await getMemo(apiClient, params);
19
19
  const categories = result.categories.length > 0
20
- ? `カテゴリ: ${result.categories.map((c) => c.name).join(', ')}`
20
+ ? `Categories: ${result.categories.map((c) => c.name).join(', ')}`
21
21
  : '';
22
- const visibility = result.is_public ? '公開' : '非公開';
23
- const likeInfo = `いいね: ${result.like_count}${result.has_liked ? ' (いいね済み)' : ''}`;
24
- const bookmarkInfo = `ブックマーク: ${result.bookmark_count}${result.has_bookmarked ? ' (ブックマーク済み)' : ''}`;
22
+ const visibility = result.is_public ? 'Public' : 'Private';
23
+ const likeInfo = `Likes: ${result.like_count}${result.has_liked ? ' (liked)' : ''}`;
24
+ const bookmarkInfo = `Bookmarks: ${result.bookmark_count}${result.has_bookmarked ? ' (bookmarked)' : ''}`;
25
25
  const projects = result.projects.length > 0
26
- ? `プロジェクト: ${result.projects.map((p) => p.title).join(', ')}`
26
+ ? `Project: ${result.projects.map((p) => p.title).join(', ')}`
27
27
  : '';
28
28
  const memoDetail = `【${result.title}】(${visibility})
29
29
  ${categories}
@@ -34,10 +34,13 @@ ${result.body}
34
34
  ${likeInfo}
35
35
  ${bookmarkInfo}
36
36
 
37
- 作成日: ${result.created_at}
38
- 更新日: ${result.updated_at}
39
- 作成者: ${result.user.name} (@${result.user.user_id})`;
37
+ Created at: ${result.created_at}
38
+ Updated at: ${result.updated_at}
39
+ Author: ${result.user.name} (@${result.user.user_id})`;
40
40
  return {
41
+ structuredContent: {
42
+ memo: result,
43
+ },
41
44
  content: [
42
45
  {
43
46
  type: 'text',
@@ -47,12 +50,12 @@ ${bookmarkInfo}
47
50
  };
48
51
  }
49
52
  catch (error) {
50
- const errorMessage = error instanceof Error ? error.message : '不明なエラー';
53
+ const errorMessage = error instanceof Error ? error.message : 'Unknown error';
51
54
  return {
52
55
  content: [
53
56
  {
54
57
  type: 'text',
55
- text: `メモの取得中にエラーが発生しました: ${errorMessage}`,
58
+ text: `Error while fetching memo: ${errorMessage}`,
56
59
  },
57
60
  ],
58
61
  isError: true,
@@ -1 +1 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/get-memo/handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAGrD,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,IAAyC,EACzC,SAAoB;IAEpB,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;QACzC,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,iBAAiB;iBACxB;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAkB;QAC5B,EAAE,EAAE,IAAI,CAAC,EAAE;KACZ,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAEhD,MAAM,UAAU,GACd,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;YAC1B,CAAC,CAAC,SAAS,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC5D,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QACnD,MAAM,QAAQ,GAAG,QAAQ,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAClF,MAAM,YAAY,GAAG,WAAW,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACrG,MAAM,QAAQ,GACZ,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;YACxB,CAAC,CAAC,WAAW,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC7D,CAAC,CAAC,EAAE,CAAC;QAET,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,KAAK,KAAK,UAAU;EACpD,UAAU;EACV,QAAQ;;EAER,MAAM,CAAC,IAAI;;EAEX,QAAQ;EACR,YAAY;;OAEP,MAAM,CAAC,UAAU;OACjB,MAAM,CAAC,UAAU;OACjB,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC;QAEhD,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,UAAU;iBACjB;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC;QAEpD,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,sBAAsB,YAAY,EAAE;iBAC3C;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../src/handlers/get-memo/handler.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAGrD,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,IAAyC,EACzC,SAAoB;IAEpB,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;QACzC,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,sBAAsB;iBAC7B;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAkB;QAC5B,EAAE,EAAE,IAAI,CAAC,EAAE;KACZ,CAAC;IAEF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QAEhD,MAAM,UAAU,GACd,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC;YAC1B,CAAC,CAAC,eAAe,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAClE,CAAC,CAAC,EAAE,CAAC;QACT,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;QAC3D,MAAM,QAAQ,GAAG,UAAU,MAAM,CAAC,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QACpF,MAAM,YAAY,GAAG,cAAc,MAAM,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC1G,MAAM,QAAQ,GACZ,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC;YACxB,CAAC,CAAC,YAAY,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC9D,CAAC,CAAC,EAAE,CAAC;QAET,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,KAAK,KAAK,UAAU;EACpD,UAAU;EACV,QAAQ;;EAER,MAAM,CAAC,IAAI;;EAEX,QAAQ;EACR,YAAY;;cAEA,MAAM,CAAC,UAAU;cACjB,MAAM,CAAC,UAAU;UACrB,MAAM,CAAC,IAAI,CAAC,IAAI,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,GAAG,CAAC;QAEnD,OAAO;YACL,iBAAiB,EAAE;gBACjB,IAAI,EAAE,MAAM;aACb;YACD,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,UAAU;iBACjB;aACF;SACF,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,YAAY,GAChB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QAE3D,OAAO;YACL,OAAO,EAAE;gBACP;oBACE,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,8BAA8B,YAAY,EAAE;iBACnD;aACF;YACD,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -2,13 +2,13 @@ import { handleGetMemo } from './handler.js';
2
2
  export const getMemoTool = {
3
3
  definition: {
4
4
  name: 'paput_get_memo',
5
- description: 'PaPut のメモ詳細を取得します',
5
+ description: 'Get the full details of a PaPut memo by ID, including body, categories, projects, visibility, author, and engagement metadata.',
6
6
  inputSchema: {
7
7
  type: 'object',
8
8
  properties: {
9
9
  id: {
10
10
  type: 'number',
11
- description: 'メモID',
11
+ description: 'Memo ID',
12
12
  },
13
13
  },
14
14
  required: ['id'],
@@ -1 +1 @@
1
- {"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/get-memo/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,MAAM,CAAC,MAAM,WAAW,GAAgB;IACtC,UAAU,EAAE;QACV,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,mBAAmB;QAChC,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,EAAE,EAAE;oBACF,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,MAAM;iBACpB;aACF;YACD,QAAQ,EAAE,CAAC,IAAI,CAAC;SACjB;KACF;IACD,OAAO,EAAE,aAAa;CACvB,CAAC"}
1
+ {"version":3,"file":"tool.js","sourceRoot":"","sources":["../../../src/handlers/get-memo/tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,MAAM,CAAC,MAAM,WAAW,GAAgB;IACtC,UAAU,EAAE;QACV,IAAI,EAAE,gBAAgB;QACtB,WAAW,EACT,gIAAgI;QAClI,WAAW,EAAE;YACX,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE;gBACV,EAAE,EAAE;oBACF,IAAI,EAAE,QAAQ;oBACd,WAAW,EAAE,SAAS;iBACvB;aACF;YACD,QAAQ,EAAE,CAAC,IAAI,CAAC;SACjB;KACF;IACD,OAAO,EAAE,aAAa;CACvB,CAAC"}