@zakstam/convex-docs-mcp 1.0.0 → 1.1.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.
@@ -1,5 +1,5 @@
1
1
  import { z } from "zod";
2
- import { getAllTopics, filterTopicsBySection, DOCS_BASE_URL, } from "../utils/sitemap.js";
2
+ import { getAllTopicsAsync, filterTopicsBySectionAsync, DOCS_BASE_URL, } from "../utils/sitemap.js";
3
3
  export const listTopicsSchema = z.object({
4
4
  section: z
5
5
  .string()
@@ -23,10 +23,10 @@ function formatTopic(topic) {
23
23
  export async function listTopics(input) {
24
24
  let topics;
25
25
  if (input.section) {
26
- topics = filterTopicsBySection(input.section);
26
+ topics = await filterTopicsBySectionAsync(input.section);
27
27
  }
28
28
  else {
29
- topics = getAllTopics();
29
+ topics = await getAllTopicsAsync();
30
30
  }
31
31
  const formattedTopics = topics.map(formatTopic);
32
32
  // Count total topics including nested ones
@@ -1 +1 @@
1
- {"version":3,"file":"listTopics.js","sourceRoot":"","sources":["../../src/tools/listTopics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,YAAY,EACZ,qBAAqB,EACrB,aAAa,GACd,MAAM,qBAAqB,CAAC;AAE7B,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,+DAA+D,CAAC;CAC7E,CAAC,CAAC;AAYH,SAAS,WAAW,CAAC,KAAe;IAClC,MAAM,IAAI,GAAkB;QAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,GAAG,EAAE,GAAG,aAAa,IAAI,KAAK,CAAC,IAAI,EAAE;KACtC,CAAC;IAEF,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;IACvC,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChD,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,KAAsB;IAEtB,IAAI,MAAkB,CAAC;IAEvB,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAClB,MAAM,GAAG,qBAAqB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,YAAY,EAAE,CAAC;IAC1B,CAAC;IAED,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAEhD,2CAA2C;IAC3C,SAAS,WAAW,CAAC,KAAsB;QACzC,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;QACzB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,KAAK,IAAI,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO;QACL,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,WAAW,CAAC,eAAe,CAAC;KACzC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"listTopics.js","sourceRoot":"","sources":["../../src/tools/listTopics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EACL,iBAAiB,EACjB,0BAA0B,EAC1B,aAAa,GACd,MAAM,qBAAqB,CAAC;AAE7B,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,+DAA+D,CAAC;CAC7E,CAAC,CAAC;AAYH,SAAS,WAAW,CAAC,KAAe;IAClC,MAAM,IAAI,GAAkB;QAC1B,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,GAAG,EAAE,GAAG,aAAa,IAAI,KAAK,CAAC,IAAI,EAAE;KACtC,CAAC;IAEF,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;QACtB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;IACvC,CAAC;IAED,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChD,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAClD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,KAAsB;IAEtB,IAAI,MAAkB,CAAC;IAEvB,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAClB,MAAM,GAAG,MAAM,0BAA0B,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3D,CAAC;SAAM,CAAC;QACN,MAAM,GAAG,MAAM,iBAAiB,EAAE,CAAC;IACrC,CAAC;IAED,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAEhD,2CAA2C;IAC3C,SAAS,WAAW,CAAC,KAAsB;QACzC,IAAI,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC;QACzB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBAClB,KAAK,IAAI,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACtC,CAAC;QACH,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO;QACL,MAAM,EAAE,eAAe;QACvB,UAAU,EAAE,WAAW,CAAC,eAAe,CAAC;KACzC,CAAC;AACJ,CAAC"}
@@ -1,12 +1,12 @@
1
1
  import { z } from "zod";
2
- import { searchTopics, DOCS_BASE_URL } from "../utils/sitemap.js";
2
+ import { searchTopicsAsync, DOCS_BASE_URL } from "../utils/sitemap.js";
3
3
  export const searchSchema = z.object({
4
4
  query: z.string().describe("Search query to find relevant Convex documentation"),
5
5
  });
6
6
  export async function search(input) {
7
7
  const { query } = input;
8
- // Search through the local topic index
9
- const matchingTopics = searchTopics(query);
8
+ // Search through the dynamic topic index (with static fallback)
9
+ const matchingTopics = await searchTopicsAsync(query);
10
10
  // Score and format results
11
11
  const results = matchingTopics.map((topic) => {
12
12
  let score = 0;
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAElE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;CACjF,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,KAAkB;IAI7C,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IAExB,uCAAuC;IACvC,MAAM,cAAc,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;IAE3C,2BAA2B;IAC3B,MAAM,OAAO,GAAmB,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QAC3D,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QAE1D,iCAAiC;QACjC,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;YAC9B,KAAK,IAAI,GAAG,CAAC;QACf,CAAC;aAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3C,KAAK,IAAI,EAAE,CAAC;QACd,CAAC;QAED,yBAAyB;QACzB,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACnC,KAAK,IAAI,EAAE,CAAC;QACd,CAAC;QAED,gCAAgC;QAChC,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACnC,KAAK,IAAI,EAAE,CAAC;QACd,CAAC;QAED,2BAA2B;QAC3B,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3C,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpB,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAAE,KAAK,IAAI,EAAE,CAAC;gBAC3C,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAAE,KAAK,IAAI,CAAC,CAAC;gBACzC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAAE,KAAK,IAAI,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QAED,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,GAAG,EAAE,GAAG,aAAa,IAAI,KAAK,CAAC,IAAI,EAAE;YACrC,OAAO,EAAE,KAAK,CAAC,WAAW,IAAI,uBAAuB,KAAK,CAAC,KAAK,EAAE;YAClE,KAAK;SACN,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,2BAA2B;IAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAE1C,0BAA0B;IAC1B,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAExC,OAAO;QACL,OAAO,EAAE,UAAU;QACnB,KAAK;KACN,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/tools/search.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEvE,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;CACjF,CAAC,CAAC;AAIH,MAAM,CAAC,KAAK,UAAU,MAAM,CAAC,KAAkB;IAI7C,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;IAExB,gEAAgE;IAChE,MAAM,cAAc,GAAG,MAAM,iBAAiB,CAAC,KAAK,CAAC,CAAC;IAEtD,2BAA2B;IAC3B,MAAM,OAAO,GAAmB,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QAC3D,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,UAAU,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;QAC7C,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QAE1D,iCAAiC;QACjC,IAAI,UAAU,KAAK,UAAU,EAAE,CAAC;YAC9B,KAAK,IAAI,GAAG,CAAC;QACf,CAAC;aAAM,IAAI,UAAU,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3C,KAAK,IAAI,EAAE,CAAC;QACd,CAAC;QAED,yBAAyB;QACzB,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACnC,KAAK,IAAI,EAAE,CAAC;QACd,CAAC;QAED,gCAAgC;QAChC,IAAI,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YACnC,KAAK,IAAI,EAAE,CAAC;QACd,CAAC;QAED,2BAA2B;QAC3B,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3C,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;YAC9B,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpB,IAAI,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAAE,KAAK,IAAI,EAAE,CAAC;gBAC3C,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAAE,KAAK,IAAI,CAAC,CAAC;gBACzC,IAAI,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC;oBAAE,KAAK,IAAI,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QAED,OAAO;YACL,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,GAAG,EAAE,GAAG,aAAa,IAAI,KAAK,CAAC,IAAI,EAAE;YACrC,OAAO,EAAE,KAAK,CAAC,WAAW,IAAI,uBAAuB,KAAK,CAAC,KAAK,EAAE;YAClE,KAAK;SACN,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,2BAA2B;IAC3B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;IAE1C,0BAA0B;IAC1B,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IAExC,OAAO;QACL,OAAO,EAAE,UAAU;QACnB,KAAK;KACN,CAAC;AACJ,CAAC"}
@@ -0,0 +1,23 @@
1
+ import type { DocTopic } from "../types.js";
2
+ export declare const DOCS_BASE_URL = "https://docs.convex.dev";
3
+ /**
4
+ * Get all topics, using cache if available and not expired
5
+ */
6
+ export declare function getDynamicTopics(): Promise<DocTopic[]>;
7
+ /**
8
+ * Get flattened topics for search
9
+ */
10
+ export declare function getFlatDynamicTopics(): Promise<DocTopic[]>;
11
+ /**
12
+ * Search topics by query using fuzzy matching
13
+ */
14
+ export declare function searchDynamicTopics(query: string): Promise<DocTopic[]>;
15
+ /**
16
+ * Filter topics by section
17
+ */
18
+ export declare function filterDynamicTopicsBySection(section: string): Promise<DocTopic[]>;
19
+ /**
20
+ * Clear the cache (useful for testing)
21
+ */
22
+ export declare function clearCache(): void;
23
+ //# sourceMappingURL=dynamicSitemap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamicSitemap.d.ts","sourceRoot":"","sources":["../../src/utils/dynamicSitemap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAI5C,eAAO,MAAM,aAAa,4BAA4B,CAAC;AAoNvD;;GAEG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CAoB5D;AAED;;GAEG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CAoBhE;AAgBD;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAQ5E;AAED;;GAEG;AACH,wBAAsB,4BAA4B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CASvF;AAED;;GAEG;AACH,wBAAgB,UAAU,IAAI,IAAI,CAKjC"}
@@ -0,0 +1,269 @@
1
+ import Fuse from "fuse.js";
2
+ import titlesData from "../data/titles.json" with { type: "json" };
3
+ export const DOCS_BASE_URL = "https://docs.convex.dev";
4
+ const SITEMAP_URL = `${DOCS_BASE_URL}/sitemap.xml`;
5
+ // Cache configuration
6
+ const CACHE_TTL_MS = 60 * 60 * 1000; // 1 hour
7
+ let cachedTopics = null;
8
+ let cachedFlatTopics = null;
9
+ let cachedFuseIndex = null;
10
+ let lastFetchTime = 0;
11
+ // Fuse.js configuration for fuzzy search
12
+ const fuseOptions = {
13
+ keys: [
14
+ { name: "title", weight: 0.5 },
15
+ { name: "description", weight: 0.3 },
16
+ { name: "path", weight: 0.2 },
17
+ ],
18
+ threshold: 0.4, // 0 = exact match, 1 = match anything
19
+ ignoreLocation: true, // Don't care where in the string the match is
20
+ includeScore: true,
21
+ minMatchCharLength: 2,
22
+ useExtendedSearch: true,
23
+ };
24
+ const titlesMap = new Map(titlesData.titles.map((entry) => [entry.path, entry]));
25
+ /**
26
+ * Get title for a path from pre-fetched data, or generate from path
27
+ */
28
+ function getTitleForPath(path) {
29
+ const entry = titlesMap.get(path);
30
+ if (entry) {
31
+ return entry.title;
32
+ }
33
+ // Fallback: convert path to title
34
+ const lastSegment = path.split("/").pop() || path;
35
+ return lastSegment
36
+ .split("-")
37
+ .map((word) => word.charAt(0).toUpperCase() + word.slice(1))
38
+ .join(" ");
39
+ }
40
+ /**
41
+ * Get description for a path from pre-fetched data, or generate from path
42
+ */
43
+ function getDescriptionForPath(path) {
44
+ const entry = titlesMap.get(path);
45
+ if (entry?.description) {
46
+ return entry.description;
47
+ }
48
+ // Fallback: generate description from title and section
49
+ const title = getTitleForPath(path);
50
+ const parts = path.split("/");
51
+ if (parts.length === 1) {
52
+ return `Convex ${title} documentation`;
53
+ }
54
+ const section = getTitleForPath(parts[0]);
55
+ return `${title} - ${section}`;
56
+ }
57
+ /**
58
+ * Parse sitemap XML and extract URLs
59
+ */
60
+ function parseSitemapXml(xml) {
61
+ const urls = [];
62
+ // Simple regex-based XML parsing (no external dependencies)
63
+ const locRegex = /<loc>([^<]+)<\/loc>/g;
64
+ let match;
65
+ while ((match = locRegex.exec(xml)) !== null) {
66
+ urls.push(match[1]);
67
+ }
68
+ return urls;
69
+ }
70
+ /**
71
+ * Convert URLs to flat DocTopic array
72
+ */
73
+ function urlsToFlatTopics(urls) {
74
+ const topics = [];
75
+ const seenPaths = new Set();
76
+ for (const url of urls) {
77
+ // Extract path from URL
78
+ const path = url.replace(DOCS_BASE_URL + "/", "").replace(/\/$/, "");
79
+ // Skip empty paths, anchors, and duplicates
80
+ if (!path || path.includes("#") || seenPaths.has(path)) {
81
+ continue;
82
+ }
83
+ seenPaths.add(path);
84
+ topics.push({
85
+ title: getTitleForPath(path),
86
+ path,
87
+ description: getDescriptionForPath(path),
88
+ });
89
+ }
90
+ return topics;
91
+ }
92
+ /**
93
+ * Build hierarchical topic structure from flat topics
94
+ */
95
+ function buildTopicHierarchy(flatTopics) {
96
+ const topLevelTopics = new Map();
97
+ const childrenMap = new Map();
98
+ // Sort topics by path depth (parents first)
99
+ const sortedTopics = [...flatTopics].sort((a, b) => a.path.split("/").length - b.path.split("/").length);
100
+ for (const topic of sortedTopics) {
101
+ const parts = topic.path.split("/");
102
+ if (parts.length === 1) {
103
+ // Top-level topic
104
+ topLevelTopics.set(topic.path, { ...topic, children: [] });
105
+ }
106
+ else {
107
+ // Child topic - find parent
108
+ const parentPath = parts.slice(0, -1).join("/");
109
+ if (!childrenMap.has(parentPath)) {
110
+ childrenMap.set(parentPath, []);
111
+ }
112
+ childrenMap.get(parentPath).push(topic);
113
+ }
114
+ }
115
+ // Attach children to parents
116
+ for (const [parentPath, children] of childrenMap) {
117
+ const parent = topLevelTopics.get(parentPath);
118
+ if (parent) {
119
+ parent.children = children;
120
+ }
121
+ else {
122
+ // Parent doesn't exist as top-level, might be nested
123
+ // For simplicity, add orphaned children as top-level with their parent path prefix
124
+ for (const child of children) {
125
+ const topLevel = child.path.split("/")[0];
126
+ if (topLevelTopics.has(topLevel)) {
127
+ const topParent = topLevelTopics.get(topLevel);
128
+ if (!topParent.children) {
129
+ topParent.children = [];
130
+ }
131
+ topParent.children.push(child);
132
+ }
133
+ else {
134
+ // Create a top-level entry for orphaned topics
135
+ topLevelTopics.set(child.path, child);
136
+ }
137
+ }
138
+ }
139
+ }
140
+ // Sort topics alphabetically, but put common sections first
141
+ const priorityOrder = [
142
+ "get-started",
143
+ "tutorial",
144
+ "quickstarts",
145
+ "functions",
146
+ "database",
147
+ "auth",
148
+ "file-storage",
149
+ "scheduling",
150
+ "search",
151
+ "ai",
152
+ "agents",
153
+ "client",
154
+ "production",
155
+ "cli",
156
+ "api",
157
+ ];
158
+ const topicsArray = Array.from(topLevelTopics.values());
159
+ topicsArray.sort((a, b) => {
160
+ const aIndex = priorityOrder.indexOf(a.path);
161
+ const bIndex = priorityOrder.indexOf(b.path);
162
+ if (aIndex !== -1 && bIndex !== -1)
163
+ return aIndex - bIndex;
164
+ if (aIndex !== -1)
165
+ return -1;
166
+ if (bIndex !== -1)
167
+ return 1;
168
+ return a.title.localeCompare(b.title);
169
+ });
170
+ return topicsArray;
171
+ }
172
+ /**
173
+ * Fetch and parse the sitemap from docs.convex.dev
174
+ */
175
+ async function fetchSitemap() {
176
+ const response = await fetch(SITEMAP_URL);
177
+ if (!response.ok) {
178
+ throw new Error(`Failed to fetch sitemap: ${response.status}`);
179
+ }
180
+ const xml = await response.text();
181
+ const urls = parseSitemapXml(xml);
182
+ const flatTopics = urlsToFlatTopics(urls);
183
+ const hierarchicalTopics = buildTopicHierarchy(flatTopics);
184
+ return hierarchicalTopics;
185
+ }
186
+ /**
187
+ * Get all topics, using cache if available and not expired
188
+ */
189
+ export async function getDynamicTopics() {
190
+ const now = Date.now();
191
+ if (cachedTopics && now - lastFetchTime < CACHE_TTL_MS) {
192
+ return cachedTopics;
193
+ }
194
+ try {
195
+ cachedTopics = await fetchSitemap();
196
+ cachedFlatTopics = null; // Invalidate flat cache
197
+ lastFetchTime = now;
198
+ return cachedTopics;
199
+ }
200
+ catch (error) {
201
+ // If we have cached data, return it even if expired
202
+ if (cachedTopics) {
203
+ console.error("Failed to refresh sitemap, using cached data:", error);
204
+ return cachedTopics;
205
+ }
206
+ throw error;
207
+ }
208
+ }
209
+ /**
210
+ * Get flattened topics for search
211
+ */
212
+ export async function getFlatDynamicTopics() {
213
+ if (cachedFlatTopics && cachedTopics && Date.now() - lastFetchTime < CACHE_TTL_MS) {
214
+ return cachedFlatTopics;
215
+ }
216
+ const topics = await getDynamicTopics();
217
+ function flatten(items) {
218
+ const result = [];
219
+ for (const item of items) {
220
+ result.push({ title: item.title, path: item.path, description: item.description });
221
+ if (item.children) {
222
+ result.push(...flatten(item.children));
223
+ }
224
+ }
225
+ return result;
226
+ }
227
+ cachedFlatTopics = flatten(topics);
228
+ return cachedFlatTopics;
229
+ }
230
+ /**
231
+ * Get or create Fuse index for fuzzy search
232
+ */
233
+ async function getFuseIndex() {
234
+ const allTopics = await getFlatDynamicTopics();
235
+ // Rebuild index if topics changed
236
+ if (!cachedFuseIndex || cachedFlatTopics !== allTopics) {
237
+ cachedFuseIndex = new Fuse(allTopics, fuseOptions);
238
+ }
239
+ return cachedFuseIndex;
240
+ }
241
+ /**
242
+ * Search topics by query using fuzzy matching
243
+ */
244
+ export async function searchDynamicTopics(query) {
245
+ const fuse = await getFuseIndex();
246
+ // Perform fuzzy search
247
+ const results = fuse.search(query);
248
+ // Return topics sorted by relevance (best matches first)
249
+ return results.map((result) => result.item);
250
+ }
251
+ /**
252
+ * Filter topics by section
253
+ */
254
+ export async function filterDynamicTopicsBySection(section) {
255
+ const normalizedSection = section.toLowerCase().replace(/[\s-]+/g, "-");
256
+ const topics = await getDynamicTopics();
257
+ return topics.filter((topic) => topic.path.toLowerCase().includes(normalizedSection) ||
258
+ topic.title.toLowerCase().replace(/[\s]+/g, "-").includes(normalizedSection));
259
+ }
260
+ /**
261
+ * Clear the cache (useful for testing)
262
+ */
263
+ export function clearCache() {
264
+ cachedTopics = null;
265
+ cachedFlatTopics = null;
266
+ cachedFuseIndex = null;
267
+ lastFetchTime = 0;
268
+ }
269
+ //# sourceMappingURL=dynamicSitemap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamicSitemap.js","sourceRoot":"","sources":["../../src/utils/dynamicSitemap.ts"],"names":[],"mappings":"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"}
@@ -6,4 +6,20 @@ export declare function getTopicByPath(path: string): DocTopic | undefined;
6
6
  export declare function filterTopicsBySection(section: string): DocTopic[];
7
7
  export declare function flattenTopics(topics?: DocTopic[]): DocTopic[];
8
8
  export declare function searchTopics(query: string): DocTopic[];
9
+ /**
10
+ * Get all topics - tries dynamic sitemap first, falls back to static
11
+ */
12
+ export declare function getAllTopicsAsync(): Promise<DocTopic[]>;
13
+ /**
14
+ * Get flattened topics - tries dynamic sitemap first, falls back to static
15
+ */
16
+ export declare function flattenTopicsAsync(): Promise<DocTopic[]>;
17
+ /**
18
+ * Search topics - tries dynamic sitemap first, falls back to static
19
+ */
20
+ export declare function searchTopicsAsync(query: string): Promise<DocTopic[]>;
21
+ /**
22
+ * Filter topics by section - tries dynamic sitemap first, falls back to static
23
+ */
24
+ export declare function filterTopicsBySectionAsync(section: string): Promise<DocTopic[]>;
9
25
  //# sourceMappingURL=sitemap.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap.d.ts","sourceRoot":"","sources":["../../src/utils/sitemap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,eAAO,MAAM,aAAa,4BAA4B,CAAC;AAEvD,eAAO,MAAM,WAAW,EAAE,QAAQ,EAmJjC,CAAC;AAEF,wBAAgB,YAAY,IAAI,QAAQ,EAAE,CAEzC;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAiBjE;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ,EAAE,CAQjE;AAED,wBAAgB,aAAa,CAAC,MAAM,GAAE,QAAQ,EAAgB,GAAG,QAAQ,EAAE,CAc1E;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE,CAUtD"}
1
+ {"version":3,"file":"sitemap.d.ts","sourceRoot":"","sources":["../../src/utils/sitemap.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAS5C,eAAO,MAAM,aAAa,4BAAmB,CAAC;AAE9C,eAAO,MAAM,WAAW,EAAE,QAAQ,EA6KjC,CAAC;AAEF,wBAAgB,YAAY,IAAI,QAAQ,EAAE,CAEzC;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,SAAS,CAiBjE;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,QAAQ,EAAE,CAQjE;AAED,wBAAgB,aAAa,CAAC,MAAM,GAAE,QAAQ,EAAgB,GAAG,QAAQ,EAAE,CAc1E;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE,CAUtD;AAMD;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CAO7D;AAED;;GAEG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC,CAO9D;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAO1E;AAED;;GAEG;AACH,wBAAsB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAOrF"}
@@ -1,4 +1,5 @@
1
- export const DOCS_BASE_URL = "https://docs.convex.dev";
1
+ import { getDynamicTopics, getFlatDynamicTopics, searchDynamicTopics, filterDynamicTopicsBySection, DOCS_BASE_URL as DYNAMIC_BASE_URL, } from "./dynamicSitemap.js";
2
+ export const DOCS_BASE_URL = DYNAMIC_BASE_URL;
2
3
  export const docsSitemap = [
3
4
  {
4
5
  title: "Get Started",
@@ -103,6 +104,31 @@ export const docsSitemap = [
103
104
  description: "AI and LLM integration",
104
105
  children: [
105
106
  { title: "Overview", path: "ai", description: "AI features in Convex" },
107
+ { title: "Using Cursor", path: "ai/using-cursor", description: "Convex AI rules for Cursor IDE" },
108
+ { title: "Using Windsurf", path: "ai/using-windsurf", description: "Convex AI rules for Windsurf IDE" },
109
+ { title: "Using GitHub Copilot", path: "ai/using-github-copilot", description: "Convex instructions for GitHub Copilot" },
110
+ { title: "Convex MCP Server", path: "ai/convex-mcp-server", description: "MCP server for AI coding agents" },
111
+ ],
112
+ },
113
+ {
114
+ title: "AI Agents",
115
+ path: "agents",
116
+ description: "Building AI agents with Convex",
117
+ children: [
118
+ { title: "Overview", path: "agents", description: "Building AI agents with Convex" },
119
+ { title: "Getting Started", path: "agents/getting-started", description: "Build your first AI agent" },
120
+ { title: "Tools", path: "agents/tools", description: "Agent tools and function calling" },
121
+ { title: "Threads", path: "agents/threads", description: "Managing conversation threads" },
122
+ { title: "Messages", path: "agents/messages", description: "Working with messages in threads" },
123
+ { title: "Human Agents", path: "agents/human-agents", description: "Human-in-the-loop agents" },
124
+ { title: "Context", path: "agents/context", description: "Conversation context management" },
125
+ { title: "Workflows", path: "agents/workflows", description: "Multi-step agent workflows" },
126
+ { title: "RAG", path: "agents/rag", description: "Retrieval-augmented generation" },
127
+ { title: "Files", path: "agents/files", description: "File handling in agent conversations" },
128
+ { title: "Debugging", path: "agents/debugging", description: "Debugging AI agents" },
129
+ { title: "Playground", path: "agents/playground", description: "Agent playground for testing" },
130
+ { title: "Usage Tracking", path: "agents/usage-tracking", description: "Track agent usage and billing" },
131
+ { title: "Rate Limiting", path: "agents/rate-limiting", description: "Rate limiting agent interactions" },
106
132
  ],
107
133
  },
108
134
  {
@@ -136,6 +162,7 @@ export const docsSitemap = [
136
162
  description: "Convex CLI reference",
137
163
  children: [
138
164
  { title: "Overview", path: "cli", description: "Convex CLI introduction" },
165
+ { title: "Agent Mode", path: "cli/agent-mode", description: "CLI agent mode for background AI agents" },
139
166
  ],
140
167
  },
141
168
  {
@@ -192,4 +219,55 @@ export function searchTopics(query) {
192
219
  topic.path.toLowerCase().includes(normalizedQuery) ||
193
220
  (topic.description && topic.description.toLowerCase().includes(normalizedQuery)));
194
221
  }
222
+ // =============================================================================
223
+ // Async versions with dynamic sitemap (with static fallback)
224
+ // =============================================================================
225
+ /**
226
+ * Get all topics - tries dynamic sitemap first, falls back to static
227
+ */
228
+ export async function getAllTopicsAsync() {
229
+ try {
230
+ return await getDynamicTopics();
231
+ }
232
+ catch (error) {
233
+ console.error("Failed to fetch dynamic sitemap, using static fallback:", error);
234
+ return docsSitemap;
235
+ }
236
+ }
237
+ /**
238
+ * Get flattened topics - tries dynamic sitemap first, falls back to static
239
+ */
240
+ export async function flattenTopicsAsync() {
241
+ try {
242
+ return await getFlatDynamicTopics();
243
+ }
244
+ catch (error) {
245
+ console.error("Failed to fetch dynamic sitemap, using static fallback:", error);
246
+ return flattenTopics();
247
+ }
248
+ }
249
+ /**
250
+ * Search topics - tries dynamic sitemap first, falls back to static
251
+ */
252
+ export async function searchTopicsAsync(query) {
253
+ try {
254
+ return await searchDynamicTopics(query);
255
+ }
256
+ catch (error) {
257
+ console.error("Failed to search dynamic sitemap, using static fallback:", error);
258
+ return searchTopics(query);
259
+ }
260
+ }
261
+ /**
262
+ * Filter topics by section - tries dynamic sitemap first, falls back to static
263
+ */
264
+ export async function filterTopicsBySectionAsync(section) {
265
+ try {
266
+ return await filterDynamicTopicsBySection(section);
267
+ }
268
+ catch (error) {
269
+ console.error("Failed to filter dynamic sitemap, using static fallback:", error);
270
+ return filterTopicsBySection(section);
271
+ }
272
+ }
195
273
  //# sourceMappingURL=sitemap.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sitemap.js","sourceRoot":"","sources":["../../src/utils/sitemap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sitemap.js","sourceRoot":"","sources":["../../src/utils/sitemap.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zakstam/convex-docs-mcp",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
4
  "description": "MCP server providing access to Convex documentation",
5
5
  "main": "build/index.js",
6
6
  "type": "module",
@@ -23,6 +23,7 @@
23
23
  "build": "tsc",
24
24
  "start": "node build/index.js",
25
25
  "dev": "tsc --watch",
26
+ "fetch-titles": "tsx scripts/fetch-titles.ts",
26
27
  "prepare": "husky"
27
28
  },
28
29
  "keywords": [
@@ -34,6 +35,7 @@
34
35
  "license": "MIT",
35
36
  "dependencies": {
36
37
  "@modelcontextprotocol/sdk": "^1.0.0",
38
+ "fuse.js": "^7.1.0",
37
39
  "turndown": "^7.1.0",
38
40
  "zod": "^3.23.0"
39
41
  },
@@ -50,6 +52,7 @@
50
52
  "@types/turndown": "^5.0.0",
51
53
  "husky": "^9.1.7",
52
54
  "semantic-release": "^25.0.2",
55
+ "tsx": "^4.21.0",
53
56
  "typescript": "^5.0.0"
54
57
  }
55
58
  }