@n24q02m/better-notion-mcp 1.0.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 (69) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +240 -0
  3. package/bin/cli.mjs +117 -0
  4. package/build/scripts/start-server.d.ts +6 -0
  5. package/build/scripts/start-server.d.ts.map +1 -0
  6. package/build/scripts/start-server.js +21 -0
  7. package/build/scripts/start-server.js.map +1 -0
  8. package/build/src/init-server.d.ts +29 -0
  9. package/build/src/init-server.d.ts.map +1 -0
  10. package/build/src/init-server.js +32 -0
  11. package/build/src/init-server.js.map +1 -0
  12. package/build/src/tools/composite/blocks.d.ts +16 -0
  13. package/build/src/tools/composite/blocks.d.ts.map +1 -0
  14. package/build/src/tools/composite/blocks.js +104 -0
  15. package/build/src/tools/composite/blocks.js.map +1 -0
  16. package/build/src/tools/composite/comments.d.ts +16 -0
  17. package/build/src/tools/composite/comments.d.ts.map +1 -0
  18. package/build/src/tools/composite/comments.js +69 -0
  19. package/build/src/tools/composite/comments.js.map +1 -0
  20. package/build/src/tools/composite/content.d.ts +13 -0
  21. package/build/src/tools/composite/content.d.ts.map +1 -0
  22. package/build/src/tools/composite/content.js +50 -0
  23. package/build/src/tools/composite/content.js.map +1 -0
  24. package/build/src/tools/composite/databases.d.ts +33 -0
  25. package/build/src/tools/composite/databases.d.ts.map +1 -0
  26. package/build/src/tools/composite/databases.js +419 -0
  27. package/build/src/tools/composite/databases.js.map +1 -0
  28. package/build/src/tools/composite/pages.d.ts +24 -0
  29. package/build/src/tools/composite/pages.d.ts.map +1 -0
  30. package/build/src/tools/composite/pages.js +316 -0
  31. package/build/src/tools/composite/pages.js.map +1 -0
  32. package/build/src/tools/composite/search.d.ts +23 -0
  33. package/build/src/tools/composite/search.d.ts.map +1 -0
  34. package/build/src/tools/composite/search.js +94 -0
  35. package/build/src/tools/composite/search.js.map +1 -0
  36. package/build/src/tools/composite/users.d.ts +15 -0
  37. package/build/src/tools/composite/users.d.ts.map +1 -0
  38. package/build/src/tools/composite/users.js +93 -0
  39. package/build/src/tools/composite/users.js.map +1 -0
  40. package/build/src/tools/composite/workspace.d.ts +25 -0
  41. package/build/src/tools/composite/workspace.d.ts.map +1 -0
  42. package/build/src/tools/composite/workspace.js +72 -0
  43. package/build/src/tools/composite/workspace.js.map +1 -0
  44. package/build/src/tools/helpers/errors.d.ts +43 -0
  45. package/build/src/tools/helpers/errors.d.ts.map +1 -0
  46. package/build/src/tools/helpers/errors.js +162 -0
  47. package/build/src/tools/helpers/errors.js.map +1 -0
  48. package/build/src/tools/helpers/markdown.d.ts +45 -0
  49. package/build/src/tools/helpers/markdown.d.ts.map +1 -0
  50. package/build/src/tools/helpers/markdown.js +320 -0
  51. package/build/src/tools/helpers/markdown.js.map +1 -0
  52. package/build/src/tools/helpers/pagination.d.ts +42 -0
  53. package/build/src/tools/helpers/pagination.d.ts.map +1 -0
  54. package/build/src/tools/helpers/pagination.js +72 -0
  55. package/build/src/tools/helpers/pagination.js.map +1 -0
  56. package/build/src/tools/helpers/properties.d.ts +10 -0
  57. package/build/src/tools/helpers/properties.d.ts.map +1 -0
  58. package/build/src/tools/helpers/properties.js +57 -0
  59. package/build/src/tools/helpers/properties.js.map +1 -0
  60. package/build/src/tools/helpers/richtext.d.ts +85 -0
  61. package/build/src/tools/helpers/richtext.d.ts.map +1 -0
  62. package/build/src/tools/helpers/richtext.js +146 -0
  63. package/build/src/tools/helpers/richtext.js.map +1 -0
  64. package/build/src/tools/registry.d.ts +10 -0
  65. package/build/src/tools/registry.d.ts.map +1 -0
  66. package/build/src/tools/registry.js +342 -0
  67. package/build/src/tools/registry.js.map +1 -0
  68. package/build/tsconfig.tsbuildinfo +1 -0
  69. package/package.json +71 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdown.js","sourceRoot":"","sources":["../../../../src/tools/helpers/markdown.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * Pagination Helper
