@agiflowai/scaffold-mcp 1.0.21 → 1.0.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +14 -0
- package/dist/{ListScaffoldingMethodsTool-Dnd3E5X_.cjs → ListScaffoldingMethodsTool-CkIkgP_u.cjs} +78 -78
- package/dist/{ListScaffoldingMethodsTool-DjhhMWjh.mjs → ListScaffoldingMethodsTool-Cx-0gpV3.mjs} +79 -79
- package/dist/{useScaffoldMethod-BR3ESqor.cjs → claudeCode-DBoEGOeu.cjs} +223 -42
- package/dist/{useScaffoldMethod-DlrzH-3H.mjs → claudeCode-lHW7zQ5G.mjs} +223 -43
- package/dist/cli.cjs +152 -512
- package/dist/cli.mjs +149 -509
- package/dist/{useScaffoldMethod-CJG7ngkT.cjs → geminiCli-BHyWDBcF.cjs} +1 -1
- package/dist/{useScaffoldMethod-DaAZTyIM.mjs → geminiCli-DBdxdDMM.mjs} +1 -1
- package/dist/index.cjs +18 -15
- package/dist/index.d.cts +408 -398
- package/dist/index.d.mts +409 -399
- package/dist/index.mjs +4 -3
- package/dist/src-DXfJFUpv.mjs +808 -0
- package/dist/src-ppHF7rzK.cjs +844 -0
- package/dist/{stdio-Bw7Hyv3X.cjs → tools-CC-lrhQ8.cjs} +3 -351
- package/dist/{stdio-Boc4SGGT.mjs → tools-DtGTxmf-.mjs} +4 -333
- package/package.json +5 -5
- package/dist/phantomCodeCheck-BXQonrXo.mjs +0 -143
- package/dist/phantomCodeCheck-DNkWyMRE.cjs +0 -144
|
@@ -1,23 +1,16 @@
|
|
|
1
|
-
const require_ListScaffoldingMethodsTool = require('./ListScaffoldingMethodsTool-
|
|
1
|
+
const require_ListScaffoldingMethodsTool = require('./ListScaffoldingMethodsTool-CkIkgP_u.cjs');
|
|
2
|
+
let __agiflowai_aicode_utils = require("@agiflowai/aicode-utils");
|
|
3
|
+
let zod = require("zod");
|
|
2
4
|
let node_path = require("node:path");
|
|
3
5
|
node_path = require_ListScaffoldingMethodsTool.__toESM(node_path);
|
|
4
|
-
let __agiflowai_aicode_utils = require("@agiflowai/aicode-utils");
|
|
5
6
|
let js_yaml = require("js-yaml");
|
|
6
7
|
js_yaml = require_ListScaffoldingMethodsTool.__toESM(js_yaml);
|
|
7
8
|
let node_fs = require("node:fs");
|
|
8
9
|
let __composio_json_schema_to_zod = require("@composio/json-schema-to-zod");
|
|
9
|
-
let zod = require("zod");
|
|
10
10
|
let node_fs_promises = require("node:fs/promises");
|
|
11
11
|
node_fs_promises = require_ListScaffoldingMethodsTool.__toESM(node_fs_promises);
|
|
12
12
|
let node_os = require("node:os");
|
|
13
13
|
node_os = require_ListScaffoldingMethodsTool.__toESM(node_os);
|
|
14
|
-
let node_crypto = require("node:crypto");
|
|
15
|
-
let __modelcontextprotocol_sdk_server_streamableHttp_js = require("@modelcontextprotocol/sdk/server/streamableHttp.js");
|
|
16
|
-
let __modelcontextprotocol_sdk_types_js = require("@modelcontextprotocol/sdk/types.js");
|
|
17
|
-
let express = require("express");
|
|
18
|
-
express = require_ListScaffoldingMethodsTool.__toESM(express);
|
|
19
|
-
let __modelcontextprotocol_sdk_server_sse_js = require("@modelcontextprotocol/sdk/server/sse.js");
|
|
20
|
-
let __modelcontextprotocol_sdk_server_stdio_js = require("@modelcontextprotocol/sdk/server/stdio.js");
|
|
21
14
|
|
|
22
15
|
//#region src/services/BoilerplateGeneratorService.ts
|
|
23
16
|
/**
|
|
@@ -1527,329 +1520,6 @@ Parameters:
|
|
|
1527
1520
|
}
|
|
1528
1521
|
};
|
|
1529
1522
|
|
|
1530
|
-
//#endregion
|
|
1531
|
-
//#region src/transports/http.ts
|
|
1532
|
-
/**
|
|
1533
|
-
* HTTP session manager
|
|
1534
|
-
*/
|
|
1535
|
-
var HttpFullSessionManager = class {
|
|
1536
|
-
sessions = /* @__PURE__ */ new Map();
|
|
1537
|
-
getSession(sessionId) {
|
|
1538
|
-
return this.sessions.get(sessionId);
|
|
1539
|
-
}
|
|
1540
|
-
setSession(sessionId, transport, server) {
|
|
1541
|
-
this.sessions.set(sessionId, {
|
|
1542
|
-
transport,
|
|
1543
|
-
server
|
|
1544
|
-
});
|
|
1545
|
-
}
|
|
1546
|
-
deleteSession(sessionId) {
|
|
1547
|
-
const session = this.sessions.get(sessionId);
|
|
1548
|
-
if (session) session.server.close();
|
|
1549
|
-
this.sessions.delete(sessionId);
|
|
1550
|
-
}
|
|
1551
|
-
hasSession(sessionId) {
|
|
1552
|
-
return this.sessions.has(sessionId);
|
|
1553
|
-
}
|
|
1554
|
-
clear() {
|
|
1555
|
-
for (const session of this.sessions.values()) session.server.close();
|
|
1556
|
-
this.sessions.clear();
|
|
1557
|
-
}
|
|
1558
|
-
};
|
|
1559
|
-
/**
|
|
1560
|
-
* HTTP transport handler using Streamable HTTP (protocol version 2025-03-26)
|
|
1561
|
-
* Provides stateful session management with resumability support
|
|
1562
|
-
*/
|
|
1563
|
-
var HttpTransportHandler = class {
|
|
1564
|
-
serverFactory;
|
|
1565
|
-
app;
|
|
1566
|
-
server = null;
|
|
1567
|
-
sessionManager;
|
|
1568
|
-
config;
|
|
1569
|
-
constructor(serverFactory, config) {
|
|
1570
|
-
this.serverFactory = typeof serverFactory === "function" ? serverFactory : () => serverFactory;
|
|
1571
|
-
this.app = (0, express.default)();
|
|
1572
|
-
this.sessionManager = new HttpFullSessionManager();
|
|
1573
|
-
this.config = {
|
|
1574
|
-
mode: config.mode,
|
|
1575
|
-
port: config.port ?? 3e3,
|
|
1576
|
-
host: config.host ?? "localhost"
|
|
1577
|
-
};
|
|
1578
|
-
this.setupMiddleware();
|
|
1579
|
-
this.setupRoutes();
|
|
1580
|
-
}
|
|
1581
|
-
setupMiddleware() {
|
|
1582
|
-
this.app.use(express.default.json());
|
|
1583
|
-
}
|
|
1584
|
-
setupRoutes() {
|
|
1585
|
-
this.app.post("/mcp", async (req, res) => {
|
|
1586
|
-
await this.handlePostRequest(req, res);
|
|
1587
|
-
});
|
|
1588
|
-
this.app.get("/mcp", async (req, res) => {
|
|
1589
|
-
await this.handleGetRequest(req, res);
|
|
1590
|
-
});
|
|
1591
|
-
this.app.delete("/mcp", async (req, res) => {
|
|
1592
|
-
await this.handleDeleteRequest(req, res);
|
|
1593
|
-
});
|
|
1594
|
-
this.app.get("/health", (_req, res) => {
|
|
1595
|
-
res.json({
|
|
1596
|
-
status: "ok",
|
|
1597
|
-
transport: "http"
|
|
1598
|
-
});
|
|
1599
|
-
});
|
|
1600
|
-
}
|
|
1601
|
-
async handlePostRequest(req, res) {
|
|
1602
|
-
const sessionId = req.headers["mcp-session-id"];
|
|
1603
|
-
let transport;
|
|
1604
|
-
if (sessionId && this.sessionManager.hasSession(sessionId)) transport = this.sessionManager.getSession(sessionId).transport;
|
|
1605
|
-
else if (!sessionId && (0, __modelcontextprotocol_sdk_types_js.isInitializeRequest)(req.body)) {
|
|
1606
|
-
const mcpServer = this.serverFactory();
|
|
1607
|
-
transport = new __modelcontextprotocol_sdk_server_streamableHttp_js.StreamableHTTPServerTransport({
|
|
1608
|
-
sessionIdGenerator: () => (0, node_crypto.randomUUID)(),
|
|
1609
|
-
enableJsonResponse: true,
|
|
1610
|
-
onsessioninitialized: (sessionId$1) => {
|
|
1611
|
-
this.sessionManager.setSession(sessionId$1, transport, mcpServer);
|
|
1612
|
-
}
|
|
1613
|
-
});
|
|
1614
|
-
transport.onclose = () => {
|
|
1615
|
-
if (transport.sessionId) this.sessionManager.deleteSession(transport.sessionId);
|
|
1616
|
-
};
|
|
1617
|
-
await mcpServer.connect(transport);
|
|
1618
|
-
} else {
|
|
1619
|
-
res.status(400).json({
|
|
1620
|
-
jsonrpc: "2.0",
|
|
1621
|
-
error: {
|
|
1622
|
-
code: -32e3,
|
|
1623
|
-
message: "Bad Request: No valid session ID provided"
|
|
1624
|
-
},
|
|
1625
|
-
id: null
|
|
1626
|
-
});
|
|
1627
|
-
return;
|
|
1628
|
-
}
|
|
1629
|
-
await transport.handleRequest(req, res, req.body);
|
|
1630
|
-
}
|
|
1631
|
-
async handleGetRequest(req, res) {
|
|
1632
|
-
const sessionId = req.headers["mcp-session-id"];
|
|
1633
|
-
if (!sessionId || !this.sessionManager.hasSession(sessionId)) {
|
|
1634
|
-
res.status(400).send("Invalid or missing session ID");
|
|
1635
|
-
return;
|
|
1636
|
-
}
|
|
1637
|
-
await this.sessionManager.getSession(sessionId).transport.handleRequest(req, res);
|
|
1638
|
-
}
|
|
1639
|
-
async handleDeleteRequest(req, res) {
|
|
1640
|
-
const sessionId = req.headers["mcp-session-id"];
|
|
1641
|
-
if (!sessionId || !this.sessionManager.hasSession(sessionId)) {
|
|
1642
|
-
res.status(400).send("Invalid or missing session ID");
|
|
1643
|
-
return;
|
|
1644
|
-
}
|
|
1645
|
-
await this.sessionManager.getSession(sessionId).transport.handleRequest(req, res);
|
|
1646
|
-
this.sessionManager.deleteSession(sessionId);
|
|
1647
|
-
}
|
|
1648
|
-
async start() {
|
|
1649
|
-
return new Promise((resolve, reject) => {
|
|
1650
|
-
try {
|
|
1651
|
-
this.server = this.app.listen(this.config.port, this.config.host, () => {
|
|
1652
|
-
console.error(`Scaffolding MCP server started on http://${this.config.host}:${this.config.port}/mcp`);
|
|
1653
|
-
console.error(`Health check: http://${this.config.host}:${this.config.port}/health`);
|
|
1654
|
-
resolve();
|
|
1655
|
-
});
|
|
1656
|
-
this.server.on("error", (error) => {
|
|
1657
|
-
reject(error);
|
|
1658
|
-
});
|
|
1659
|
-
} catch (error) {
|
|
1660
|
-
reject(error);
|
|
1661
|
-
}
|
|
1662
|
-
});
|
|
1663
|
-
}
|
|
1664
|
-
async stop() {
|
|
1665
|
-
return new Promise((resolve, reject) => {
|
|
1666
|
-
if (this.server) {
|
|
1667
|
-
this.sessionManager.clear();
|
|
1668
|
-
this.server.close((err) => {
|
|
1669
|
-
if (err) reject(err);
|
|
1670
|
-
else {
|
|
1671
|
-
this.server = null;
|
|
1672
|
-
resolve();
|
|
1673
|
-
}
|
|
1674
|
-
});
|
|
1675
|
-
} else resolve();
|
|
1676
|
-
});
|
|
1677
|
-
}
|
|
1678
|
-
getPort() {
|
|
1679
|
-
return this.config.port;
|
|
1680
|
-
}
|
|
1681
|
-
getHost() {
|
|
1682
|
-
return this.config.host;
|
|
1683
|
-
}
|
|
1684
|
-
};
|
|
1685
|
-
|
|
1686
|
-
//#endregion
|
|
1687
|
-
//#region src/transports/sse.ts
|
|
1688
|
-
/**
|
|
1689
|
-
* Session manager for SSE transports
|
|
1690
|
-
*/
|
|
1691
|
-
var SseSessionManager = class {
|
|
1692
|
-
sessions = /* @__PURE__ */ new Map();
|
|
1693
|
-
getSession(sessionId) {
|
|
1694
|
-
return this.sessions.get(sessionId)?.transport;
|
|
1695
|
-
}
|
|
1696
|
-
setSession(sessionId, transport, server) {
|
|
1697
|
-
this.sessions.set(sessionId, {
|
|
1698
|
-
transport,
|
|
1699
|
-
server
|
|
1700
|
-
});
|
|
1701
|
-
}
|
|
1702
|
-
deleteSession(sessionId) {
|
|
1703
|
-
const session = this.sessions.get(sessionId);
|
|
1704
|
-
if (session) session.server.close();
|
|
1705
|
-
this.sessions.delete(sessionId);
|
|
1706
|
-
}
|
|
1707
|
-
hasSession(sessionId) {
|
|
1708
|
-
return this.sessions.has(sessionId);
|
|
1709
|
-
}
|
|
1710
|
-
clear() {
|
|
1711
|
-
for (const session of this.sessions.values()) session.server.close();
|
|
1712
|
-
this.sessions.clear();
|
|
1713
|
-
}
|
|
1714
|
-
};
|
|
1715
|
-
/**
|
|
1716
|
-
* SSE (Server-Sent Events) transport handler
|
|
1717
|
-
* Legacy transport for backwards compatibility (protocol version 2024-11-05)
|
|
1718
|
-
* Uses separate endpoints: /sse for SSE stream (GET) and /messages for client messages (POST)
|
|
1719
|
-
*/
|
|
1720
|
-
var SseTransportHandler = class {
|
|
1721
|
-
serverFactory;
|
|
1722
|
-
app;
|
|
1723
|
-
server = null;
|
|
1724
|
-
sessionManager;
|
|
1725
|
-
config;
|
|
1726
|
-
constructor(serverFactory, config) {
|
|
1727
|
-
this.serverFactory = typeof serverFactory === "function" ? serverFactory : () => serverFactory;
|
|
1728
|
-
this.app = (0, express.default)();
|
|
1729
|
-
this.sessionManager = new SseSessionManager();
|
|
1730
|
-
this.config = {
|
|
1731
|
-
mode: config.mode,
|
|
1732
|
-
port: config.port ?? 3e3,
|
|
1733
|
-
host: config.host ?? "localhost"
|
|
1734
|
-
};
|
|
1735
|
-
this.setupMiddleware();
|
|
1736
|
-
this.setupRoutes();
|
|
1737
|
-
}
|
|
1738
|
-
setupMiddleware() {
|
|
1739
|
-
this.app.use(express.default.json());
|
|
1740
|
-
}
|
|
1741
|
-
setupRoutes() {
|
|
1742
|
-
this.app.get("/sse", async (req, res) => {
|
|
1743
|
-
await this.handleSseConnection(req, res);
|
|
1744
|
-
});
|
|
1745
|
-
this.app.post("/messages", async (req, res) => {
|
|
1746
|
-
await this.handlePostMessage(req, res);
|
|
1747
|
-
});
|
|
1748
|
-
this.app.get("/health", (_req, res) => {
|
|
1749
|
-
res.json({
|
|
1750
|
-
status: "ok",
|
|
1751
|
-
transport: "sse"
|
|
1752
|
-
});
|
|
1753
|
-
});
|
|
1754
|
-
}
|
|
1755
|
-
async handleSseConnection(_req, res) {
|
|
1756
|
-
try {
|
|
1757
|
-
const mcpServer = this.serverFactory();
|
|
1758
|
-
const transport = new __modelcontextprotocol_sdk_server_sse_js.SSEServerTransport("/messages", res);
|
|
1759
|
-
this.sessionManager.setSession(transport.sessionId, transport, mcpServer);
|
|
1760
|
-
res.on("close", () => {
|
|
1761
|
-
this.sessionManager.deleteSession(transport.sessionId);
|
|
1762
|
-
});
|
|
1763
|
-
await mcpServer.connect(transport);
|
|
1764
|
-
console.error(`SSE session established: ${transport.sessionId}`);
|
|
1765
|
-
} catch (error) {
|
|
1766
|
-
console.error("Error handling SSE connection:", error);
|
|
1767
|
-
if (!res.headersSent) res.status(500).send("Internal Server Error");
|
|
1768
|
-
}
|
|
1769
|
-
}
|
|
1770
|
-
async handlePostMessage(req, res) {
|
|
1771
|
-
const sessionId = req.query.sessionId;
|
|
1772
|
-
if (!sessionId) {
|
|
1773
|
-
res.status(400).send("Missing sessionId query parameter");
|
|
1774
|
-
return;
|
|
1775
|
-
}
|
|
1776
|
-
const transport = this.sessionManager.getSession(sessionId);
|
|
1777
|
-
if (!transport) {
|
|
1778
|
-
res.status(404).send("No transport found for sessionId");
|
|
1779
|
-
return;
|
|
1780
|
-
}
|
|
1781
|
-
try {
|
|
1782
|
-
await transport.handlePostMessage(req, res, req.body);
|
|
1783
|
-
} catch (error) {
|
|
1784
|
-
console.error("Error handling post message:", error);
|
|
1785
|
-
if (!res.headersSent) res.status(500).send("Internal Server Error");
|
|
1786
|
-
}
|
|
1787
|
-
}
|
|
1788
|
-
async start() {
|
|
1789
|
-
return new Promise((resolve, reject) => {
|
|
1790
|
-
try {
|
|
1791
|
-
this.server = this.app.listen(this.config.port, this.config.host, () => {
|
|
1792
|
-
console.error(`Scaffolding MCP server started with SSE transport on http://${this.config.host}:${this.config.port}`);
|
|
1793
|
-
console.error(`SSE endpoint: http://${this.config.host}:${this.config.port}/sse`);
|
|
1794
|
-
console.error(`Messages endpoint: http://${this.config.host}:${this.config.port}/messages`);
|
|
1795
|
-
console.error(`Health check: http://${this.config.host}:${this.config.port}/health`);
|
|
1796
|
-
resolve();
|
|
1797
|
-
});
|
|
1798
|
-
this.server.on("error", (error) => {
|
|
1799
|
-
reject(error);
|
|
1800
|
-
});
|
|
1801
|
-
} catch (error) {
|
|
1802
|
-
reject(error);
|
|
1803
|
-
}
|
|
1804
|
-
});
|
|
1805
|
-
}
|
|
1806
|
-
async stop() {
|
|
1807
|
-
return new Promise((resolve, reject) => {
|
|
1808
|
-
if (this.server) {
|
|
1809
|
-
this.sessionManager.clear();
|
|
1810
|
-
this.server.close((err) => {
|
|
1811
|
-
if (err) reject(err);
|
|
1812
|
-
else {
|
|
1813
|
-
this.server = null;
|
|
1814
|
-
resolve();
|
|
1815
|
-
}
|
|
1816
|
-
});
|
|
1817
|
-
} else resolve();
|
|
1818
|
-
});
|
|
1819
|
-
}
|
|
1820
|
-
getPort() {
|
|
1821
|
-
return this.config.port;
|
|
1822
|
-
}
|
|
1823
|
-
getHost() {
|
|
1824
|
-
return this.config.host;
|
|
1825
|
-
}
|
|
1826
|
-
};
|
|
1827
|
-
|
|
1828
|
-
//#endregion
|
|
1829
|
-
//#region src/transports/stdio.ts
|
|
1830
|
-
/**
|
|
1831
|
-
* Stdio transport handler for MCP server
|
|
1832
|
-
* Used for command-line and direct integrations
|
|
1833
|
-
*/
|
|
1834
|
-
var StdioTransportHandler = class {
|
|
1835
|
-
server;
|
|
1836
|
-
transport = null;
|
|
1837
|
-
constructor(server) {
|
|
1838
|
-
this.server = server;
|
|
1839
|
-
}
|
|
1840
|
-
async start() {
|
|
1841
|
-
this.transport = new __modelcontextprotocol_sdk_server_stdio_js.StdioServerTransport();
|
|
1842
|
-
await this.server.connect(this.transport);
|
|
1843
|
-
console.error("Scaffolding MCP server started on stdio");
|
|
1844
|
-
}
|
|
1845
|
-
async stop() {
|
|
1846
|
-
if (this.transport) {
|
|
1847
|
-
await this.transport.close();
|
|
1848
|
-
this.transport = null;
|
|
1849
|
-
}
|
|
1850
|
-
}
|
|
1851
|
-
};
|
|
1852
|
-
|
|
1853
1523
|
//#endregion
|
|
1854
1524
|
Object.defineProperty(exports, 'BoilerplateGeneratorService', {
|
|
1855
1525
|
enumerable: true,
|
|
@@ -1881,12 +1551,6 @@ Object.defineProperty(exports, 'GenerateFeatureScaffoldTool', {
|
|
|
1881
1551
|
return GenerateFeatureScaffoldTool;
|
|
1882
1552
|
}
|
|
1883
1553
|
});
|
|
1884
|
-
Object.defineProperty(exports, 'HttpTransportHandler', {
|
|
1885
|
-
enumerable: true,
|
|
1886
|
-
get: function () {
|
|
1887
|
-
return HttpTransportHandler;
|
|
1888
|
-
}
|
|
1889
|
-
});
|
|
1890
1554
|
Object.defineProperty(exports, 'ListBoilerplatesTool', {
|
|
1891
1555
|
enumerable: true,
|
|
1892
1556
|
get: function () {
|
|
@@ -1899,18 +1563,6 @@ Object.defineProperty(exports, 'ScaffoldGeneratorService', {
|
|
|
1899
1563
|
return ScaffoldGeneratorService;
|
|
1900
1564
|
}
|
|
1901
1565
|
});
|
|
1902
|
-
Object.defineProperty(exports, 'SseTransportHandler', {
|
|
1903
|
-
enumerable: true,
|
|
1904
|
-
get: function () {
|
|
1905
|
-
return SseTransportHandler;
|
|
1906
|
-
}
|
|
1907
|
-
});
|
|
1908
|
-
Object.defineProperty(exports, 'StdioTransportHandler', {
|
|
1909
|
-
enumerable: true,
|
|
1910
|
-
get: function () {
|
|
1911
|
-
return StdioTransportHandler;
|
|
1912
|
-
}
|
|
1913
|
-
});
|
|
1914
1566
|
Object.defineProperty(exports, 'UseBoilerplateTool', {
|
|
1915
1567
|
enumerable: true,
|
|
1916
1568
|
get: function () {
|