paput-mcp 2.3.0 → 2.5.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.
- package/README.md +151 -93
- package/dist/check-http.js +27 -0
- package/dist/check-http.js.map +1 -0
- package/dist/cli/index.js +6 -6
- package/dist/cli/setup-ai.js +124 -126
- package/dist/cli/setup-ai.js.map +1 -1
- package/dist/handlers/add-knowledge-candidates/handler.js +11 -9
- package/dist/handlers/add-knowledge-candidates/handler.js.map +1 -1
- package/dist/handlers/add-knowledge-candidates/tool.js +4 -4
- package/dist/handlers/add-knowledge-candidates/tool.js.map +1 -1
- package/dist/handlers/cache-status/tool.js +1 -1
- package/dist/handlers/cache-status/tool.js.map +1 -1
- package/dist/handlers/create-memo/handler.js +25 -14
- package/dist/handlers/create-memo/handler.js.map +1 -1
- package/dist/handlers/create-memo/tool.js +6 -6
- package/dist/handlers/create-memo/tool.js.map +1 -1
- package/dist/handlers/create-note/handler.js +19 -9
- package/dist/handlers/create-note/handler.js.map +1 -1
- package/dist/handlers/create-note/tool.js +4 -4
- package/dist/handlers/create-note/tool.js.map +1 -1
- package/dist/handlers/delete-skill-sheet-project/handler.js +7 -2
- package/dist/handlers/delete-skill-sheet-project/handler.js.map +1 -1
- package/dist/handlers/delete-skill-sheet-project/tool.js +2 -2
- package/dist/handlers/delete-skill-sheet-project/tool.js.map +1 -1
- package/dist/handlers/discard-pending-candidate/handler.js +9 -7
- package/dist/handlers/discard-pending-candidate/handler.js.map +1 -1
- package/dist/handlers/discard-pending-candidate/tool.js +6 -3
- package/dist/handlers/discard-pending-candidate/tool.js.map +1 -1
- package/dist/handlers/get-categories/handler.js +4 -4
- package/dist/handlers/get-categories/handler.js.map +1 -1
- package/dist/handlers/get-categories/tool.js +1 -1
- package/dist/handlers/get-categories/tool.js.map +1 -1
- package/dist/handlers/get-memo/handler.js +11 -11
- package/dist/handlers/get-memo/handler.js.map +1 -1
- package/dist/handlers/get-memo/tool.js +2 -2
- package/dist/handlers/get-memo/tool.js.map +1 -1
- package/dist/handlers/get-note/handler.js +16 -16
- package/dist/handlers/get-note/handler.js.map +1 -1
- package/dist/handlers/get-note/tool.js +2 -2
- package/dist/handlers/get-note/tool.js.map +1 -1
- package/dist/handlers/get-session-transcript/handler.js +3 -3
- package/dist/handlers/get-session-transcript/handler.js.map +1 -1
- package/dist/handlers/get-session-transcript/tool.js +4 -4
- package/dist/handlers/get-session-transcript/tool.js.map +1 -1
- package/dist/handlers/get-skill-sheet/handler.js +29 -29
- package/dist/handlers/get-skill-sheet/handler.js.map +1 -1
- package/dist/handlers/get-skill-sheet/tool.js +1 -1
- package/dist/handlers/get-skill-sheet/tool.js.map +1 -1
- package/dist/handlers/list-pending-candidates/tool.js +2 -2
- package/dist/handlers/list-pending-candidates/tool.js.map +1 -1
- package/dist/handlers/save-pending-candidate/handler.js +12 -9
- package/dist/handlers/save-pending-candidate/handler.js.map +1 -1
- package/dist/handlers/save-pending-candidate/tool.js +6 -6
- package/dist/handlers/save-pending-candidate/tool.js.map +1 -1
- package/dist/handlers/scan-sessions/tool.js +3 -3
- package/dist/handlers/scan-sessions/tool.js.map +1 -1
- package/dist/handlers/search-memo/handler.js +8 -8
- package/dist/handlers/search-memo/handler.js.map +1 -1
- package/dist/handlers/search-memo/tool.js +8 -8
- package/dist/handlers/search-memo/tool.js.map +1 -1
- package/dist/handlers/search-notes/handler.js +9 -9
- package/dist/handlers/search-notes/handler.js.map +1 -1
- package/dist/handlers/search-notes/tool.js +5 -5
- package/dist/handlers/search-notes/tool.js.map +1 -1
- package/dist/handlers/sync-remote-memos/handler.js +9 -5
- package/dist/handlers/sync-remote-memos/handler.js.map +1 -1
- package/dist/handlers/sync-remote-memos/tool.js +3 -3
- package/dist/handlers/sync-remote-memos/tool.js.map +1 -1
- package/dist/handlers/update-memo/handler.js +22 -11
- package/dist/handlers/update-memo/handler.js.map +1 -1
- package/dist/handlers/update-memo/tool.js +8 -8
- package/dist/handlers/update-memo/tool.js.map +1 -1
- package/dist/handlers/update-note/handler.js +23 -13
- package/dist/handlers/update-note/handler.js.map +1 -1
- package/dist/handlers/update-note/tool.js +5 -5
- package/dist/handlers/update-note/tool.js.map +1 -1
- package/dist/handlers/update-skill-sheet-basic-info/handler.js +6 -1
- package/dist/handlers/update-skill-sheet-basic-info/handler.js.map +1 -1
- package/dist/handlers/update-skill-sheet-basic-info/tool.js +5 -5
- package/dist/handlers/update-skill-sheet-basic-info/tool.js.map +1 -1
- package/dist/handlers/update-skill-sheet-self-pr/handler.js +6 -1
- package/dist/handlers/update-skill-sheet-self-pr/handler.js.map +1 -1
- package/dist/handlers/update-skill-sheet-self-pr/tool.js +2 -2
- package/dist/handlers/update-skill-sheet-self-pr/tool.js.map +1 -1
- package/dist/handlers/update-skill-sheet-skills/handler.js +7 -2
- package/dist/handlers/update-skill-sheet-skills/handler.js.map +1 -1
- package/dist/handlers/update-skill-sheet-skills/tool.js +7 -7
- package/dist/handlers/update-skill-sheet-skills/tool.js.map +1 -1
- package/dist/handlers/upsert-skill-sheet-project/handler.js +5 -5
- package/dist/handlers/upsert-skill-sheet-project/handler.js.map +1 -1
- package/dist/handlers/upsert-skill-sheet-project/tool.js +16 -16
- package/dist/handlers/upsert-skill-sheet-project/tool.js.map +1 -1
- package/dist/http.js +149 -0
- package/dist/http.js.map +1 -0
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/schemas/tool-input.js +97 -80
- package/dist/schemas/tool-input.js.map +1 -1
- package/dist/server.js +20 -21
- package/dist/server.js.map +1 -1
- package/dist/services/api/client.js +9 -4
- package/dist/services/api/client.js.map +1 -1
- package/dist/services/api/memo.js +3 -3
- package/dist/services/api/memo.js.map +1 -1
- package/dist/services/api/note.js +3 -3
- package/dist/services/api/note.js.map +1 -1
- package/dist/services/api/skill-sheet.js +2 -2
- package/dist/services/api/skill-sheet.js.map +1 -1
- package/dist/services/local-cache/index.js +2 -2
- package/dist/services/local-cache/index.js.map +1 -1
- package/dist/tool.js +8 -8
- package/dist/tool.js.map +1 -1
- package/dist/types/constants.js +12 -12
- package/dist/types/constants.js.map +1 -1
- package/docs/directory-submission.md +91 -0
- package/docs/privacy-policy.md +60 -0
- package/docs/tools.md +59 -0
- package/docs/usage-examples.md +83 -0
- package/package.json +6 -1
package/docs/tools.md
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# Tools And Use Cases
|
|
2
|
+
|
|
3
|
+
PaPut MCP is a data-only MCP server. It exposes tools and resources for PaPut data. It does not provide UI widgets.
|
|
4
|
+
|
|
5
|
+
## Confirmation Policy
|
|
6
|
+
|
|
7
|
+
Clients and assistants should follow these rules:
|
|
8
|
+
|
|
9
|
+
- Read-only tools may be used when they are relevant to the user's request.
|
|
10
|
+
- Create, update, save, publish, discard, and delete tools should be used only when the user's intent is clear.
|
|
11
|
+
- Destructive tools require explicit confirmation before execution.
|
|
12
|
+
- `paput_save_pending_candidate` requires explicit user approval because it creates a PaPut memo from a local pending candidate.
|
|
13
|
+
- `paput_delete_skill_sheet_project` should be used only when the user clearly intends to remove a project.
|
|
14
|
+
- `paput_set_skill_sheet_skills` replaces the full skill list and should be used only when the complete desired final list is known.
|
|
15
|
+
- `paput_discard_pending_candidate` removes a pending item from the save flow and should be confirmed when the candidate may still be useful.
|
|
16
|
+
- Update and upsert tools should preserve existing data unless the user requested the change.
|
|
17
|
+
|
|
18
|
+
## Memo Tools
|
|
19
|
+
|
|
20
|
+
| Tool | Safety | Use case |
|
|
21
|
+
| ---------------------- | ----------------- | -------------------------------------------------------------------------------- |
|
|
22
|
+
| `paput_create_memo` | Write | Create a PaPut memo when the user explicitly asks to save content directly. |
|
|
23
|
+
| `paput_search_memo` | Read-only | Search memos by keyword, category, IDs, date, visibility, or pagination. |
|
|
24
|
+
| `paput_get_memo` | Read-only | Read the full details of a memo by ID. |
|
|
25
|
+
| `paput_update_memo` | Destructive/write | Update an existing memo title, body, visibility, categories, or linked projects. |
|
|
26
|
+
| `paput_get_categories` | Read-only | List categories before assigning categories or checking duplicates. |
|
|
27
|
+
|
|
28
|
+
## Note Tools
|
|
29
|
+
|
|
30
|
+
| Tool | Safety | Use case |
|
|
31
|
+
| -------------------- | ----------------- | ------------------------------------------------------ |
|
|
32
|
+
| `paput_create_note` | Write | Create a note that groups existing memo IDs. |
|
|
33
|
+
| `paput_search_notes` | Read-only | Search notes by keyword, visibility, and pagination. |
|
|
34
|
+
| `paput_get_note` | Read-only | Read a note and its attached memos. |
|
|
35
|
+
| `paput_update_note` | Destructive/write | Update a note title, visibility, or attached memo IDs. |
|
|
36
|
+
|
|
37
|
+
## Skill Sheet Tools
|
|
38
|
+
|
|
39
|
+
| Tool | Safety | Use case |
|
|
40
|
+
| ------------------------------------- | ----------------- | ------------------------------------------------------------------------------------------ |
|
|
41
|
+
| `paput_get_skill_sheet` | Read-only | Read the user's PaPut skill sheet. |
|
|
42
|
+
| `paput_update_skill_sheet_basic_info` | Destructive/write | Update profile fields such as nearest station, gender, birth date, or years of experience. |
|
|
43
|
+
| `paput_update_skill_sheet_self_pr` | Destructive/write | Update the self PR section. |
|
|
44
|
+
| `paput_set_skill_sheet_skills` | Destructive/write | Replace the full skill list with a known final state. |
|
|
45
|
+
| `paput_upsert_skill_sheet_project` | Destructive/write | Add or update a skill sheet project by ID or exact title match. |
|
|
46
|
+
| `paput_delete_skill_sheet_project` | Destructive | Delete a skill sheet project by ID. |
|
|
47
|
+
|
|
48
|
+
## Knowledge Capture And Local Cache Tools
|
|
49
|
+
|
|
50
|
+
| Tool | Safety | Use case |
|
|
51
|
+
| --------------------------------- | ---------------------------- | ----------------------------------------------------------------------------- |
|
|
52
|
+
| `paput_cache_status` | Read-only | Inspect local cache, pending candidates, processed sessions, and sync status. |
|
|
53
|
+
| `paput_sync_remote_memos` | Write to local cache | Sync existing PaPut memos into the local cache for duplicate detection. |
|
|
54
|
+
| `paput_scan_sessions` | Read-only | Scan local Claude and Codex session logs for reusable knowledge sources. |
|
|
55
|
+
| `paput_get_session_transcript` | Read-only | Read a selected local Claude or Codex session transcript. |
|
|
56
|
+
| `paput_add_knowledge_candidates` | Write to local pending queue | Add extracted reusable knowledge candidates before they are saved to PaPut. |
|
|
57
|
+
| `paput_list_pending_candidates` | Read-only | List pending candidates for review. |
|
|
58
|
+
| `paput_save_pending_candidate` | Write | Save an approved pending candidate as a PaPut memo. |
|
|
59
|
+
| `paput_discard_pending_candidate` | Destructive local action | Remove a pending candidate from the save flow. |
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
# Usage Examples
|
|
2
|
+
|
|
3
|
+
These examples show typical ways to use PaPut MCP from an AI assistant.
|
|
4
|
+
|
|
5
|
+
## 1. Search Existing Memos Before Creating Knowledge
|
|
6
|
+
|
|
7
|
+
Prompt:
|
|
8
|
+
|
|
9
|
+
```text
|
|
10
|
+
Search my PaPut memos for existing notes about OAuth dynamic client registration before creating a new knowledge candidate.
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
Expected tool flow:
|
|
14
|
+
|
|
15
|
+
1. `paput_search_memo`
|
|
16
|
+
2. `paput_add_knowledge_candidates` only when no duplicate or near-duplicate exists
|
|
17
|
+
3. `paput_list_pending_candidates` when the user wants to review pending items
|
|
18
|
+
|
|
19
|
+
Use case: avoid duplicate long-term knowledge while preserving useful decisions from engineering work.
|
|
20
|
+
|
|
21
|
+
## 2. Capture Reusable Knowledge From A Codex Session
|
|
22
|
+
|
|
23
|
+
Prompt:
|
|
24
|
+
|
|
25
|
+
```text
|
|
26
|
+
Scan recent Codex sessions, find the OAuth implementation session, and extract reusable knowledge candidates.
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
Expected tool flow:
|
|
30
|
+
|
|
31
|
+
1. `paput_scan_sessions`
|
|
32
|
+
2. `paput_get_session_transcript`
|
|
33
|
+
3. `paput_add_knowledge_candidates`
|
|
34
|
+
|
|
35
|
+
Use case: turn completed development work into reviewable knowledge without immediately publishing it to PaPut.
|
|
36
|
+
|
|
37
|
+
## 3. Save An Approved Pending Candidate
|
|
38
|
+
|
|
39
|
+
Prompt:
|
|
40
|
+
|
|
41
|
+
```text
|
|
42
|
+
Review my pending PaPut knowledge candidates and save the OAuth metadata candidate if it is not a duplicate.
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Expected tool flow:
|
|
46
|
+
|
|
47
|
+
1. `paput_list_pending_candidates`
|
|
48
|
+
2. `paput_search_memo`
|
|
49
|
+
3. `paput_save_pending_candidate` only after explicit user approval
|
|
50
|
+
|
|
51
|
+
Use case: keep the user in control before creating a permanent PaPut memo.
|
|
52
|
+
|
|
53
|
+
## 4. Update A Skill Sheet Project
|
|
54
|
+
|
|
55
|
+
Prompt:
|
|
56
|
+
|
|
57
|
+
```text
|
|
58
|
+
Update my PaPut skill sheet project for the MCP server work with the latest technologies and responsibilities.
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
Expected tool flow:
|
|
62
|
+
|
|
63
|
+
1. `paput_get_skill_sheet`
|
|
64
|
+
2. `paput_upsert_skill_sheet_project`
|
|
65
|
+
3. `paput_get_skill_sheet` to verify the final result
|
|
66
|
+
|
|
67
|
+
Use case: maintain an accurate skill sheet after project milestones.
|
|
68
|
+
|
|
69
|
+
## 5. Organize Memos Into A Note
|
|
70
|
+
|
|
71
|
+
Prompt:
|
|
72
|
+
|
|
73
|
+
```text
|
|
74
|
+
Find my MCP-related memos and create a PaPut note that groups the most relevant ones.
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Expected tool flow:
|
|
78
|
+
|
|
79
|
+
1. `paput_search_memo`
|
|
80
|
+
2. `paput_create_note`
|
|
81
|
+
3. `paput_get_note` to verify attached memo IDs
|
|
82
|
+
|
|
83
|
+
Use case: create curated collections from existing PaPut memos.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "paput-mcp",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.5.0",
|
|
4
4
|
"description": "PaPut MCP Server",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -11,7 +11,11 @@
|
|
|
11
11
|
"build": "tsc",
|
|
12
12
|
"test": "vitest run",
|
|
13
13
|
"start": "node dist/index.js",
|
|
14
|
+
"start:http": "node dist/http.js",
|
|
14
15
|
"dev": "ts-node --esm src/index.ts",
|
|
16
|
+
"dev:http": "ts-node --esm src/http.ts",
|
|
17
|
+
"check:http": "ts-node --esm src/check-http.ts",
|
|
18
|
+
"test:mcp:transports": "vitest run src/transport.test.ts",
|
|
15
19
|
"prepare": "npm run build",
|
|
16
20
|
"format": "prettier --write .",
|
|
17
21
|
"type-check": "tsc --noEmit"
|
|
@@ -28,6 +32,7 @@
|
|
|
28
32
|
"homepage": "https://paput.io",
|
|
29
33
|
"files": [
|
|
30
34
|
"dist",
|
|
35
|
+
"docs",
|
|
31
36
|
"README.md",
|
|
32
37
|
"LICENSE.txt"
|
|
33
38
|
],
|