@himanshu31shr/linkedin-mcp-server 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 (79) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +71 -0
  3. package/dist/index.d.ts +3 -0
  4. package/dist/index.d.ts.map +1 -0
  5. package/dist/index.js +17 -0
  6. package/dist/index.js.map +1 -0
  7. package/dist/schemas/analytics.d.ts +56 -0
  8. package/dist/schemas/analytics.d.ts.map +1 -0
  9. package/dist/schemas/analytics.js +41 -0
  10. package/dist/schemas/analytics.js.map +1 -0
  11. package/dist/schemas/media.d.ts +60 -0
  12. package/dist/schemas/media.d.ts.map +1 -0
  13. package/dist/schemas/media.js +31 -0
  14. package/dist/schemas/media.js.map +1 -0
  15. package/dist/schemas/organization.d.ts +74 -0
  16. package/dist/schemas/organization.d.ts.map +1 -0
  17. package/dist/schemas/organization.js +77 -0
  18. package/dist/schemas/organization.js.map +1 -0
  19. package/dist/schemas/posts.d.ts +51 -0
  20. package/dist/schemas/posts.d.ts.map +1 -0
  21. package/dist/schemas/posts.js +28 -0
  22. package/dist/schemas/posts.js.map +1 -0
  23. package/dist/schemas/profile.d.ts +30 -0
  24. package/dist/schemas/profile.d.ts.map +1 -0
  25. package/dist/schemas/profile.js +12 -0
  26. package/dist/schemas/profile.js.map +1 -0
  27. package/dist/schemas/social-actions.d.ts +78 -0
  28. package/dist/schemas/social-actions.d.ts.map +1 -0
  29. package/dist/schemas/social-actions.js +80 -0
  30. package/dist/schemas/social-actions.js.map +1 -0
  31. package/dist/server.d.ts +10 -0
  32. package/dist/server.d.ts.map +1 -0
  33. package/dist/server.js +29 -0
  34. package/dist/server.js.map +1 -0
  35. package/dist/services/linkedin-client.d.ts +55 -0
  36. package/dist/services/linkedin-client.d.ts.map +1 -0
  37. package/dist/services/linkedin-client.js +148 -0
  38. package/dist/services/linkedin-client.js.map +1 -0
  39. package/dist/tools/index.d.ts +7 -0
  40. package/dist/tools/index.d.ts.map +1 -0
  41. package/dist/tools/index.js +7 -0
  42. package/dist/tools/index.js.map +1 -0
  43. package/dist/tools/media.d.ts +30 -0
  44. package/dist/tools/media.d.ts.map +1 -0
  45. package/dist/tools/media.js +198 -0
  46. package/dist/tools/media.js.map +1 -0
  47. package/dist/tools/org-analytics.d.ts +7 -0
  48. package/dist/tools/org-analytics.d.ts.map +1 -0
  49. package/dist/tools/org-analytics.js +92 -0
  50. package/dist/tools/org-analytics.js.map +1 -0
  51. package/dist/tools/organization.d.ts +7 -0
  52. package/dist/tools/organization.d.ts.map +1 -0
  53. package/dist/tools/organization.js +134 -0
  54. package/dist/tools/organization.js.map +1 -0
  55. package/dist/tools/posts.d.ts +30 -0
  56. package/dist/tools/posts.d.ts.map +1 -0
  57. package/dist/tools/posts.js +127 -0
  58. package/dist/tools/posts.js.map +1 -0
  59. package/dist/tools/profile.d.ts +22 -0
  60. package/dist/tools/profile.d.ts.map +1 -0
  61. package/dist/tools/profile.js +63 -0
  62. package/dist/tools/profile.js.map +1 -0
  63. package/dist/tools/social-actions.d.ts +7 -0
  64. package/dist/tools/social-actions.d.ts.map +1 -0
  65. package/dist/tools/social-actions.js +158 -0
  66. package/dist/tools/social-actions.js.map +1 -0
  67. package/dist/utils/errors.d.ts +35 -0
  68. package/dist/utils/errors.d.ts.map +1 -0
  69. package/dist/utils/errors.js +59 -0
  70. package/dist/utils/errors.js.map +1 -0
  71. package/dist/utils/logger.d.ts +13 -0
  72. package/dist/utils/logger.d.ts.map +1 -0
  73. package/dist/utils/logger.js +19 -0
  74. package/dist/utils/logger.js.map +1 -0
  75. package/dist/utils/urns.d.ts +43 -0
  76. package/dist/utils/urns.d.ts.map +1 -0
  77. package/dist/utils/urns.js +59 -0
  78. package/dist/utils/urns.js.map +1 -0
  79. package/package.json +63 -0
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Himanshu Shrivastava
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,71 @@
1
+ # LinkedIn MCP Server
2
+
3
+ A Model Context Protocol (MCP) server that provides AI agents with read/write access to the LinkedIn API.
4
+
5
+ ## Features
6
+ - **Profile Tools**: Fetch user profile and email.
7
+ - **Post Tools**: Create text, link, image, and document posts. Delete posts.
8
+ - **Media Tools**: Upload images and documents to LinkedIn.
9
+ - **Organization Tools**: Fetch organization details, post on behalf of an organization, fetch and delete org posts.
10
+ - **Social Action Tools**: Fetch, create, and delete comments on posts. Add or remove reactions (like, celebrate, etc.).
11
+ - **Organization Analytics Tools**: Get organization page, follower, and share statistics.
12
+
13
+ ## Setup
14
+
15
+ 1. **Install dependencies**:
16
+ ```bash
17
+ npm install
18
+ ```
19
+
20
+ 2. **Build the project**:
21
+ ```bash
22
+ npm run build
23
+ ```
24
+
25
+ 3. **Get a LinkedIn Access Token**:
26
+ - Create an app on the [LinkedIn Developer Portal](https://developer.linkedin.com/).
27
+ - Go to the **Auth** tab and add `http://localhost:3000/callback` to the **Authorized redirect URLs**.
28
+ - Run the automated OAuth flow:
29
+ ```bash
30
+ npm run auth
31
+ ```
32
+ - Follow the prompts in the terminal. This will automatically open a browser window for you to log in and authorize the app, then it will save your new `LINKEDIN_ACCESS_TOKEN` directly into the `.env` file!
33
+
34
+ ## Usage as a Local MCP Server
35
+
36
+ To use this server locally with an AI agent (like Claude Desktop, Cursor, or Antigravity), you need to configure the IDE to spawn the MCP server process.
37
+
38
+ ### Claude Desktop Configuration
39
+
40
+ Add the following to your `claude_desktop_config.json`:
41
+
42
+ ```json
43
+ {
44
+ "mcpServers": {
45
+ "linkedin": {
46
+ "command": "node",
47
+ "args": ["/path/to/linkedin-mcp-server/dist/index.js"],
48
+ "env": {
49
+ "LINKEDIN_ACCESS_TOKEN": "your-linkedin-access-token"
50
+ }
51
+ }
52
+ }
53
+ }
54
+ ```
55
+
56
+ ### Cursor Configuration
57
+
58
+ In Cursor's Settings > AI > MCP Servers, add a new server:
59
+ - **Type**: `command`
60
+ - **Name**: `linkedin`
61
+ - **Command**: `node /path/to/linkedin-mcp-server/dist/index.js`
62
+ - **Environment Variables**: Add `LINKEDIN_ACCESS_TOKEN` with your token.
63
+
64
+ ## Development
65
+
66
+ - `npm run build`: Compile TypeScript to JavaScript.
67
+ - `npm run watch`: Compile in watch mode.
68
+ - `npm test`: Run tests with Vitest.
69
+ - `npm run test:ui`: Run tests with UI.
70
+ - `npm run lint`: Run ESLint.
71
+ - `npm run format`: Run Prettier.
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env node
2
+ import 'dotenv/config';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,eAAe,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,17 @@
1
+ #!/usr/bin/env node
2
+ import 'dotenv/config';
3
+ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
4
+ import { createServer } from './server.js';
5
+ import { logger } from './utils/logger.js';
6
+ async function main() {
7
+ logger.info('CAVEMAN: Starting LinkedIn MCP Server...');
8
+ const server = createServer();
9
+ const transport = new StdioServerTransport();
10
+ await server.connect(transport);
11
+ logger.info('CAVEMAN: LinkedIn MCP Server is running on stdio');
12
+ }
13
+ main().catch((error) => {
14
+ logger.fatal({ error }, 'CAVEMAN: Failed to start server');
15
+ process.exit(1);
16
+ });
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,KAAK,UAAU,IAAI;IACjB,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAC;IAExD,MAAM,MAAM,GAAG,YAAY,EAAE,CAAC;IAC9B,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEhC,MAAM,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;AAClE,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,MAAM,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,EAAE,iCAAiC,CAAC,CAAC;IAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -0,0 +1,56 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Schema for get_org_page_statistics tool.
4
+ */
5
+ export declare const GetOrgPageStatisticsSchema: z.ZodObject<{
6
+ organizationId: z.ZodString;
7
+ timeRange: z.ZodOptional<z.ZodObject<{
8
+ start: z.ZodNumber;
9
+ end: z.ZodNumber;
10
+ }, "strip", z.ZodTypeAny, {
11
+ start: number;
12
+ end: number;
13
+ }, {
14
+ start: number;
15
+ end: number;
16
+ }>>;
17
+ }, "strip", z.ZodTypeAny, {
18
+ organizationId: string;
19
+ timeRange?: {
20
+ start: number;
21
+ end: number;
22
+ } | undefined;
23
+ }, {
24
+ organizationId: string;
25
+ timeRange?: {
26
+ start: number;
27
+ end: number;
28
+ } | undefined;
29
+ }>;
30
+ export type GetOrgPageStatisticsInput = z.infer<typeof GetOrgPageStatisticsSchema>;
31
+ /**
32
+ * Schema for get_org_follower_statistics tool.
33
+ */
34
+ export declare const GetOrgFollowerStatisticsSchema: z.ZodObject<{
35
+ organizationId: z.ZodString;
36
+ }, "strip", z.ZodTypeAny, {
37
+ organizationId: string;
38
+ }, {
39
+ organizationId: string;
40
+ }>;
41
+ export type GetOrgFollowerStatisticsInput = z.infer<typeof GetOrgFollowerStatisticsSchema>;
42
+ /**
43
+ * Schema for get_org_share_statistics tool.
44
+ */
45
+ export declare const GetOrgShareStatisticsSchema: z.ZodObject<{
46
+ organizationId: z.ZodString;
47
+ shareUrns: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
48
+ }, "strip", z.ZodTypeAny, {
49
+ organizationId: string;
50
+ shareUrns?: string[] | undefined;
51
+ }, {
52
+ organizationId: string;
53
+ shareUrns?: string[] | undefined;
54
+ }>;
55
+ export type GetOrgShareStatisticsInput = z.infer<typeof GetOrgShareStatisticsSchema>;
56
+ //# sourceMappingURL=analytics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../src/schemas/analytics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;EAerC,CAAC;AAEH,MAAM,MAAM,yBAAyB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAEnF;;GAEG;AACH,eAAO,MAAM,8BAA8B;;;;;;EAIzC,CAAC;AAEH,MAAM,MAAM,6BAA6B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,8BAA8B,CAAC,CAAC;AAE3F;;GAEG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;EAQtC,CAAC;AAEH,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC"}
@@ -0,0 +1,41 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Schema for get_org_page_statistics tool.
4
+ */
5
+ export const GetOrgPageStatisticsSchema = z.object({
6
+ organizationId: z
7
+ .string()
8
+ .describe('The numeric ID of the organization'),
9
+ timeRange: z
10
+ .object({
11
+ start: z
12
+ .number()
13
+ .describe('Start timestamp in milliseconds since epoch'),
14
+ end: z
15
+ .number()
16
+ .describe('End timestamp in milliseconds since epoch'),
17
+ })
18
+ .optional()
19
+ .describe('Optional time range filter for the statistics'),
20
+ });
21
+ /**
22
+ * Schema for get_org_follower_statistics tool.
23
+ */
24
+ export const GetOrgFollowerStatisticsSchema = z.object({
25
+ organizationId: z
26
+ .string()
27
+ .describe('The numeric ID of the organization'),
28
+ });
29
+ /**
30
+ * Schema for get_org_share_statistics tool.
31
+ */
32
+ export const GetOrgShareStatisticsSchema = z.object({
33
+ organizationId: z
34
+ .string()
35
+ .describe('The numeric ID of the organization'),
36
+ shareUrns: z
37
+ .array(z.string())
38
+ .optional()
39
+ .describe('Optional list of share URNs to filter statistics by'),
40
+ });
41
+ //# sourceMappingURL=analytics.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../src/schemas/analytics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,cAAc,EAAE,CAAC;SACd,MAAM,EAAE;SACR,QAAQ,CAAC,oCAAoC,CAAC;IACjD,SAAS,EAAE,CAAC;SACT,MAAM,CAAC;QACN,KAAK,EAAE,CAAC;aACL,MAAM,EAAE;aACR,QAAQ,CAAC,6CAA6C,CAAC;QAC1D,GAAG,EAAE,CAAC;aACH,MAAM,EAAE;aACR,QAAQ,CAAC,2CAA2C,CAAC;KACzD,CAAC;SACD,QAAQ,EAAE;SACV,QAAQ,CAAC,+CAA+C,CAAC;CAC7D,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,cAAc,EAAE,CAAC;SACd,MAAM,EAAE;SACR,QAAQ,CAAC,oCAAoC,CAAC;CAClD,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,cAAc,EAAE,CAAC;SACd,MAAM,EAAE;SACR,QAAQ,CAAC,oCAAoC,CAAC;IACjD,SAAS,EAAE,CAAC;SACT,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CAAC,qDAAqD,CAAC;CACnE,CAAC,CAAC"}
@@ -0,0 +1,60 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Visibility options for LinkedIn posts.
4
+ */
5
+ export declare const VisibilityEnum: z.ZodDefault<z.ZodEnum<["PUBLIC", "CONNECTIONS"]>>;
6
+ /**
7
+ * Schema for upload_image tool.
8
+ */
9
+ export declare const UploadImageInputSchema: z.ZodObject<{
10
+ imageUrl: z.ZodString;
11
+ altText: z.ZodOptional<z.ZodString>;
12
+ }, "strip", z.ZodTypeAny, {
13
+ imageUrl: string;
14
+ altText?: string | undefined;
15
+ }, {
16
+ imageUrl: string;
17
+ altText?: string | undefined;
18
+ }>;
19
+ export type UploadImageInput = z.infer<typeof UploadImageInputSchema>;
20
+ /**
21
+ * Schema for create_image_post tool.
22
+ */
23
+ export declare const CreateImagePostInputSchema: z.ZodObject<{
24
+ text: z.ZodString;
25
+ imageUrl: z.ZodString;
26
+ altText: z.ZodOptional<z.ZodString>;
27
+ visibility: z.ZodOptional<z.ZodDefault<z.ZodEnum<["PUBLIC", "CONNECTIONS"]>>>;
28
+ }, "strip", z.ZodTypeAny, {
29
+ text: string;
30
+ imageUrl: string;
31
+ visibility?: "PUBLIC" | "CONNECTIONS" | undefined;
32
+ altText?: string | undefined;
33
+ }, {
34
+ text: string;
35
+ imageUrl: string;
36
+ visibility?: "PUBLIC" | "CONNECTIONS" | undefined;
37
+ altText?: string | undefined;
38
+ }>;
39
+ export type CreateImagePostInput = z.infer<typeof CreateImagePostInputSchema>;
40
+ /**
41
+ * Schema for create_document_post tool.
42
+ */
43
+ export declare const CreateDocumentPostInputSchema: z.ZodObject<{
44
+ text: z.ZodString;
45
+ documentUrl: z.ZodString;
46
+ title: z.ZodOptional<z.ZodString>;
47
+ visibility: z.ZodOptional<z.ZodDefault<z.ZodEnum<["PUBLIC", "CONNECTIONS"]>>>;
48
+ }, "strip", z.ZodTypeAny, {
49
+ text: string;
50
+ documentUrl: string;
51
+ title?: string | undefined;
52
+ visibility?: "PUBLIC" | "CONNECTIONS" | undefined;
53
+ }, {
54
+ text: string;
55
+ documentUrl: string;
56
+ title?: string | undefined;
57
+ visibility?: "PUBLIC" | "CONNECTIONS" | undefined;
58
+ }>;
59
+ export type CreateDocumentPostInput = z.infer<typeof CreateDocumentPostInputSchema>;
60
+ //# sourceMappingURL=media.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"media.d.ts","sourceRoot":"","sources":["../../src/schemas/media.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,cAAc,oDAAsD,CAAC;AAElF;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;EAGjC,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE;;GAEG;AACH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;EAKrC,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E;;GAEG;AACH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;EAKxC,CAAC;AACH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Visibility options for LinkedIn posts.
4
+ */
5
+ export const VisibilityEnum = z.enum(['PUBLIC', 'CONNECTIONS']).default('PUBLIC');
6
+ /**
7
+ * Schema for upload_image tool.
8
+ */
9
+ export const UploadImageInputSchema = z.object({
10
+ imageUrl: z.string().url('imageUrl must be a valid URL'),
11
+ altText: z.string().max(300, 'Alt text cannot exceed 300 characters').optional(),
12
+ });
13
+ /**
14
+ * Schema for create_image_post tool.
15
+ */
16
+ export const CreateImagePostInputSchema = z.object({
17
+ text: z.string().min(1, 'Post text cannot be empty').max(3000, 'Post text cannot exceed 3000 characters'),
18
+ imageUrl: z.string().url('imageUrl must be a valid URL'),
19
+ altText: z.string().max(300, 'Alt text cannot exceed 300 characters').optional(),
20
+ visibility: VisibilityEnum.optional(),
21
+ });
22
+ /**
23
+ * Schema for create_document_post tool.
24
+ */
25
+ export const CreateDocumentPostInputSchema = z.object({
26
+ text: z.string().min(1, 'Post text cannot be empty').max(3000, 'Post text cannot exceed 3000 characters'),
27
+ documentUrl: z.string().url('documentUrl must be a valid URL'),
28
+ title: z.string().optional(),
29
+ visibility: VisibilityEnum.optional(),
30
+ });
31
+ //# sourceMappingURL=media.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"media.js","sourceRoot":"","sources":["../../src/schemas/media.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AAElF;;GAEG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,8BAA8B,CAAC;IACxD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,uCAAuC,CAAC,CAAC,QAAQ,EAAE;CACjF,CAAC,CAAC;AAGH;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,2BAA2B,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,yCAAyC,CAAC;IACzG,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,8BAA8B,CAAC;IACxD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,uCAAuC,CAAC,CAAC,QAAQ,EAAE;IAChF,UAAU,EAAE,cAAc,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC;AAGH;;GAEG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,2BAA2B,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,yCAAyC,CAAC;IACzG,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,iCAAiC,CAAC;IAC9D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC5B,UAAU,EAAE,cAAc,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC"}
@@ -0,0 +1,74 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Schema for get_organization tool.
4
+ * At least one of organizationId or vanityName must be provided.
5
+ */
6
+ export declare const GetOrganizationSchema: z.ZodEffects<z.ZodObject<{
7
+ organizationId: z.ZodOptional<z.ZodString>;
8
+ vanityName: z.ZodOptional<z.ZodString>;
9
+ }, "strip", z.ZodTypeAny, {
10
+ organizationId?: string | undefined;
11
+ vanityName?: string | undefined;
12
+ }, {
13
+ organizationId?: string | undefined;
14
+ vanityName?: string | undefined;
15
+ }>, {
16
+ organizationId?: string | undefined;
17
+ vanityName?: string | undefined;
18
+ }, {
19
+ organizationId?: string | undefined;
20
+ vanityName?: string | undefined;
21
+ }>;
22
+ export type GetOrganizationInput = z.infer<typeof GetOrganizationSchema>;
23
+ /**
24
+ * Schema for create_org_post tool.
25
+ */
26
+ export declare const CreateOrgPostSchema: z.ZodObject<{
27
+ organizationId: z.ZodString;
28
+ text: z.ZodString;
29
+ visibility: z.ZodDefault<z.ZodOptional<z.ZodEnum<["PUBLIC", "LOGGED_IN"]>>>;
30
+ linkUrl: z.ZodOptional<z.ZodString>;
31
+ linkTitle: z.ZodOptional<z.ZodString>;
32
+ }, "strip", z.ZodTypeAny, {
33
+ text: string;
34
+ visibility: "PUBLIC" | "LOGGED_IN";
35
+ organizationId: string;
36
+ linkUrl?: string | undefined;
37
+ linkTitle?: string | undefined;
38
+ }, {
39
+ text: string;
40
+ organizationId: string;
41
+ visibility?: "PUBLIC" | "LOGGED_IN" | undefined;
42
+ linkUrl?: string | undefined;
43
+ linkTitle?: string | undefined;
44
+ }>;
45
+ export type CreateOrgPostInput = z.infer<typeof CreateOrgPostSchema>;
46
+ /**
47
+ * Schema for get_org_posts tool.
48
+ */
49
+ export declare const GetOrgPostsSchema: z.ZodObject<{
50
+ organizationId: z.ZodString;
51
+ count: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
52
+ start: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
53
+ }, "strip", z.ZodTypeAny, {
54
+ organizationId: string;
55
+ count: number;
56
+ start: number;
57
+ }, {
58
+ organizationId: string;
59
+ count?: number | undefined;
60
+ start?: number | undefined;
61
+ }>;
62
+ export type GetOrgPostsInput = z.infer<typeof GetOrgPostsSchema>;
63
+ /**
64
+ * Schema for delete_org_post tool.
65
+ */
66
+ export declare const DeleteOrgPostSchema: z.ZodObject<{
67
+ postUrn: z.ZodString;
68
+ }, "strip", z.ZodTypeAny, {
69
+ postUrn: string;
70
+ }, {
71
+ postUrn: string;
72
+ }>;
73
+ export type DeleteOrgPostInput = z.infer<typeof DeleteOrgPostSchema>;
74
+ //# sourceMappingURL=organization.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"organization.d.ts","sourceRoot":"","sources":["../../src/schemas/organization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;EAa9B,CAAC;AAEL,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEzE;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;EAsB9B,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAErE;;GAEG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;EAmB5B,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEjE;;GAEG;AACH,eAAO,MAAM,mBAAmB;;;;;;EAI9B,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC"}
@@ -0,0 +1,77 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Schema for get_organization tool.
4
+ * At least one of organizationId or vanityName must be provided.
5
+ */
6
+ export const GetOrganizationSchema = z
7
+ .object({
8
+ organizationId: z
9
+ .string()
10
+ .optional()
11
+ .describe('The numeric ID of the organization'),
12
+ vanityName: z
13
+ .string()
14
+ .optional()
15
+ .describe('The vanity name (URL slug) of the organization'),
16
+ })
17
+ .refine((data) => data.organizationId || data.vanityName, {
18
+ message: 'Either organizationId or vanityName must be provided',
19
+ });
20
+ /**
21
+ * Schema for create_org_post tool.
22
+ */
23
+ export const CreateOrgPostSchema = z.object({
24
+ organizationId: z
25
+ .string()
26
+ .describe('The numeric ID of the organization to post as'),
27
+ text: z
28
+ .string()
29
+ .min(1)
30
+ .describe('The text content of the post'),
31
+ visibility: z
32
+ .enum(['PUBLIC', 'LOGGED_IN'])
33
+ .optional()
34
+ .default('PUBLIC')
35
+ .describe('Post visibility: PUBLIC or LOGGED_IN (members only)'),
36
+ linkUrl: z
37
+ .string()
38
+ .url()
39
+ .optional()
40
+ .describe('Optional URL to include as an article attachment'),
41
+ linkTitle: z
42
+ .string()
43
+ .optional()
44
+ .describe('Optional title for the article attachment'),
45
+ });
46
+ /**
47
+ * Schema for get_org_posts tool.
48
+ */
49
+ export const GetOrgPostsSchema = z.object({
50
+ organizationId: z
51
+ .string()
52
+ .describe('The numeric ID of the organization'),
53
+ count: z
54
+ .number()
55
+ .int()
56
+ .min(1)
57
+ .max(100)
58
+ .optional()
59
+ .default(10)
60
+ .describe('Number of posts to retrieve (1-100, default 10)'),
61
+ start: z
62
+ .number()
63
+ .int()
64
+ .min(0)
65
+ .optional()
66
+ .default(0)
67
+ .describe('Pagination offset (default 0)'),
68
+ });
69
+ /**
70
+ * Schema for delete_org_post tool.
71
+ */
72
+ export const DeleteOrgPostSchema = z.object({
73
+ postUrn: z
74
+ .string()
75
+ .describe('The URN of the post to delete (e.g., urn:li:share:123456)'),
76
+ });
77
+ //# sourceMappingURL=organization.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"organization.js","sourceRoot":"","sources":["../../src/schemas/organization.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC;KACnC,MAAM,CAAC;IACN,cAAc,EAAE,CAAC;SACd,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,oCAAoC,CAAC;IACjD,UAAU,EAAE,CAAC;SACV,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,gDAAgD,CAAC;CAC9D,CAAC;KACD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,UAAU,EAAE;IACxD,OAAO,EAAE,sDAAsD;CAChE,CAAC,CAAC;AAIL;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,cAAc,EAAE,CAAC;SACd,MAAM,EAAE;SACR,QAAQ,CAAC,+CAA+C,CAAC;IAC5D,IAAI,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,8BAA8B,CAAC;IAC3C,UAAU,EAAE,CAAC;SACV,IAAI,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;SAC7B,QAAQ,EAAE;SACV,OAAO,CAAC,QAAQ,CAAC;SACjB,QAAQ,CAAC,qDAAqD,CAAC;IAClE,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,EAAE;SACV,QAAQ,CAAC,kDAAkD,CAAC;IAC/D,SAAS,EAAE,CAAC;SACT,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,2CAA2C,CAAC;CACzD,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,cAAc,EAAE,CAAC;SACd,MAAM,EAAE;SACR,QAAQ,CAAC,oCAAoC,CAAC;IACjD,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,GAAG,CAAC;SACR,QAAQ,EAAE;SACV,OAAO,CAAC,EAAE,CAAC;SACX,QAAQ,CAAC,iDAAiD,CAAC;IAC9D,KAAK,EAAE,CAAC;SACL,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,OAAO,CAAC,CAAC,CAAC;SACV,QAAQ,CAAC,+BAA+B,CAAC;CAC7C,CAAC,CAAC;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,OAAO,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,CAAC,2DAA2D,CAAC;CACzE,CAAC,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Visibility options for LinkedIn posts.
4
+ */
5
+ export declare const VisibilityEnum: z.ZodDefault<z.ZodEnum<["PUBLIC", "CONNECTIONS"]>>;
6
+ /**
7
+ * Schema for create_text_post tool.
8
+ */
9
+ export declare const CreateTextPostInputSchema: z.ZodObject<{
10
+ text: z.ZodString;
11
+ visibility: z.ZodOptional<z.ZodDefault<z.ZodEnum<["PUBLIC", "CONNECTIONS"]>>>;
12
+ }, "strip", z.ZodTypeAny, {
13
+ text: string;
14
+ visibility?: "PUBLIC" | "CONNECTIONS" | undefined;
15
+ }, {
16
+ text: string;
17
+ visibility?: "PUBLIC" | "CONNECTIONS" | undefined;
18
+ }>;
19
+ export type CreateTextPostInput = z.infer<typeof CreateTextPostInputSchema>;
20
+ /**
21
+ * Schema for create_link_post tool.
22
+ */
23
+ export declare const CreateLinkPostInputSchema: z.ZodObject<{
24
+ text: z.ZodString;
25
+ linkUrl: z.ZodString;
26
+ linkTitle: z.ZodOptional<z.ZodString>;
27
+ visibility: z.ZodOptional<z.ZodDefault<z.ZodEnum<["PUBLIC", "CONNECTIONS"]>>>;
28
+ }, "strip", z.ZodTypeAny, {
29
+ text: string;
30
+ linkUrl: string;
31
+ visibility?: "PUBLIC" | "CONNECTIONS" | undefined;
32
+ linkTitle?: string | undefined;
33
+ }, {
34
+ text: string;
35
+ linkUrl: string;
36
+ visibility?: "PUBLIC" | "CONNECTIONS" | undefined;
37
+ linkTitle?: string | undefined;
38
+ }>;
39
+ export type CreateLinkPostInput = z.infer<typeof CreateLinkPostInputSchema>;
40
+ /**
41
+ * Schema for delete_post tool.
42
+ */
43
+ export declare const DeletePostInputSchema: z.ZodObject<{
44
+ postUrn: z.ZodString;
45
+ }, "strip", z.ZodTypeAny, {
46
+ postUrn: string;
47
+ }, {
48
+ postUrn: string;
49
+ }>;
50
+ export type DeletePostInput = z.infer<typeof DeletePostInputSchema>;
51
+ //# sourceMappingURL=posts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"posts.d.ts","sourceRoot":"","sources":["../../src/schemas/posts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,eAAO,MAAM,cAAc,oDAAsD,CAAC;AAElF;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;EAGpC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E;;GAEG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;EAKpC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;;;;EAEhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
@@ -0,0 +1,28 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Visibility options for LinkedIn posts.
4
+ */
5
+ export const VisibilityEnum = z.enum(['PUBLIC', 'CONNECTIONS']).default('PUBLIC');
6
+ /**
7
+ * Schema for create_text_post tool.
8
+ */
9
+ export const CreateTextPostInputSchema = z.object({
10
+ text: z.string().min(1, 'Post text cannot be empty').max(3000, 'Post text cannot exceed 3000 characters'),
11
+ visibility: VisibilityEnum.optional(),
12
+ });
13
+ /**
14
+ * Schema for create_link_post tool.
15
+ */
16
+ export const CreateLinkPostInputSchema = z.object({
17
+ text: z.string().min(1, 'Post text cannot be empty').max(3000, 'Post text cannot exceed 3000 characters'),
18
+ linkUrl: z.string().url('linkUrl must be a valid URL'),
19
+ linkTitle: z.string().optional(),
20
+ visibility: VisibilityEnum.optional(),
21
+ });
22
+ /**
23
+ * Schema for delete_post tool.
24
+ */
25
+ export const DeletePostInputSchema = z.object({
26
+ postUrn: z.string().regex(/^urn:li:/, 'postUrn must be a valid LinkedIn URN (e.g. urn:li:share:123456)'),
27
+ });
28
+ //# sourceMappingURL=posts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"posts.js","sourceRoot":"","sources":["../../src/schemas/posts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;AAElF;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,2BAA2B,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,yCAAyC,CAAC;IACzG,UAAU,EAAE,cAAc,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC;AAGH;;GAEG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,2BAA2B,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,yCAAyC,CAAC;IACzG,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,6BAA6B,CAAC;IACtD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,UAAU,EAAE,cAAc,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC;AAGH;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,KAAK,CAAC,UAAU,EAAE,iEAAiE,CAAC;CACzG,CAAC,CAAC"}
@@ -0,0 +1,30 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Schema for get_profile tool — no input parameters needed.
4
+ * Returns the authenticated user's profile from /v2/userinfo.
5
+ */
6
+ export declare const GetProfileInputSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
7
+ export type GetProfileInput = z.infer<typeof GetProfileInputSchema>;
8
+ /**
9
+ * Schema for get_email tool — no input parameters needed.
10
+ * Returns only the authenticated user's email from /v2/userinfo.
11
+ */
12
+ export declare const GetEmailInputSchema: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
13
+ export type GetEmailInput = z.infer<typeof GetEmailInputSchema>;
14
+ /**
15
+ * Shape of the /v2/userinfo response from LinkedIn.
16
+ */
17
+ export interface UserInfoResponse {
18
+ sub: string;
19
+ name: string;
20
+ given_name: string;
21
+ family_name: string;
22
+ picture?: string;
23
+ email: string;
24
+ email_verified?: boolean;
25
+ locale?: {
26
+ country: string;
27
+ language: string;
28
+ };
29
+ }
30
+ //# sourceMappingURL=profile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../src/schemas/profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,eAAO,MAAM,qBAAqB,gDAAe,CAAC;AAClD,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;;GAGG;AACH,eAAO,MAAM,mBAAmB,gDAAe,CAAC;AAChD,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;CAChD"}
@@ -0,0 +1,12 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Schema for get_profile tool — no input parameters needed.
4
+ * Returns the authenticated user's profile from /v2/userinfo.
5
+ */
6
+ export const GetProfileInputSchema = z.object({});
7
+ /**
8
+ * Schema for get_email tool — no input parameters needed.
9
+ * Returns only the authenticated user's email from /v2/userinfo.
10
+ */
11
+ export const GetEmailInputSchema = z.object({});
12
+ //# sourceMappingURL=profile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"profile.js","sourceRoot":"","sources":["../../src/schemas/profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;GAGG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAGlD;;;GAGG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC"}