3
+ * Auto-handles paginated Notion API responses
4
+ */
5
+ export interface PaginatedResponse<T> {
6
+ results: T[];
7
+ next_cursor: string | null;
8
+ has_more: boolean;
9
+ }
10
+ export interface PaginationOptions {
11
+ maxPages?: number;
12
+ pageSize?: number;
13
+ }
14
+ /**
15
+ * Fetch all pages automatically
16
+ */
17
+ export declare function autoPaginate<T>(fetchFn: (cursor?: string, pageSize?: number) => Promise<PaginatedResponse<T>>, options?: PaginationOptions): Promise<T[]>;
18
+ /**
19
+ * Fetch single page with cursor
20
+ */
21
+ export declare function fetchPage<T>(fetchFn: (cursor?: string, pageSize?: number) => Promise<PaginatedResponse<T>>, cursor?: string, pageSize?: number): Promise<PaginatedResponse<T>>;
22
+ /**
23
+ * Create cursor handler for manual pagination
24
+ */
25
+ export declare function createCursorHandler<T>(): {
26
+ getCursor: () => string | null;
27
+ setCursor: (cursor: string | null) => void;
28
+ reset: () => void;
29
+ hasMore: () => boolean;
30
+ };
31
+ /**
32
+ * Batch items into chunks
33
+ */
34
+ export declare function batchItems<T>(items: T[], batchSize: number): T[][];
35
+ /**
36
+ * Process items in batches with concurrency limit
37
+ */
38
+ export declare function processBatches<T, R>(items: T[], processFn: (item: T) => Promise<R>, options?: {
39
+ batchSize?: number;
40
+ concurrency?: number;
41
+ }): Promise<R[]>;
42
+ //# sourceMappingURL=pagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../../../src/tools/helpers/pagination.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,OAAO,EAAE,CAAC,EAAE,CAAA;IACZ,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,QAAQ,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,CAAC,EAClC,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAC9E,OAAO,GAAE,iBAAsB,GAC9B,OAAO,CAAC,CAAC,EAAE,CAAC,CAmBd;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,CAAC,EAC/B,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAC9E,MAAM,CAAC,EAAE,MAAM,EACf,QAAQ,GAAE,MAAY,GACrB,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAE/B;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,CAAC;;wBAKb,MAAM,GAAG,IAAI;;;EAQpC;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,CAAC,EAAE,EAAE,CAMlE;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,CAAC,EAAE,CAAC,EACvC,KAAK,EAAE,CAAC,EAAE,EACV,SAAS,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,EAClC,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAO,GACzD,OAAO,CAAC,CAAC,EAAE,CAAC,CAed"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * Pagination Helper
3
+ * Auto-handles paginated Notion API responses
4
+ */
5
+ /**
6
+ * Fetch all pages automatically
7
+ */
8
+ export async function autoPaginate(fetchFn, options = {}) {
9
+ const { maxPages = 0, pageSize = 100 } = options;
10
+ const allResults = [];
11
+ let cursor = null;
12
+ let pageCount = 0;
13
+ do {
14
+ const response = await fetchFn(cursor || undefined, pageSize);
15
+ allResults.push(...response.results);
16
+ cursor = response.next_cursor;
17
+ pageCount++;
18
+ // Stop if max pages reached
19
+ if (maxPages > 0 && pageCount >= maxPages) {
20
+ break;
21
+ }
22
+ } while (cursor !== null);
23
+ return allResults;
24
+ }
25
+ /**
26
+ * Fetch single page with cursor
27
+ */
28
+ export async function fetchPage(fetchFn, cursor, pageSize = 100) {
29
+ return await fetchFn(cursor, pageSize);
30
+ }
31
+ /**
32
+ * Create cursor handler for manual pagination
33
+ */
34
+ export function createCursorHandler() {
35
+ let currentCursor = null;
36
+ return {
37
+ getCursor: () => currentCursor,
38
+ setCursor: (cursor) => {
39
+ currentCursor = cursor;
40
+ },
41
+ reset: () => {
42
+ currentCursor = null;
43
+ },
44
+ hasMore: () => currentCursor !== null
45
+ };
46
+ }
47
+ /**
48
+ * Batch items into chunks
49
+ */
50
+ export function batchItems(items, batchSize) {
51
+ const batches = [];
52
+ for (let i = 0; i < items.length; i += batchSize) {
53
+ batches.push(items.slice(i, i + batchSize));
54
+ }
55
+ return batches;
56
+ }
57
+ /**
58
+ * Process items in batches with concurrency limit
59
+ */
60
+ export async function processBatches(items, processFn, options = {}) {
61
+ const { batchSize = 10, concurrency = 3 } = options;
62
+ const batches = batchItems(items, batchSize);
63
+ const results = [];
64
+ for (let i = 0; i < batches.length; i += concurrency) {
65
+ const currentBatches = batches.slice(i, i + concurrency);
66
+ const batchPromises = currentBatches.map(batch => Promise.all(batch.map(processFn)));
67
+ const batchResults = await Promise.all(batchPromises);
68
+ results.push(...batchResults.flat());
69
+ }
70
+ return results;
71
+ }
72
+ //# sourceMappingURL=pagination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../../../src/tools/helpers/pagination.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Property Helpers
3
+ * Convert between human-friendly and Notion API formats
4
+ */
5
+ /**
6
+ * Convert simple property values to Notion API format
7
+ * Handles auto-detection of property types and conversion
8
+ */
9
+ export declare function convertToNotionProperties(properties: Record<string, any>): Record<string, any>;
10
+ //# sourceMappingURL=properties.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"properties.d.ts","sourceRoot":"","sources":["../../../../src/tools/helpers/properties.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;GAGG;AACH,wBAAgB,yBAAyB,CACvC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC9B,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CA2CrB"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Property Helpers
3
+ * Convert between human-friendly and Notion API formats
4
+ */
5
+ import * as RichText from './richtext.js';
6
+ /**
7
+ * Convert simple property values to Notion API format
8
+ * Handles auto-detection of property types and conversion
9
+ */
10
+ export function convertToNotionProperties(properties) {
11
+ const converted = {};
12
+ for (const [key, value] of Object.entries(properties)) {
13
+ if (value === null || value === undefined) {
14
+ converted[key] = value;
15
+ continue;
16
+ }
17
+ // Auto-detect property type and convert
18
+ if (typeof value === 'string') {
19
+ // Title properties
20
+ if (key === 'Name' || key === 'Title' || key.toLowerCase() === 'title') {
21
+ converted[key] = { title: [RichText.text(value)] };
22
+ }
23
+ // All other strings default to select
24
+ // Note: User can override by passing Notion format directly
25
+ else {
26
+ converted[key] = { select: { name: value } };
27
+ }
28
+ }
29
+ else if (typeof value === 'number') {
30
+ converted[key] = { number: value };
31
+ }
32
+ else if (typeof value === 'boolean') {
33
+ converted[key] = { checkbox: value };
34
+ }
35
+ else if (Array.isArray(value)) {
36
+ // Could be multi_select, relation, people, files
37
+ if (value.length > 0 && typeof value[0] === 'string') {
38
+ // Assume multi_select
39
+ converted[key] = {
40
+ multi_select: value.map(v => ({ name: v }))
41
+ };
42
+ }
43
+ else {
44
+ converted[key] = value;
45
+ }
46
+ }
47
+ else if (typeof value === 'object') {
48
+ // Already in Notion format or date/complex object
49
+ converted[key] = value;
50
+ }
51
+ else {
52
+ converted[key] = value;
53
+ }
54
+ }
55
+ return converted;
56
+ }
57
+ //# sourceMappingURL=properties.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"properties.js","sourceRoot":"","sources":["../../../../src/tools/helpers/properties.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAA;AAEzC;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CACvC,UAA+B;IAE/B,MAAM,SAAS,GAAwB,EAAE,CAAA;IAEzC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;QACtD,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YAC1C,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;YACtB,SAAQ;QACV,CAAC;QAED,wCAAwC;QACxC,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YAC9B,mBAAmB;YACnB,IAAI,GAAG,KAAK,MAAM,IAAI,GAAG,KAAK,OAAO,IAAI,GAAG,CAAC,WAAW,EAAE,KAAK,OAAO,EAAE,CAAC;gBACvE,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAA;YACpD,CAAC;YACD,sCAAsC;YACtC,4DAA4D;iBACvD,CAAC;gBACJ,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAA;YAC9C,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACrC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;QACpC,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,SAAS,EAAE,CAAC;YACtC,SAAS,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAA;QACtC,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,iDAAiD;YACjD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;gBACrD,sBAAsB;gBACtB,SAAS,CAAC,GAAG,CAAC,GAAG;oBACf,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;iBAC5C,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;YACxB,CAAC;QACH,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,EAAE,CAAC;YACrC,kDAAkD;YAClD,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;QACxB,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;QACxB,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC"}
@@ -0,0 +1,85 @@
1
+ /**
2
+ * Rich Text Utilities
3
+ * Helpers for working with Notion's rich text format
4
+ */
5
+ export interface RichTextItem {
6
+ type: 'text';
7
+ text: {
8
+ content: string;
9
+ link?: {
10
+ url: string;
11
+ } | null;
12
+ };
13
+ annotations: {
14
+ bold: boolean;
15
+ italic: boolean;
16
+ strikethrough: boolean;
17
+ underline: boolean;
18
+ code: boolean;
19
+ color: string;
20
+ };
21
+ plain_text?: string;
22
+ href?: string | null;
23
+ }
24
+ export type Color = 'default' | 'gray' | 'brown' | 'orange' | 'yellow' | 'green' | 'blue' | 'purple' | 'pink' | 'red';
25
+ /**
26
+ * Create simple rich text
27
+ */
28
+ export declare function text(content: string): RichTextItem;
29
+ /**
30
+ * Create bold text
31
+ */
32
+ export declare function bold(content: string): RichTextItem;
33
+ /**
34
+ * Create italic text
35
+ */
36
+ export declare function italic(content: string): RichTextItem;
37
+ /**
38
+ * Create code text
39
+ */
40
+ export declare function code(content: string): RichTextItem;
41
+ /**
42
+ * Create link text
43
+ */
44
+ export declare function link(content: string, url: string): RichTextItem;
45
+ /**
46
+ * Create colored text
47
+ */
48
+ export declare function colored(content: string, color: Color): RichTextItem;
49
+ /**
50
+ * Apply multiple formatting styles
51
+ */
52
+ export declare function formatText(content: string, options?: {
53
+ bold?: boolean;
54
+ italic?: boolean;
55
+ code?: boolean;
56
+ strikethrough?: boolean;
57
+ underline?: boolean;
58
+ color?: Color;
59
+ link?: string;
60
+ }): RichTextItem;
61
+ /**
62
+ * Extract plain text from rich text array
63
+ */
64
+ export declare function extractPlainText(richText: RichTextItem[]): string;
65
+ /**
66
+ * Split text into chunks (max 2000 chars per rich text item)
67
+ */
68
+ export declare function splitText(content: string, maxLength?: number): RichTextItem[];
69
+ /**
70
+ * Merge multiple rich text items
71
+ */
72
+ export declare function mergeRichText(...items: RichTextItem[]): RichTextItem[];
73
+ /**
74
+ * Convert string array to rich text
75
+ */
76
+ export declare function fromStrings(strings: string[]): RichTextItem[];
77
+ /**
78
+ * Check if rich text is empty
79
+ */
80
+ export declare function isEmpty(richText: RichTextItem[]): boolean;
81
+ /**
82
+ * Truncate rich text to max length
83
+ */
84
+ export declare function truncate(richText: RichTextItem[], maxLength: number): RichTextItem[];
85
+ //# sourceMappingURL=richtext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"richtext.d.ts","sourceRoot":"","sources":["../../../../src/tools/helpers/richtext.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE;QACJ,OAAO,EAAE,MAAM,CAAA;QACf,IAAI,CAAC,EAAE;YAAE,GAAG,EAAE,MAAM,CAAA;SAAE,GAAG,IAAI,CAAA;KAC9B,CAAA;IACD,WAAW,EAAE;QACX,IAAI,EAAE,OAAO,CAAA;QACb,MAAM,EAAE,OAAO,CAAA;QACf,aAAa,EAAE,OAAO,CAAA;QACtB,SAAS,EAAE,OAAO,CAAA;QAClB,IAAI,EAAE,OAAO,CAAA;QACb,KAAK,EAAE,MAAM,CAAA;KACd,CAAA;IACD,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACrB;AAED,MAAM,MAAM,KAAK,GACb,SAAS,GACT,MAAM,GACN,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,OAAO,GACP,MAAM,GACN,QAAQ,GACR,MAAM,GACN,KAAK,CAAA;AAET;;GAEG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAalD;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAKlD;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAKpD;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,YAAY,CAKlD;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,YAAY,CAa/D;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,YAAY,CAKnE;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;IACP,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CACT,GACL,YAAY,CAgBd;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,MAAM,CAEjE;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,GAAE,MAAa,GAAG,YAAY,EAAE,CAenF;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,KAAK,EAAE,YAAY,EAAE,GAAG,YAAY,EAAE,CAEtE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,CAE7D;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,OAAO,CAEzD;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,YAAY,EAAE,EAAE,SAAS,EAAE,MAAM,GAAG,YAAY,EAAE,CAQpF"}
@@ -0,0 +1,146 @@
1
+ /**
2
+ * Rich Text Utilities
3
+ * Helpers for working with Notion's rich text format
4
+ */
5
+ /**
6
+ * Create simple rich text
7
+ */
8
+ export function text(content) {
9
+ return {
10
+ type: 'text',
11
+ text: { content, link: null },
12
+ annotations: {
13
+ bold: false,
14
+ italic: false,
15
+ strikethrough: false,
16
+ underline: false,
17
+ code: false,
18
+ color: 'default'
19
+ }
20
+ };
21
+ }
22
+ /**
23
+ * Create bold text
24
+ */
25
+ export function bold(content) {
26
+ return {
27
+ ...text(content),
28
+ annotations: { ...text(content).annotations, bold: true }
29
+ };
30
+ }
31
+ /**
32
+ * Create italic text
33
+ */
34
+ export function italic(content) {
35
+ return {
36
+ ...text(content),
37
+ annotations: { ...text(content).annotations, italic: true }
38
+ };
39
+ }
40
+ /**
41
+ * Create code text
42
+ */
43
+ export function code(content) {
44
+ return {
45
+ ...text(content),
46
+ annotations: { ...text(content).annotations, code: true }
47
+ };
48
+ }
49
+ /**
50
+ * Create link text
51
+ */
52
+ export function link(content, url) {
53
+ return {
54
+ type: 'text',
55
+ text: { content, link: { url } },
56
+ annotations: {
57
+ bold: false,
58
+ italic: false,
59
+ strikethrough: false,
60
+ underline: false,
61
+ code: false,
62
+ color: 'default'
63
+ }
64
+ };
65
+ }
66
+ /**
67
+ * Create colored text
68
+ */
69
+ export function colored(content, color) {
70
+ return {
71
+ ...text(content),
72
+ annotations: { ...text(content).annotations, color }
73
+ };
74
+ }
75
+ /**
76
+ * Apply multiple formatting styles
77
+ */
78
+ export function formatText(content, options = {}) {
79
+ return {
80
+ type: 'text',
81
+ text: {
82
+ content,
83
+ link: options.link ? { url: options.link } : null
84
+ },
85
+ annotations: {
86
+ bold: options.bold || false,
87
+ italic: options.italic || false,
88
+ strikethrough: options.strikethrough || false,
89
+ underline: options.underline || false,
90
+ code: options.code || false,
91
+ color: options.color || 'default'
92
+ }
93
+ };
94
+ }
95
+ /**
96
+ * Extract plain text from rich text array
97
+ */
98
+ export function extractPlainText(richText) {
99
+ return richText.map(rt => rt.text.content).join('');
100
+ }
101
+ /**
102
+ * Split text into chunks (max 2000 chars per rich text item)
103
+ */
104
+ export function splitText(content, maxLength = 2000) {
105
+ if (content.length <= maxLength) {
106
+ return [text(content)];
107
+ }
108
+ const chunks = [];
109
+ let remaining = content;
110
+ while (remaining.length > 0) {
111
+ const chunk = remaining.slice(0, maxLength);
112
+ chunks.push(text(chunk));
113
+ remaining = remaining.slice(maxLength);
114
+ }
115
+ return chunks;
116
+ }
117
+ /**
118
+ * Merge multiple rich text items
119
+ */
120
+ export function mergeRichText(...items) {
121
+ return items.flat();
122
+ }
123
+ /**
124
+ * Convert string array to rich text
125
+ */
126
+ export function fromStrings(strings) {
127
+ return strings.map(s => text(s));
128
+ }
129
+ /**
130
+ * Check if rich text is empty
131
+ */
132
+ export function isEmpty(richText) {
133
+ return richText.length === 0 || extractPlainText(richText).trim().length === 0;
134
+ }
135
+ /**
136
+ * Truncate rich text to max length
137
+ */
138
+ export function truncate(richText, maxLength) {
139
+ const plainText = extractPlainText(richText);
140
+ if (plainText.length <= maxLength) {
141
+ return richText;
142
+ }
143
+ const truncated = plainText.slice(0, maxLength - 3) + '...';
144
+ return [text(truncated)];
145
+ }
146
+ //# sourceMappingURL=richtext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"richtext.js","sourceRoot":"","sources":["../../../../src/tools/helpers/richtext.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Tool Registry - 7 Mega Tools
3
+ * Consolidated registration for maximum coverage with minimal tools
4
+ */
5
+ import { Server } from '@modelcontextprotocol/sdk/server/index.js';
6
+ /**
7
+ * Register all tools with MCP server
8
+ */
9
+ export declare function registerTools(server: Server, notionToken: string): void;
10
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/tools/registry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAA;AA+QlE;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,QAgFhE"}