@notionhq/notion-mcp-server 1.2.0 → 1.3.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 CHANGED
@@ -4,11 +4,11 @@
4
4
 
5
5
  This project implements an [MCP server](https://spec.modelcontextprotocol.io/) for the [Notion API](https://developers.notion.com/reference/intro).
6
6
 
7
- ### Installation
7
+ ![mcp-demo](https://github.com/user-attachments/assets/1f82cd82-87e4-4d7c-8b72-486ef1f18663)
8
8
 
9
- Add the following to your `.cursor/mcp.json` or `claude_desktop_config.json` (MacOS: `~/Library/Application Support/Claude/claude_desktop_config.json`)
9
+ ### Installation
10
10
 
11
- Don't forget to add your Bearer token.
11
+ Add the following to your `.cursor/mcp.json` or `claude_desktop_config.json` (MacOS: `~/Library/Application\ Support/Claude/claude_desktop_config.json`)
12
12
 
13
13
  ```javascript
14
14
  {
@@ -24,14 +24,19 @@ Don't forget to add your Bearer token.
24
24
  }
25
25
  ```
26
26
 
27
+ Don't forget to replace `ntn_****` with your integration secret. Find it from your integration configuration tab:
28
+ <img width="918" alt="retrieve-token" src="https://github.com/user-attachments/assets/67b44536-5333-49fa-809c-59581bf5370a" />
29
+
30
+ Ensure relevant pages and databases are connected to your integration.
31
+
27
32
  ### Examples
28
33
 
29
- 1. Using the following command
34
+ 1. Using the following instruction
30
35
  ```
31
36
  Comment "Hello MCP" on page "Getting started"
32
37
  ```
33
38
 
34
- AI will correctly plan two API calls, v1/search and v1/comments, to achieve the task
39
+ AI will correctly plan two API calls, `v1/search` and `v1/comments`, to achieve the task
35
40
 
36
41
  2. Similarly, the following instruction will result in a new page named "Notion MCP" added to parent page "Development"
37
42
  ```
package/package.json CHANGED
@@ -6,7 +6,7 @@
6
6
  "mcp",
7
7
  "server"
8
8
  ],
9
- "version": "1.2.0",
9
+ "version": "1.3.0",
10
10
  "license": "MIT",
11
11
  "type": "module",
12
12
  "scripts": {
@@ -20,17 +20,7 @@
20
20
  "scheme": "basic"
21
21
  }
22
22
  },
23
- "parameters": {
24
- "notionVersion": {
25
- "name": "Notion-Version",
26
- "in": "header",
27
- "required": true,
28
- "schema": {
29
- "enum": ["2022-06-28"]
30
- },
31
- "description": "The [API version](https://developers.notion.com/reference/versioning) to use for this request. The latest version is `2022-06-28`."
32
- }
33
- },
23
+ "parameters": {},
34
24
  "schemas": {}
35
25
  },
36
26
  "security": [
@@ -562,15 +552,6 @@
562
552
  "type": "string"
563
553
  },
564
554
  "required": true
565
- },
566
- {
567
- "name": "Notion-Version",
568
- "in": "header",
569
- "description": "The [API version](/reference/versioning) to use for this request. The latest version is `<<latestNotionVersion>>`.",
570
- "required": true,
571
- "schema": {
572
- "type": "string"
573
- }
574
555
  }
575
556
  ],
576
557
  "requestBody": {
@@ -814,15 +795,6 @@
814
795
  "type": "string"
815
796
  },
816
797
  "required": true
817
- },
818
- {
819
- "name": "Notion-Version",
820
- "in": "header",
821
- "description": "The [API version](/reference/versioning) to use for this request. The latest version is `<<latestNotionVersion>>`.",
822
- "required": true,
823
- "schema": {
824
- "type": "string"
825
- }
826
798
  }
827
799
  ],
828
800
  "requestBody": {
@@ -832,19 +804,85 @@
832
804
  "type": "object",
833
805
  "properties": {
834
806
  "title": {
807
+ "description": "An array of [rich text objects](https://developers.notion.com/reference/rich-text) that represents the title of the database that is displayed in the Notion UI. If omitted, then the database title remains unchanged.",
835
808
  "type": "array",
836
- "description": "An array of [rich text objects](https://developers.notion.com/reference/rich-text) that represents the title of the database that is displayed in the Notion UI. If omitted, then the database title remains unchanged."
809
+ "items": {
810
+ "type": "object",
811
+ "required": ["text"],
812
+ "properties": {
813
+ "text": {
814
+ "type": "object",
815
+ "properties": {
816
+ "content": {
817
+ "type": "string",
818
+ "maxLength": 2000
819
+ },
820
+ "link": {
821
+ "type": ["object", "null"],
822
+ "properties": {
823
+ "url": {
824
+ "type": "string"
825
+ }
826
+ },
827
+ "required": ["url"]
828
+ }
829
+ },
830
+ "additionalProperties": false,
831
+ "required": ["content"]
832
+ },
833
+ "type": {
834
+ "enum": ["text"]
835
+ }
836
+ },
837
+ "additionalProperties": false
838
+ }
837
839
  },
838
840
  "description": {
839
841
  "type": "array",
842
+ "items": {
843
+ "type": "object",
844
+ "required": ["text"],
845
+ "properties": {
846
+ "text": {
847
+ "type": "object",
848
+ "properties": {
849
+ "content": {
850
+ "type": "string",
851
+ "maxLength": 2000
852
+ },
853
+ "link": {
854
+ "type": ["object", "null"],
855
+ "properties": {
856
+ "url": {
857
+ "type": "string"
858
+ }
859
+ },
860
+ "required": ["url"]
861
+ }
862
+ },
863
+ "additionalProperties": false,
864
+ "required": ["content"]
865
+ },
866
+ "type": {
867
+ "enum": ["text"]
868
+ }
869
+ },
870
+ "additionalProperties": false
871
+ },
872
+ "maxItems": 100,
840
873
  "description": "An array of [rich text objects](https://developers.notion.com/reference/rich-text) that represents the description of the database that is displayed in the Notion UI. If omitted, then the database description remains unchanged."
841
874
  },
842
875
  "properties": {
843
- "type": "string",
844
- "description": "The properties of a database to be changed in the request, in the form of a JSON object. If updating an existing property, then the keys are the names or IDs of the properties as they appear in Notion, and the values are [property schema objects](ref:property-schema-object). If adding a new property, then the key is the name of the new database property and the value is a [property schema object](ref:property-schema-object).",
845
- "format": "json"
876
+ "type": "object",
877
+ "description": "Property schema of database. The keys are the names of properties as they appear in Notion and the values are [property schema objects](https://developers.notion.com/reference/property-schema-object).",
878
+ "properties": {
879
+ "name": {
880
+ "type": "string"
881
+ }
882
+ }
846
883
  }
847
- }
884
+ },
885
+ "additionalProperties": false
848
886
  }
849
887
  }
850
888
  }