@atikk-co-jp/notion-mcp-server 0.5.0 → 0.6.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.ja.md +14 -3
- package/README.md +14 -3
- package/dist/src/notion-client.d.ts +2 -0
- package/dist/src/notion-client.d.ts.map +1 -1
- package/dist/src/tools/update-database.d.ts.map +1 -1
- package/dist/src/tools/update-database.js +6 -2
- package/dist/src/tools/update-page.d.ts.map +1 -1
- package/dist/src/tools/update-page.js +8 -3
- package/package.json +1 -1
package/README.ja.md
CHANGED
|
@@ -196,7 +196,15 @@ Markdownを使ってページを作成します。`create-page`と比較して**
|
|
|
196
196
|
|
|
197
197
|
### update-page
|
|
198
198
|
|
|
199
|
-
|
|
199
|
+
ページのプロパティ、アイコン、カバー、アーカイブ状態、ロック状態を更新します。
|
|
200
|
+
|
|
201
|
+
**パラメータ:**
|
|
202
|
+
- `page_id` (必須): 更新するページのID
|
|
203
|
+
- `properties` (任意): 更新するプロパティ
|
|
204
|
+
- `icon` (任意): アイコン(nullで削除)
|
|
205
|
+
- `cover` (任意): カバー画像(nullで削除)
|
|
206
|
+
- `archived` (任意): trueでアーカイブ
|
|
207
|
+
- `is_locked` (任意): ページをロックしてUI上での編集を防止
|
|
200
208
|
|
|
201
209
|
```json
|
|
202
210
|
{
|
|
@@ -205,7 +213,8 @@ Markdownを使ってページを作成します。`create-page`と比較して**
|
|
|
205
213
|
"Status": {
|
|
206
214
|
"status": { "name": "完了" }
|
|
207
215
|
}
|
|
208
|
-
}
|
|
216
|
+
},
|
|
217
|
+
"is_locked": true
|
|
209
218
|
}
|
|
210
219
|
```
|
|
211
220
|
|
|
@@ -275,11 +284,13 @@ Markdownを使ってページを作成します。`create-page`と比較して**
|
|
|
275
284
|
- `cover` (任意): カバー画像(nullで削除)
|
|
276
285
|
- `is_inline` (任意): trueの場合、インラインデータベースとして作成
|
|
277
286
|
- `archived` (任意): trueでアーカイブ
|
|
287
|
+
- `is_locked` (任意): データベースをロックしてUI上での編集を防止
|
|
278
288
|
|
|
279
289
|
```json
|
|
280
290
|
{
|
|
281
291
|
"database_id": "データベースのUUID",
|
|
282
|
-
"title": [{ "type": "text", "text": { "content": "新しいタイトル" } }]
|
|
292
|
+
"title": [{ "type": "text", "text": { "content": "新しいタイトル" } }],
|
|
293
|
+
"is_locked": true
|
|
283
294
|
}
|
|
284
295
|
```
|
|
285
296
|
|
package/README.md
CHANGED
|
@@ -196,7 +196,15 @@ Create a new page using Markdown. **~80% fewer output tokens** compared to `crea
|
|
|
196
196
|
|
|
197
197
|
### update-page
|
|
198
198
|
|
|
199
|
-
Update a page's properties.
|
|
199
|
+
Update a page's properties, icon, cover, archive status, or lock status.
|
|
200
|
+
|
|
201
|
+
**Parameters:**
|
|
202
|
+
- `page_id` (required): The ID of the page to update
|
|
203
|
+
- `properties` (optional): Properties to update
|
|
204
|
+
- `icon` (optional): Icon (set to null to remove)
|
|
205
|
+
- `cover` (optional): Cover image (set to null to remove)
|
|
206
|
+
- `archived` (optional): Set to true to archive
|
|
207
|
+
- `is_locked` (optional): Lock the page to prevent edits in the UI
|
|
200
208
|
|
|
201
209
|
```json
|
|
202
210
|
{
|
|
@@ -205,7 +213,8 @@ Update a page's properties.
|
|
|
205
213
|
"Status": {
|
|
206
214
|
"status": { "name": "Done" }
|
|
207
215
|
}
|
|
208
|
-
}
|
|
216
|
+
},
|
|
217
|
+
"is_locked": true
|
|
209
218
|
}
|
|
210
219
|
```
|
|
211
220
|
|
|
@@ -275,11 +284,13 @@ Update an existing database container (title, description, icon, cover).
|
|
|
275
284
|
- `cover` (optional): Cover image (set to null to remove)
|
|
276
285
|
- `is_inline` (optional): If true, creates an inline database
|
|
277
286
|
- `archived` (optional): Set to true to archive
|
|
287
|
+
- `is_locked` (optional): Lock the database to prevent edits in the UI
|
|
278
288
|
|
|
279
289
|
```json
|
|
280
290
|
{
|
|
281
291
|
"database_id": "database-uuid-here",
|
|
282
|
-
"title": [{ "type": "text", "text": { "content": "New Title" } }]
|
|
292
|
+
"title": [{ "type": "text", "text": { "content": "New Title" } }],
|
|
293
|
+
"is_locked": true
|
|
283
294
|
}
|
|
284
295
|
```
|
|
285
296
|
|
|
@@ -52,6 +52,7 @@ export declare class NotionClient {
|
|
|
52
52
|
archived?: boolean;
|
|
53
53
|
icon?: Icon | null;
|
|
54
54
|
cover?: Cover | null;
|
|
55
|
+
is_locked?: boolean;
|
|
55
56
|
}) => Promise<T>;
|
|
56
57
|
retrieveProperty: <T>(params: {
|
|
57
58
|
page_id: string;
|
|
@@ -110,6 +111,7 @@ export declare class NotionClient {
|
|
|
110
111
|
cover?: Cover | null;
|
|
111
112
|
is_inline?: boolean;
|
|
112
113
|
archived?: boolean;
|
|
114
|
+
is_locked?: boolean;
|
|
113
115
|
}) => Promise<T>;
|
|
114
116
|
};
|
|
115
117
|
blocks: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"notion-client.d.ts","sourceRoot":"","sources":["../../src/notion-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAC5B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAA;AAClF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AACrE,OAAO,KAAK,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AACnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAA;AAM5D,KAAK,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAA;AAC9C,KAAK,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAA;AACtC,KAAK,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,WAAW,CAAC,CAAA;AACxC,KAAK,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AACxD,KAAK,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAA;AAClE,KAAK,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAA;AAC1C,KAAK,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAA;AAEtC,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,oBAAoB;IACnC,MAAM,CAAC,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAA;IAC5C,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC,CAAA;CACpD;AAED,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,OAAO,CAAA;IACf,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAAQ;gBAET,OAAO,EAAE,mBAAmB;YAI1B,OAAO;IAwCrB,KAAK;iBACM,CAAC,UAAU;YAClB,MAAM,EAAE;gBAAE,WAAW,EAAE,MAAM,CAAA;aAAE,GAAG;gBAAE,OAAO,EAAE,MAAM,CAAA;aAAE,GAAG;gBAAE,cAAc,EAAE,MAAM,CAAA;aAAE,CAAA;YAClF,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;YACzC,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAA;YAClB,IAAI,CAAC,EAAE,IAAI,CAAA;YACX,KAAK,CAAC,EAAE,KAAK,CAAA;SACd,KAAG,OAAO,CAAC,CAAC,CAAC;mBAcH,CAAC,UAAU;YAAE,OAAO,EAAE,MAAM,CAAA;SAAE,KAAG,OAAO,CAAC,CAAC,CAAC;iBAI7C,CAAC,UAAU;YAClB,OAAO,EAAE,MAAM,CAAA;YACf,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;YAC1C,QAAQ,CAAC,EAAE,OAAO,CAAA;YAClB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAA;YAClB,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"notion-client.d.ts","sourceRoot":"","sources":["../../src/notion-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-database.d.ts","sourceRoot":"","sources":["../../../src/tools/update-database.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAExE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"update-database.d.ts","sourceRoot":"","sources":["../../../src/tools/update-database.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAExE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAgBvD,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI,CA4DpF"}
|
|
@@ -10,13 +10,14 @@ const inputSchema = {
|
|
|
10
10
|
cover: z.any().optional().describe('Cover (null to remove)'),
|
|
11
11
|
is_inline: z.boolean().optional().describe('Inline database'),
|
|
12
12
|
archived: z.boolean().optional().describe('Archive status'),
|
|
13
|
+
is_locked: z.boolean().optional().describe('Lock the database to prevent edits in the UI. Set to true to lock, false to unlock.'),
|
|
13
14
|
};
|
|
14
15
|
export function registerUpdateDatabase(server, notion) {
|
|
15
16
|
server.registerTool('update-database', {
|
|
16
|
-
description: 'Update a Notion database container. Can modify title, description, icon, cover, inline status, and
|
|
17
|
+
description: 'Update a Notion database container. Can modify title, description, icon, cover, inline status, archive status, and lock status. ' +
|
|
17
18
|
'For schema (properties/columns) updates, use update-data-source instead. (API version 2025-09-03)',
|
|
18
19
|
inputSchema,
|
|
19
|
-
}, async ({ database_id, title, description, icon, cover, is_inline, archived }) => {
|
|
20
|
+
}, async ({ database_id, title, description, icon, cover, is_inline, archived, is_locked }) => {
|
|
20
21
|
try {
|
|
21
22
|
const params = {
|
|
22
23
|
database_id,
|
|
@@ -39,6 +40,9 @@ export function registerUpdateDatabase(server, notion) {
|
|
|
39
40
|
if (archived !== undefined) {
|
|
40
41
|
params.archived = archived;
|
|
41
42
|
}
|
|
43
|
+
if (is_locked !== undefined) {
|
|
44
|
+
params.is_locked = is_locked;
|
|
45
|
+
}
|
|
42
46
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
43
47
|
const response = await notion.databases.update(params);
|
|
44
48
|
return formatResponse(response);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update-page.d.ts","sourceRoot":"","sources":["../../../src/tools/update-page.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAExE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"update-page.d.ts","sourceRoot":"","sources":["../../../src/tools/update-page.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAA;AAExE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAkBvD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI,CAkDhF"}
|
|
@@ -7,15 +7,17 @@ const inputSchema = {
|
|
|
7
7
|
archived: z.boolean().optional().describe('Archive the page'),
|
|
8
8
|
icon: z.any().optional().describe('Page icon { type: "emoji", emoji: "📝" } or { type: "external", external: { url: "..." } }, or null to remove. Emoji must be an actual emoji character.'),
|
|
9
9
|
cover: z.any().optional().describe('Cover image (null to remove)'),
|
|
10
|
+
is_locked: z.boolean().optional().describe('Lock the page to prevent edits in the UI. Set to true to lock, false to unlock.'),
|
|
10
11
|
};
|
|
11
12
|
export function registerUpdatePage(server, notion) {
|
|
12
13
|
server.registerTool('update-page', {
|
|
13
|
-
description: "Update a Notion page's properties, icon, cover, or
|
|
14
|
+
description: "Update a Notion page's properties, icon, cover, archive status, or lock status. " +
|
|
14
15
|
'Partial updates are supported - only provide the fields you want to change. ' +
|
|
15
16
|
'Set icon or cover to null to remove them. ' +
|
|
16
|
-
'Set archived to true to move the page to trash.'
|
|
17
|
+
'Set archived to true to move the page to trash. ' +
|
|
18
|
+
'Set is_locked to true to lock the page in the UI.',
|
|
17
19
|
inputSchema,
|
|
18
|
-
}, async ({ page_id, properties, archived, icon, cover }) => {
|
|
20
|
+
}, async ({ page_id, properties, archived, icon, cover, is_locked }) => {
|
|
19
21
|
try {
|
|
20
22
|
const params = { page_id };
|
|
21
23
|
if (properties !== undefined) {
|
|
@@ -30,6 +32,9 @@ export function registerUpdatePage(server, notion) {
|
|
|
30
32
|
if (cover !== undefined) {
|
|
31
33
|
params.cover = cover;
|
|
32
34
|
}
|
|
35
|
+
if (is_locked !== undefined) {
|
|
36
|
+
params.is_locked = is_locked;
|
|
37
|
+
}
|
|
33
38
|
const response = await notion.pages.update(params);
|
|
34
39
|
return formatResponse(response);
|
|
35
40
|
}
|