@lovie-ai/formation-mcp-server 1.0.18 → 1.0.20
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/dist/mcp/middleware/session.d.ts.map +1 -1
- package/dist/mcp/middleware/session.js +7 -1
- package/dist/mcp/middleware/session.js.map +1 -1
- package/dist/mcp/resources/index.d.ts.map +1 -1
- package/dist/mcp/resources/index.js +95 -0
- package/dist/mcp/resources/index.js.map +1 -1
- package/dist/mcp/state/FormationSessionStore.d.ts +1 -1
- package/dist/mcp/state/FormationSessionStore.d.ts.map +1 -1
- package/dist/mcp/state/FormationSessionStore.js +2 -1
- package/dist/mcp/state/FormationSessionStore.js.map +1 -1
- package/dist/mcp/state/types.d.ts +43 -4
- package/dist/mcp/state/types.d.ts.map +1 -1
- package/dist/mcp/state/types.js +26 -4
- package/dist/mcp/state/types.js.map +1 -1
- package/dist/mcp/tools/auth.d.ts +1 -0
- package/dist/mcp/tools/auth.d.ts.map +1 -1
- package/dist/mcp/tools/auth.js +26 -11
- package/dist/mcp/tools/auth.js.map +1 -1
- package/dist/mcp/tools/certificate.d.ts.map +1 -1
- package/dist/mcp/tools/certificate.js +7 -14
- package/dist/mcp/tools/certificate.js.map +1 -1
- package/dist/mcp/tools/company.d.ts +1 -0
- package/dist/mcp/tools/company.d.ts.map +1 -1
- package/dist/mcp/tools/company.js +231 -19
- package/dist/mcp/tools/company.js.map +1 -1
- package/dist/mcp/tools/index.d.ts.map +1 -1
- package/dist/mcp/tools/index.js +2 -0
- package/dist/mcp/tools/index.js.map +1 -1
- package/dist/mcp/tools/info.d.ts.map +1 -1
- package/dist/mcp/tools/info.js +3 -2
- package/dist/mcp/tools/info.js.map +1 -1
- package/dist/mcp/tools/session.d.ts +1 -0
- package/dist/mcp/tools/session.d.ts.map +1 -1
- package/dist/mcp/tools/session.js +102 -8
- package/dist/mcp/tools/session.js.map +1 -1
- package/dist/mcp/tools/stakeholders.d.ts.map +1 -1
- package/dist/mcp/tools/stakeholders.js +57 -16
- package/dist/mcp/tools/stakeholders.js.map +1 -1
- package/dist/mcp/tools/submission.d.ts +5 -0
- package/dist/mcp/tools/submission.d.ts.map +1 -0
- package/dist/mcp/tools/submission.js +276 -0
- package/dist/mcp/tools/submission.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/mcp/middleware/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/mcp/middleware/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAC;AAyCvE,wBAAsB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAa5G;AAQD,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,MAAM,CAO/F;AAGD,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,MAAM,EAAE,CAOjG;AAGD,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC,EAAE,WAAW,GAAG,MAAM,EAAE,CAOjG;AAGD,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAgB3D,CAAC"}
|
|
@@ -7,14 +7,16 @@ exports.getCompletedSteps = getCompletedSteps;
|
|
|
7
7
|
exports.getRemainingSteps = getRemainingSteps;
|
|
8
8
|
const types_1 = require("../state/types");
|
|
9
9
|
const errors_1 = require("../errors");
|
|
10
|
-
// Step order for progress calculation
|
|
10
|
+
// Step order for progress calculation (C-Corp)
|
|
11
11
|
const STEP_ORDER = [
|
|
12
12
|
types_1.FormationStep.CREATED,
|
|
13
|
+
types_1.FormationStep.BUSINESS_DESCRIBED,
|
|
13
14
|
types_1.FormationStep.STATE_SELECTED,
|
|
14
15
|
types_1.FormationStep.TYPE_SELECTED,
|
|
15
16
|
types_1.FormationStep.ENDING_SELECTED,
|
|
16
17
|
types_1.FormationStep.NAME_SET,
|
|
17
18
|
types_1.FormationStep.NAME_CHECKED,
|
|
19
|
+
types_1.FormationStep.COMPANY_ADDRESS_SET,
|
|
18
20
|
types_1.FormationStep.AGENT_SET,
|
|
19
21
|
types_1.FormationStep.SHARES_SET,
|
|
20
22
|
types_1.FormationStep.SHAREHOLDERS_ADDED,
|
|
@@ -26,11 +28,13 @@ const STEP_ORDER = [
|
|
|
26
28
|
// Steps for LLC (no share structure)
|
|
27
29
|
const LLC_STEP_ORDER = [
|
|
28
30
|
types_1.FormationStep.CREATED,
|
|
31
|
+
types_1.FormationStep.BUSINESS_DESCRIBED,
|
|
29
32
|
types_1.FormationStep.STATE_SELECTED,
|
|
30
33
|
types_1.FormationStep.TYPE_SELECTED,
|
|
31
34
|
types_1.FormationStep.ENDING_SELECTED,
|
|
32
35
|
types_1.FormationStep.NAME_SET,
|
|
33
36
|
types_1.FormationStep.NAME_CHECKED,
|
|
37
|
+
types_1.FormationStep.COMPANY_ADDRESS_SET,
|
|
34
38
|
types_1.FormationStep.AGENT_SET,
|
|
35
39
|
types_1.FormationStep.SHAREHOLDERS_ADDED,
|
|
36
40
|
types_1.FormationStep.AUTHORIZED_PARTY_SET,
|
|
@@ -81,11 +85,13 @@ function getRemainingSteps(currentStep, companyType) {
|
|
|
81
85
|
// Step descriptions for user-friendly messages
|
|
82
86
|
exports.STEP_DESCRIPTIONS = {
|
|
83
87
|
[types_1.FormationStep.CREATED]: 'Session created',
|
|
88
|
+
[types_1.FormationStep.BUSINESS_DESCRIBED]: 'Describe your business',
|
|
84
89
|
[types_1.FormationStep.STATE_SELECTED]: 'Select formation state',
|
|
85
90
|
[types_1.FormationStep.TYPE_SELECTED]: 'Select company type',
|
|
86
91
|
[types_1.FormationStep.ENDING_SELECTED]: 'Select entity ending',
|
|
87
92
|
[types_1.FormationStep.NAME_SET]: 'Set company name',
|
|
88
93
|
[types_1.FormationStep.NAME_CHECKED]: 'Check name availability',
|
|
94
|
+
[types_1.FormationStep.COMPANY_ADDRESS_SET]: 'Set company address',
|
|
89
95
|
[types_1.FormationStep.AGENT_SET]: 'Set registered agent',
|
|
90
96
|
[types_1.FormationStep.SHARES_SET]: 'Set share structure',
|
|
91
97
|
[types_1.FormationStep.SHAREHOLDERS_ADDED]: 'Add shareholders',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/mcp/middleware/session.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../../src/mcp/middleware/session.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mcp/resources/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAG9D,eAAO,MAAM,mBAAmB,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mcp/resources/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAG9D,eAAO,MAAM,mBAAmB,EAAE,QAAQ,EAqCzC,CAAC;AAGF,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAqenD,CAAC;AAGF,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE7D;AAGD,wBAAgB,eAAe,IAAI,QAAQ,EAAE,CAE5C"}
|
|
@@ -35,6 +35,12 @@ exports.FORMATION_RESOURCES = [
|
|
|
35
35
|
description: 'Required information for Delaware company formation',
|
|
36
36
|
mimeType: 'text/markdown',
|
|
37
37
|
},
|
|
38
|
+
{
|
|
39
|
+
uri: 'formation://incorporation-process',
|
|
40
|
+
name: 'Incorporation Process',
|
|
41
|
+
description: 'How our legal team incorporates your company and transfers ownership to you',
|
|
42
|
+
mimeType: 'text/markdown',
|
|
43
|
+
},
|
|
38
44
|
];
|
|
39
45
|
// Resource content - EDIT THIS CONTENT TO CUSTOMIZE YOUR MCP
|
|
40
46
|
exports.RESOURCE_CONTENT = {
|
|
@@ -427,6 +433,95 @@ Lovie will be your incorporator. We handle the signing and filing.
|
|
|
427
433
|
- Ongoing compliance reminders
|
|
428
434
|
- In-house legal team keeping you compliant with local and federal law
|
|
429
435
|
- Access to Lovie's AI-first financial platform
|
|
436
|
+
`,
|
|
437
|
+
'formation://incorporation-process': `# How Lovie Incorporates Your Company
|
|
438
|
+
|
|
439
|
+
## The Standard Incorporation Process
|
|
440
|
+
|
|
441
|
+
When you form a company through Lovie, our legal team handles the entire incorporation process on your behalf. This is the same process used by top law firms and professional incorporation services worldwide.
|
|
442
|
+
|
|
443
|
+
## Meet Your Incorporator
|
|
444
|
+
|
|
445
|
+
**Sema Kurt Caskey** - Lovie Legal Team
|
|
446
|
+
|
|
447
|
+
Our professional incorporator files your formation documents and handles all initial corporate formalities to ensure your company is properly established from day one.
|
|
448
|
+
|
|
449
|
+
**Incorporator Address:**
|
|
450
|
+
75 Omega Drive, Suite 270
|
|
451
|
+
Newark, DE 19713
|
|
452
|
+
|
|
453
|
+
---
|
|
454
|
+
|
|
455
|
+
## How It Works
|
|
456
|
+
|
|
457
|
+
### Step 1: Document Filing
|
|
458
|
+
Our incorporator, Sema Kurt Caskey, signs and files your Certificate of Incorporation (for C-Corps) or Certificate of Formation (for LLCs) with the Delaware Secretary of State.
|
|
459
|
+
|
|
460
|
+
### Step 2: Initial Organizational Actions
|
|
461
|
+
Once filed, our legal team conducts the initial organizational actions:
|
|
462
|
+
|
|
463
|
+
**For C-Corps:**
|
|
464
|
+
- Adopt corporate bylaws
|
|
465
|
+
- Appoint initial board of directors (you and your co-founders)
|
|
466
|
+
- Authorize the issuance of stock
|
|
467
|
+
- Prepare stock certificates
|
|
468
|
+
- Record the organizational consent
|
|
469
|
+
|
|
470
|
+
**For LLCs:**
|
|
471
|
+
- Prepare the Operating Agreement
|
|
472
|
+
- Designate managers/members
|
|
473
|
+
- Document member ownership percentages
|
|
474
|
+
|
|
475
|
+
### Step 3: Ownership Transfer
|
|
476
|
+
Full ownership and control of the company is transferred to you as the founder(s). You become the official director(s), officer(s), and shareholder(s) of your company.
|
|
477
|
+
|
|
478
|
+
### Step 4: Document Delivery
|
|
479
|
+
You receive a complete corporate kit including:
|
|
480
|
+
- Filed Certificate of Incorporation/Formation (official copy from the state)
|
|
481
|
+
- Corporate Bylaws or Operating Agreement
|
|
482
|
+
- Stock certificates (for C-Corps)
|
|
483
|
+
- Initial board/organizational resolutions
|
|
484
|
+
- EIN application guidance
|
|
485
|
+
|
|
486
|
+
---
|
|
487
|
+
|
|
488
|
+
## Why This Process?
|
|
489
|
+
|
|
490
|
+
### Clean Corporate Record
|
|
491
|
+
Having a professional incorporator ensures your company has a clean formation record from day one. This is important for:
|
|
492
|
+
- Future fundraising from investors
|
|
493
|
+
- Due diligence processes
|
|
494
|
+
- Bank account opening
|
|
495
|
+
- Contract signing
|
|
496
|
+
|
|
497
|
+
### Legal Compliance
|
|
498
|
+
Our legal team ensures all initial formalities are properly completed, which is critical for:
|
|
499
|
+
- Maintaining limited liability protection
|
|
500
|
+
- Corporate veil protection
|
|
501
|
+
- Proper stock issuance
|
|
502
|
+
|
|
503
|
+
### Industry Standard
|
|
504
|
+
This is the same process used by:
|
|
505
|
+
- Y Combinator startups
|
|
506
|
+
- Stripe Atlas companies
|
|
507
|
+
- Major law firms (Wilson Sonsini, Gunderson, Cooley, etc.)
|
|
508
|
+
- All professional incorporation services
|
|
509
|
+
|
|
510
|
+
---
|
|
511
|
+
|
|
512
|
+
## Frequently Asked Questions
|
|
513
|
+
|
|
514
|
+
### Is this legal?
|
|
515
|
+
**Yes, absolutely.** Delaware law explicitly allows any person (including professional incorporators) to sign the certificate of incorporation. This is standard practice.
|
|
516
|
+
|
|
517
|
+
### Will I own my company?
|
|
518
|
+
**Yes, 100%.** The incorporator's role ends after the initial organizational actions. You and your co-founders become the full owners, directors, and officers of your company.
|
|
519
|
+
|
|
520
|
+
### Does the incorporator have any ongoing role?
|
|
521
|
+
**No.** Once the company is formed and transferred to you, the incorporator has no ongoing involvement, ownership, or rights in your company.
|
|
522
|
+
|
|
523
|
+
### Is there any additional cost for this?
|
|
524
|
+
**No.** This service is included free with Lovie formation.
|
|
430
525
|
`,
|
|
431
526
|
};
|
|
432
527
|
// Get resource content by URI
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mcp/resources/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mcp/resources/index.ts"],"names":[],"mappings":";;;AAmhBA,gDAEC;AAGD,0CAEC;AAxhBD,uBAAuB;AACV,QAAA,mBAAmB,GAAe;IAC7C;QACE,GAAG,EAAE,mBAAmB;QACxB,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,2DAA2D;QACxE,QAAQ,EAAE,eAAe;KAC1B;IACD;QACE,GAAG,EAAE,qBAAqB;QAC1B,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,wCAAwC;QACrD,QAAQ,EAAE,eAAe;KAC1B;IACD;QACE,GAAG,EAAE,2BAA2B;QAChC,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,gDAAgD;QAC7D,QAAQ,EAAE,eAAe;KAC1B;IACD;QACE,GAAG,EAAE,iBAAiB;QACtB,IAAI,EAAE,KAAK;QACX,WAAW,EAAE,oDAAoD;QACjE,QAAQ,EAAE,eAAe;KAC1B;IACD;QACE,GAAG,EAAE,0BAA0B;QAC/B,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,qDAAqD;QAClE,QAAQ,EAAE,eAAe;KAC1B;IACD;QACE,GAAG,EAAE,mCAAmC;QACxC,IAAI,EAAE,uBAAuB;QAC7B,WAAW,EAAE,6EAA6E;QAC1F,QAAQ,EAAE,eAAe;KAC1B;CACF,CAAC;AAEF,6DAA6D;AAChD,QAAA,gBAAgB,GAA2B;IACtD,mBAAmB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4DtB;IAEC,qBAAqB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8DxB;IAEC,2BAA2B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkF9B;IAEC,iBAAiB,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqHpB;IAEC,0BAA0B,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgE7B;IAEC,mCAAmC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwFtC;CACA,CAAC;AAEF,8BAA8B;AAC9B,SAAgB,kBAAkB,CAAC,GAAW;IAC5C,OAAO,wBAAgB,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;AACvC,CAAC;AAED,+BAA+B;AAC/B,SAAgB,eAAe;IAC7B,OAAO,2BAAmB,CAAC;AAC7B,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { FormationSession } from './types';
|
|
2
2
|
export declare class FormationSessionStore {
|
|
3
|
-
create(): Promise<FormationSession>;
|
|
3
|
+
create(userId?: string): Promise<FormationSession>;
|
|
4
4
|
get(sessionId: string): Promise<FormationSession | null>;
|
|
5
5
|
save(session: FormationSession): Promise<void>;
|
|
6
6
|
delete(sessionId: string): Promise<boolean>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormationSessionStore.d.ts","sourceRoot":"","sources":["../../../src/mcp/state/FormationSessionStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAgC,MAAM,SAAS,CAAC;AASzE,qBAAa,qBAAqB;IAE1B,MAAM,
|
|
1
|
+
{"version":3,"file":"FormationSessionStore.d.ts","sourceRoot":"","sources":["../../../src/mcp/state/FormationSessionStore.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAgC,MAAM,SAAS,CAAC;AASzE,qBAAa,qBAAqB;IAE1B,MAAM,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAkBlD,GAAG,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAKxD,IAAI,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC;IAM9C,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAK3C,IAAI,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;IAKnC,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;CAajC;AAKD,wBAAgB,eAAe,IAAI,qBAAqB,CAKvD"}
|
|
@@ -11,10 +11,11 @@ const sessions = new Map();
|
|
|
11
11
|
const SESSION_TTL_MS = 24 * 60 * 60 * 1000;
|
|
12
12
|
class FormationSessionStore {
|
|
13
13
|
// Create a new session
|
|
14
|
-
async create() {
|
|
14
|
+
async create(userId) {
|
|
15
15
|
const now = new Date();
|
|
16
16
|
const session = {
|
|
17
17
|
sessionId: (0, uuid_1.v4)(),
|
|
18
|
+
userId,
|
|
18
19
|
status: types_1.SessionStatus.CREATED,
|
|
19
20
|
currentStep: types_1.FormationStep.CREATED,
|
|
20
21
|
shareholders: [],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormationSessionStore.js","sourceRoot":"","sources":["../../../src/mcp/state/FormationSessionStore.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"FormationSessionStore.js","sourceRoot":"","sources":["../../../src/mcp/state/FormationSessionStore.ts"],"names":[],"mappings":";;;AAqEA,0CAKC;AA1ED,+BAAoC;AACpC,mCAAyE;AAEzE,oDAAoD;AACpD,oDAAoD;AACpD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA4B,CAAC;AAErD,yCAAyC;AACzC,MAAM,cAAc,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE3C,MAAa,qBAAqB;IAChC,uBAAuB;IACvB,KAAK,CAAC,MAAM,CAAC,MAAe;QAC1B,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,OAAO,GAAqB;YAChC,SAAS,EAAE,IAAA,SAAM,GAAE;YACnB,MAAM;YACN,MAAM,EAAE,qBAAa,CAAC,OAAO;YAC7B,WAAW,EAAE,qBAAa,CAAC,OAAO;YAClC,YAAY,EAAE,EAAE;YAChB,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE;YAC5B,SAAS,EAAE,GAAG,CAAC,WAAW,EAAE;YAC5B,SAAS,EAAE,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,cAAc,CAAC,CAAC,WAAW,EAAE;SAClE,CAAC;QAEF,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACzC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,oBAAoB;IACpB,KAAK,CAAC,GAAG,CAAC,SAAiB;QACzB,OAAO,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC;IACzC,CAAC;IAED,sBAAsB;IACtB,KAAK,CAAC,IAAI,CAAC,OAAyB;QAClC,OAAO,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC7C,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED,iBAAiB;IACjB,KAAK,CAAC,MAAM,CAAC,SAAiB;QAC5B,OAAO,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAED,oCAAoC;IACpC,KAAK,CAAC,IAAI;QACR,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IACvC,CAAC;IAED,4BAA4B;IAC5B,KAAK,CAAC,OAAO;QACX,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,OAAO,GAAG,CAAC,CAAC;QAEhB,KAAK,MAAM,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,QAAQ,EAAE,CAAC;YAC5C,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,GAAG,EAAE,CAAC;gBACtC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;gBAC3B,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;CACF;AAtDD,sDAsDC;AAED,qBAAqB;AACrB,IAAI,aAAa,GAAiC,IAAI,CAAC;AAEvD,SAAgB,eAAe;IAC7B,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,aAAa,GAAG,IAAI,qBAAqB,EAAE,CAAC;IAC9C,CAAC;IACD,OAAO,aAAa,CAAC;AACvB,CAAC"}
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
export declare enum FormationStep {
|
|
2
2
|
CREATED = "created",
|
|
3
|
+
BUSINESS_DESCRIBED = "business_described",
|
|
3
4
|
STATE_SELECTED = "state_selected",
|
|
4
5
|
TYPE_SELECTED = "type_selected",
|
|
5
6
|
ENDING_SELECTED = "ending_selected",
|
|
6
7
|
NAME_SET = "name_set",
|
|
7
8
|
NAME_CHECKED = "name_checked",
|
|
9
|
+
COMPANY_ADDRESS_SET = "company_address_set",
|
|
8
10
|
AGENT_SET = "agent_set",
|
|
9
11
|
SHARES_SET = "shares_set",
|
|
10
12
|
SHAREHOLDERS_ADDED = "shareholders_added",
|
|
@@ -21,17 +23,23 @@ export declare enum SessionStatus {
|
|
|
21
23
|
ABANDONED = "abandoned",
|
|
22
24
|
EXPIRED = "expired"
|
|
23
25
|
}
|
|
24
|
-
export type CompanyType = 'LLC' | 'C-Corp'
|
|
25
|
-
export type USState = 'DE';
|
|
26
|
+
export type CompanyType = 'LLC' | 'C-Corp';
|
|
27
|
+
export type USState = 'DE' | 'WY';
|
|
26
28
|
export interface Address {
|
|
27
29
|
street1: string;
|
|
28
|
-
street2?: string;
|
|
30
|
+
street2?: string | null;
|
|
29
31
|
city: string;
|
|
30
32
|
state: string;
|
|
31
33
|
zipCode: string;
|
|
32
34
|
county?: string;
|
|
33
35
|
country?: string;
|
|
34
36
|
}
|
|
37
|
+
export type AddressSource = 'own' | 'need_assistance';
|
|
38
|
+
export interface CompanyAddress {
|
|
39
|
+
address?: Address;
|
|
40
|
+
source: AddressSource;
|
|
41
|
+
virtualPostMailInterested: boolean;
|
|
42
|
+
}
|
|
35
43
|
export interface RegisteredAgent {
|
|
36
44
|
isDefault?: boolean;
|
|
37
45
|
name: string;
|
|
@@ -44,6 +52,7 @@ export interface ShareStructure {
|
|
|
44
52
|
authorizedShares: number;
|
|
45
53
|
parValuePerShare: number;
|
|
46
54
|
}
|
|
55
|
+
export type ShareholderRole = 'member' | 'managing_member' | 'shareholder' | 'director' | 'officer';
|
|
47
56
|
export interface Shareholder {
|
|
48
57
|
id: string;
|
|
49
58
|
firstName: string;
|
|
@@ -51,18 +60,28 @@ export interface Shareholder {
|
|
|
51
60
|
email: string;
|
|
52
61
|
phone?: string;
|
|
53
62
|
ownershipPercentage: number;
|
|
54
|
-
address
|
|
63
|
+
address: Address;
|
|
64
|
+
role?: ShareholderRole;
|
|
55
65
|
}
|
|
56
66
|
export interface AuthorizedParty {
|
|
57
67
|
name: string;
|
|
58
68
|
title: string;
|
|
59
69
|
}
|
|
70
|
+
export interface Incorporator {
|
|
71
|
+
name: string;
|
|
72
|
+
address: Address;
|
|
73
|
+
}
|
|
74
|
+
export declare const DEFAULT_INCORPORATOR: Incorporator;
|
|
60
75
|
export interface CompanyDetails {
|
|
61
76
|
state?: USState;
|
|
62
77
|
companyType?: CompanyType;
|
|
63
78
|
entityEnding?: string;
|
|
64
79
|
baseName?: string;
|
|
65
80
|
fullName?: string;
|
|
81
|
+
purpose?: string;
|
|
82
|
+
effectiveDate?: string;
|
|
83
|
+
companyAddress?: CompanyAddress;
|
|
84
|
+
businessDescription?: string;
|
|
66
85
|
}
|
|
67
86
|
export interface NameCheckResult {
|
|
68
87
|
available: boolean;
|
|
@@ -79,8 +98,24 @@ export interface CertificateData {
|
|
|
79
98
|
htmlContent?: string;
|
|
80
99
|
approvedAt?: string;
|
|
81
100
|
}
|
|
101
|
+
export type SubmissionStatus = 'PENDING_REVIEW' | 'IN_REVIEW' | 'FILING' | 'COMPLETED' | 'ERROR';
|
|
102
|
+
export interface SubmissionResult {
|
|
103
|
+
id: number;
|
|
104
|
+
sessionId: string;
|
|
105
|
+
userId: string;
|
|
106
|
+
status: SubmissionStatus;
|
|
107
|
+
companyName: string;
|
|
108
|
+
entityType: string;
|
|
109
|
+
stateOfFormation: string;
|
|
110
|
+
confirmationNumber?: string | null;
|
|
111
|
+
certificateUrl?: string | null;
|
|
112
|
+
filingError?: string | null;
|
|
113
|
+
submittedAt: string;
|
|
114
|
+
filedAt?: string | null;
|
|
115
|
+
}
|
|
82
116
|
export interface FormationSession {
|
|
83
117
|
sessionId: string;
|
|
118
|
+
userId?: string;
|
|
84
119
|
status: SessionStatus;
|
|
85
120
|
currentStep: FormationStep;
|
|
86
121
|
companyDetails?: CompanyDetails;
|
|
@@ -88,8 +123,10 @@ export interface FormationSession {
|
|
|
88
123
|
shareStructure?: ShareStructure;
|
|
89
124
|
shareholders: Shareholder[];
|
|
90
125
|
authorizedParty?: AuthorizedParty;
|
|
126
|
+
incorporator?: Incorporator;
|
|
91
127
|
nameCheckResult?: NameCheckResult;
|
|
92
128
|
certificateData?: CertificateData;
|
|
129
|
+
submissionResult?: SubmissionResult;
|
|
93
130
|
createdAt: string;
|
|
94
131
|
updatedAt: string;
|
|
95
132
|
expiresAt: string;
|
|
@@ -98,4 +135,6 @@ export declare const DEFAULT_REGISTERED_AGENT: RegisteredAgent;
|
|
|
98
135
|
export declare const DEFAULT_SHARE_STRUCTURE: ShareStructure;
|
|
99
136
|
export declare const ENTITY_ENDINGS: Record<CompanyType, string[]>;
|
|
100
137
|
export declare const COMPANY_TYPE_DESCRIPTIONS: Record<CompanyType, string>;
|
|
138
|
+
export declare const STATE_COMPANY_TYPES: Record<USState, CompanyType[]>;
|
|
139
|
+
export declare const STATE_DESCRIPTIONS: Record<USState, string>;
|
|
101
140
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/mcp/state/types.ts"],"names":[],"mappings":"AACA,oBAAY,aAAa;IACvB,OAAO,YAAY;IACnB,cAAc,mBAAmB;IACjC,aAAa,kBAAkB;IAC/B,eAAe,oBAAoB;IACnC,QAAQ,aAAa;IACrB,YAAY,iBAAiB;IAC7B,SAAS,cAAc;IACvB,UAAU,eAAe;IACzB,kBAAkB,uBAAuB;IACzC,oBAAoB,yBAAyB;IAC7C,qBAAqB,0BAA0B;IAC/C,oBAAoB,yBAAyB;IAC7C,SAAS,cAAc;CACxB;AAGD,oBAAY,aAAa;IACvB,OAAO,YAAY;IACnB,WAAW,gBAAgB;IAC3B,MAAM,WAAW;IACjB,SAAS,cAAc;IACvB,SAAS,cAAc;IACvB,OAAO,YAAY;CACpB;AAGD,MAAM,MAAM,WAAW,GAAG,KAAK,GAAG,QAAQ,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/mcp/state/types.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/state/types.js
CHANGED
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.COMPANY_TYPE_DESCRIPTIONS = exports.ENTITY_ENDINGS = exports.DEFAULT_SHARE_STRUCTURE = exports.DEFAULT_REGISTERED_AGENT = exports.SessionStatus = exports.FormationStep = void 0;
|
|
3
|
+
exports.STATE_DESCRIPTIONS = exports.STATE_COMPANY_TYPES = exports.COMPANY_TYPE_DESCRIPTIONS = exports.ENTITY_ENDINGS = exports.DEFAULT_SHARE_STRUCTURE = exports.DEFAULT_REGISTERED_AGENT = exports.DEFAULT_INCORPORATOR = exports.SessionStatus = exports.FormationStep = void 0;
|
|
4
4
|
// Formation workflow step enumeration
|
|
5
5
|
var FormationStep;
|
|
6
6
|
(function (FormationStep) {
|
|
7
7
|
FormationStep["CREATED"] = "created";
|
|
8
|
+
FormationStep["BUSINESS_DESCRIBED"] = "business_described";
|
|
8
9
|
FormationStep["STATE_SELECTED"] = "state_selected";
|
|
9
10
|
FormationStep["TYPE_SELECTED"] = "type_selected";
|
|
10
11
|
FormationStep["ENDING_SELECTED"] = "ending_selected";
|
|
11
12
|
FormationStep["NAME_SET"] = "name_set";
|
|
12
13
|
FormationStep["NAME_CHECKED"] = "name_checked";
|
|
14
|
+
FormationStep["COMPANY_ADDRESS_SET"] = "company_address_set";
|
|
13
15
|
FormationStep["AGENT_SET"] = "agent_set";
|
|
14
16
|
FormationStep["SHARES_SET"] = "shares_set";
|
|
15
17
|
FormationStep["SHAREHOLDERS_ADDED"] = "shareholders_added";
|
|
@@ -28,6 +30,18 @@ var SessionStatus;
|
|
|
28
30
|
SessionStatus["ABANDONED"] = "abandoned";
|
|
29
31
|
SessionStatus["EXPIRED"] = "expired";
|
|
30
32
|
})(SessionStatus || (exports.SessionStatus = SessionStatus = {}));
|
|
33
|
+
// Default incorporator - Lovie's internal legal team member
|
|
34
|
+
exports.DEFAULT_INCORPORATOR = {
|
|
35
|
+
name: 'Sema Kurt Caskey',
|
|
36
|
+
address: {
|
|
37
|
+
street1: '75 Omega Drive',
|
|
38
|
+
street2: 'Suite 270',
|
|
39
|
+
city: 'Newark',
|
|
40
|
+
state: 'DE',
|
|
41
|
+
zipCode: '19713',
|
|
42
|
+
country: 'US',
|
|
43
|
+
},
|
|
44
|
+
};
|
|
31
45
|
// Default values
|
|
32
46
|
exports.DEFAULT_REGISTERED_AGENT = {
|
|
33
47
|
isDefault: true,
|
|
@@ -51,12 +65,20 @@ exports.DEFAULT_SHARE_STRUCTURE = {
|
|
|
51
65
|
exports.ENTITY_ENDINGS = {
|
|
52
66
|
'LLC': ['LLC', 'L.L.C.', 'Limited Liability Company'],
|
|
53
67
|
'C-Corp': ['Inc.', 'Incorporated', 'Corp.', 'Corporation', 'Company', 'Co.', 'Limited', 'Ltd.'],
|
|
54
|
-
'S-Corp': ['Inc.', 'Incorporated', 'Corp.', 'Corporation', 'Company', 'Co.', 'Limited', 'Ltd.'],
|
|
55
68
|
};
|
|
56
69
|
// Company type descriptions
|
|
57
70
|
exports.COMPANY_TYPE_DESCRIPTIONS = {
|
|
58
71
|
'LLC': 'Limited Liability Company - Flexible structure with pass-through taxation',
|
|
59
|
-
'C-Corp': 'C Corporation - Traditional corporate structure
|
|
60
|
-
|
|
72
|
+
'C-Corp': 'C Corporation - Traditional corporate structure, preferred by investors for fundraising',
|
|
73
|
+
};
|
|
74
|
+
// State-specific company type availability
|
|
75
|
+
exports.STATE_COMPANY_TYPES = {
|
|
76
|
+
'DE': ['LLC', 'C-Corp'],
|
|
77
|
+
'WY': ['LLC'],
|
|
78
|
+
};
|
|
79
|
+
// State descriptions
|
|
80
|
+
exports.STATE_DESCRIPTIONS = {
|
|
81
|
+
'DE': 'Delaware - Premier business jurisdiction with specialized courts and well-established corporate law',
|
|
82
|
+
'WY': 'Wyoming - Strong privacy protections, no state income tax, and low fees',
|
|
61
83
|
};
|
|
62
84
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/mcp/state/types.ts"],"names":[],"mappings":";;;AAAA,sCAAsC;AACtC,IAAY,
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/mcp/state/types.ts"],"names":[],"mappings":";;;AAAA,sCAAsC;AACtC,IAAY,aAgBX;AAhBD,WAAY,aAAa;IACvB,oCAAmB,CAAA;IACnB,0DAAyC,CAAA;IACzC,kDAAiC,CAAA;IACjC,gDAA+B,CAAA;IAC/B,oDAAmC,CAAA;IACnC,sCAAqB,CAAA;IACrB,8CAA6B,CAAA;IAC7B,4DAA2C,CAAA;IAC3C,wCAAuB,CAAA;IACvB,0CAAyB,CAAA;IACzB,0DAAyC,CAAA;IACzC,8DAA6C,CAAA;IAC7C,gEAA+C,CAAA;IAC/C,8DAA6C,CAAA;IAC7C,wCAAuB,CAAA;AACzB,CAAC,EAhBW,aAAa,6BAAb,aAAa,QAgBxB;AAED,6BAA6B;AAC7B,IAAY,aAOX;AAPD,WAAY,aAAa;IACvB,oCAAmB,CAAA;IACnB,4CAA2B,CAAA;IAC3B,kCAAiB,CAAA;IACjB,wCAAuB,CAAA;IACvB,wCAAuB,CAAA;IACvB,oCAAmB,CAAA;AACrB,CAAC,EAPW,aAAa,6BAAb,aAAa,QAOxB;AAkED,4DAA4D;AAC/C,QAAA,oBAAoB,GAAiB;IAChD,IAAI,EAAE,kBAAkB;IACxB,OAAO,EAAE;QACP,OAAO,EAAE,gBAAgB;QACzB,OAAO,EAAE,WAAW;QACpB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,IAAI;KACd;CACF,CAAC;AAoEF,iBAAiB;AACJ,QAAA,wBAAwB,GAAoB;IACvD,SAAS,EAAE,IAAI;IACf,IAAI,EAAE,4BAA4B;IAClC,KAAK,EAAE,sCAAsC;IAC7C,KAAK,EAAE,gBAAgB;IACvB,OAAO,EAAE;QACP,OAAO,EAAE,sBAAsB;QAC/B,IAAI,EAAE,OAAO;QACb,KAAK,EAAE,IAAI;QACX,OAAO,EAAE,OAAO;QAChB,MAAM,EAAE,MAAM;KACf;CACF,CAAC;AAEW,QAAA,uBAAuB,GAAmB;IACrD,SAAS,EAAE,IAAI;IACf,gBAAgB,EAAE,QAAQ;IAC1B,gBAAgB,EAAE,OAAO;CAC1B,CAAC;AAEF,iCAAiC;AACpB,QAAA,cAAc,GAAkC;IAC3D,KAAK,EAAE,CAAC,KAAK,EAAE,QAAQ,EAAE,2BAA2B,CAAC;IACrD,QAAQ,EAAE,CAAC,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC;CAChG,CAAC;AAEF,4BAA4B;AACf,QAAA,yBAAyB,GAAgC;IACpE,KAAK,EAAE,2EAA2E;IAClF,QAAQ,EAAE,yFAAyF;CACpG,CAAC;AAEF,2CAA2C;AAC9B,QAAA,mBAAmB,GAAmC;IACjE,IAAI,EAAE,CAAC,KAAK,EAAE,QAAQ,CAAC;IACvB,IAAI,EAAE,CAAC,KAAK,CAAC;CACd,CAAC;AAEF,qBAAqB;AACR,QAAA,kBAAkB,GAA4B;IACzD,IAAI,EAAE,qGAAqG;IAC3G,IAAI,EAAE,yEAAyE;CAChF,CAAC"}
|
package/dist/mcp/tools/auth.d.ts
CHANGED
|
@@ -4,6 +4,7 @@ export declare const formationSetTokenTool: ToolDefinition;
|
|
|
4
4
|
export declare const formationLogoutTool: ToolDefinition;
|
|
5
5
|
export declare const formationAuthStatusTool: ToolDefinition;
|
|
6
6
|
export declare function getAuthToken(): string | null;
|
|
7
|
+
export declare function getUserId(): string | null;
|
|
7
8
|
export declare function isAuthenticated(): boolean;
|
|
8
9
|
export declare function registerAuthTools(): void;
|
|
9
10
|
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,cAAc,EAAE,MAAM,SAAS,CAAC;AAavD,eAAO,MAAM,kBAAkB,EAAE,cAQhC,CAAC;AA8BF,eAAO,MAAM,qBAAqB,EAAE,
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,cAAc,EAAE,MAAM,SAAS,CAAC;AAavD,eAAO,MAAM,kBAAkB,EAAE,cAQhC,CAAC;AA8BF,eAAO,MAAM,qBAAqB,EAAE,cAiBnC,CAAC;AA8DF,eAAO,MAAM,mBAAmB,EAAE,cAQjC,CAAC;AAsBF,eAAO,MAAM,uBAAuB,EAAE,cAQrC,CAAC;AAuCF,wBAAgB,YAAY,IAAI,MAAM,GAAG,IAAI,CAE5C;AAGD,wBAAgB,SAAS,IAAI,MAAM,GAAG,IAAI,CAEzC;AAGD,wBAAgB,eAAe,IAAI,OAAO,CAMzC;AAGD,wBAAgB,iBAAiB,IAAI,IAAI,CAKxC"}
|
package/dist/mcp/tools/auth.js
CHANGED
|
@@ -35,6 +35,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
36
|
exports.formationAuthStatusTool = exports.formationLogoutTool = exports.formationSetTokenTool = exports.formationLoginTool = void 0;
|
|
37
37
|
exports.getAuthToken = getAuthToken;
|
|
38
|
+
exports.getUserId = getUserId;
|
|
38
39
|
exports.isAuthenticated = isAuthenticated;
|
|
39
40
|
exports.registerAuthTools = registerAuthTools;
|
|
40
41
|
const index_1 = require("./index");
|
|
@@ -68,49 +69,59 @@ const handleFormationLogin = async (_args, _store) => {
|
|
|
68
69
|
instructions: [
|
|
69
70
|
'1. A browser window has been opened to the Lovie dashboard',
|
|
70
71
|
'2. Log in if you are not already logged in',
|
|
71
|
-
'3. On the dashboard,
|
|
72
|
-
'4.
|
|
73
|
-
'5. Use formation_set_token to provide the token',
|
|
72
|
+
'3. On the dashboard, find and copy your **User ID** (starts with "user_...")',
|
|
73
|
+
'4. Also copy the **session token** (starts with "eyJ...")',
|
|
74
|
+
'5. Use formation_set_token to provide both the token and userId',
|
|
74
75
|
],
|
|
75
|
-
nextStep: 'After copying
|
|
76
|
+
nextStep: 'After copying both values, call formation_set_token with your token and userId.',
|
|
76
77
|
};
|
|
77
78
|
};
|
|
78
79
|
// formation_set_token tool
|
|
79
80
|
exports.formationSetTokenTool = {
|
|
80
81
|
name: 'formation_set_token',
|
|
81
|
-
description: 'Set the authentication token after copying
|
|
82
|
+
description: 'Set the authentication token and user ID after copying them from the Lovie dashboard. This authenticates your MCP session.',
|
|
82
83
|
inputSchema: {
|
|
83
84
|
type: 'object',
|
|
84
85
|
properties: {
|
|
85
86
|
token: {
|
|
86
87
|
type: 'string',
|
|
87
|
-
description: 'The session token from the Lovie dashboard (starts with "eyJ...")'
|
|
88
|
+
description: 'The session token from the Lovie dashboard (starts with "eyJ...")',
|
|
89
|
+
},
|
|
90
|
+
userId: {
|
|
91
|
+
type: 'string',
|
|
92
|
+
description: 'The User ID from the Lovie dashboard (starts with "user_...")',
|
|
88
93
|
},
|
|
89
94
|
},
|
|
90
|
-
required: ['token'],
|
|
95
|
+
required: ['token', 'userId'],
|
|
91
96
|
},
|
|
92
97
|
};
|
|
93
98
|
const handleFormationSetToken = async (args, _store) => {
|
|
94
99
|
const token = args.token;
|
|
100
|
+
const providedUserId = args.userId;
|
|
95
101
|
if (!token) {
|
|
96
102
|
throw (0, errors_1.validationError)('token', 'Token is required');
|
|
97
103
|
}
|
|
98
104
|
if (!token.startsWith('eyJ')) {
|
|
99
105
|
throw (0, errors_1.validationError)('token', 'Invalid token format. Token should start with "eyJ..."');
|
|
100
106
|
}
|
|
101
|
-
|
|
107
|
+
if (!providedUserId) {
|
|
108
|
+
throw (0, errors_1.validationError)('userId', 'User ID is required. Copy it from the dashboard (starts with "user_...")');
|
|
109
|
+
}
|
|
110
|
+
if (!providedUserId.startsWith('user_')) {
|
|
111
|
+
throw (0, errors_1.validationError)('userId', 'Invalid User ID format. User ID should start with "user_..."');
|
|
112
|
+
}
|
|
113
|
+
// Validate JWT format
|
|
102
114
|
try {
|
|
103
115
|
const parts = token.split('.');
|
|
104
116
|
if (parts.length !== 3) {
|
|
105
117
|
throw (0, errors_1.validationError)('token', 'Invalid JWT format');
|
|
106
118
|
}
|
|
107
|
-
const payload = JSON.parse(Buffer.from(parts[1], 'base64').toString('utf-8'));
|
|
108
119
|
// Note: We ignore the JWT's short expiry (Clerk tokens expire in ~60s)
|
|
109
120
|
// Instead, we persist the token for 7 days on our side
|
|
110
121
|
// The token is used for user identification, not for API calls that need fresh tokens
|
|
111
122
|
// Store token and user info with our own timestamp
|
|
112
123
|
authToken = token;
|
|
113
|
-
userId =
|
|
124
|
+
userId = providedUserId; // Use the userId from dashboard, not from JWT
|
|
114
125
|
tokenStoredAt = Date.now();
|
|
115
126
|
// Calculate our 7-day expiry
|
|
116
127
|
const ourExpiresAt = new Date(tokenStoredAt + TOKEN_PERSIST_DURATION_MS);
|
|
@@ -121,7 +132,7 @@ const handleFormationSetToken = async (args, _store) => {
|
|
|
121
132
|
userId,
|
|
122
133
|
expiresAt: ourExpiresAt.toISOString(),
|
|
123
134
|
daysUntilExpiry,
|
|
124
|
-
message: `Successfully authenticated! Your session will remain active for ${daysUntilExpiry} days. You can now use all formation tools.`,
|
|
135
|
+
message: `Successfully authenticated as ${userId}! Your session will remain active for ${daysUntilExpiry} days. You can now use all formation tools.`,
|
|
125
136
|
};
|
|
126
137
|
}
|
|
127
138
|
catch (error) {
|
|
@@ -196,6 +207,10 @@ const handleFormationAuthStatus = async (_args, _store) => {
|
|
|
196
207
|
function getAuthToken() {
|
|
197
208
|
return authToken;
|
|
198
209
|
}
|
|
210
|
+
// Helper function to get current user ID (for other tools to use)
|
|
211
|
+
function getUserId() {
|
|
212
|
+
return userId;
|
|
213
|
+
}
|
|
199
214
|
// Helper function to check if authenticated (uses our 7-day persistence)
|
|
200
215
|
function isAuthenticated() {
|
|
201
216
|
if (!authToken || !tokenStoredAt)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/mcp/tools/auth.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/mcp/tools/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"certificate.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/certificate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,cAAc,EAAE,MAAM,SAAS,CAAC;AAQvD,eAAO,MAAM,gCAAgC,EAAE,cAU9C,CAAC;
|
|
1
|
+
{"version":3,"file":"certificate.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/certificate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,cAAc,EAAE,MAAM,SAAS,CAAC;AAQvD,eAAO,MAAM,gCAAgC,EAAE,cAU9C,CAAC;AAgIF,eAAO,MAAM,+BAA+B,EAAE,cAU7C,CAAC;AA6IF,wBAAgB,wBAAwB,IAAI,IAAI,CAG/C"}
|
|
@@ -63,22 +63,15 @@ const handleFormationGenerateCertificate = async (args, store) => {
|
|
|
63
63
|
if (!isLLC) {
|
|
64
64
|
request.authorizedShares = session.shareStructure?.authorizedShares || 10000000;
|
|
65
65
|
request.parValue = String(session.shareStructure?.parValuePerShare || 0.00001);
|
|
66
|
-
// Use
|
|
67
|
-
|
|
68
|
-
const firstShareholder = session.shareholders[0];
|
|
69
|
-
const incorporatorAddress = firstShareholder?.address || {
|
|
70
|
-
street1: '8 The Green, Suite A',
|
|
71
|
-
city: 'Dover',
|
|
72
|
-
state: 'DE',
|
|
73
|
-
zipCode: '19901',
|
|
74
|
-
};
|
|
66
|
+
// Use the session incorporator or default incorporator (Sema Kurt Caskey)
|
|
67
|
+
const incorporator = session.incorporator || types_1.DEFAULT_INCORPORATOR;
|
|
75
68
|
request.incorporator = {
|
|
76
|
-
name:
|
|
69
|
+
name: incorporator.name,
|
|
77
70
|
address: {
|
|
78
|
-
street:
|
|
79
|
-
city:
|
|
80
|
-
state:
|
|
81
|
-
zipCode:
|
|
71
|
+
street: incorporator.address.street1,
|
|
72
|
+
city: incorporator.address.city,
|
|
73
|
+
state: incorporator.address.state,
|
|
74
|
+
zipCode: incorporator.address.zipCode,
|
|
82
75
|
},
|
|
83
76
|
};
|
|
84
77
|
}
|