@clawmasons/mcp-agent 0.1.1

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 ADDED
@@ -0,0 +1,7 @@
1
+ # @clawmasons/mcp-agent
2
+
3
+ General-purpose MCP agent with REPL and ACP modes for testing and debugging the proxy pipeline
4
+
5
+ ## More Information
6
+
7
+ This package is part of the [Mason](https://github.com/clawmasons/mason) monorepo. See the [main README](https://github.com/clawmasons/mason/blob/main/README.md) for full documentation.
@@ -0,0 +1,23 @@
1
+ import { mcpAgentMaterializer, _setAgentPackage } from "./materializer.js";
2
+ import { mcpAgentMaterializer as mcpAgentMaterializer2 } from "./materializer.js";
3
+ const mcpAgent = {
4
+ name: "mcp-agent",
5
+ aliases: ["mcp"],
6
+ materializer: mcpAgentMaterializer,
7
+ dockerfile: {
8
+ // mcp-agent uses @clawmasons/mcp-agent from node_modules (no global install needed)
9
+ },
10
+ acp: {
11
+ command: "mcp-agent --acp"
12
+ },
13
+ runtime: {
14
+ command: "mcp-agent"
15
+ }
16
+ };
17
+ _setAgentPackage(mcpAgent);
18
+ var agent_package_default = mcpAgent;
19
+ export {
20
+ agent_package_default as default,
21
+ mcpAgentMaterializer2 as mcpAgentMaterializer
22
+ };
23
+ //# sourceMappingURL=agent-package.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/agent-package.ts"],
4
+ "sourcesContent": ["import type { AgentPackage } from \"@clawmasons/agent-sdk\";\nimport { mcpAgentMaterializer, _setAgentPackage } from \"./materializer.js\";\n\nexport { mcpAgentMaterializer } from \"./materializer.js\";\n\nconst mcpAgent: AgentPackage = {\n name: \"mcp-agent\",\n aliases: [\"mcp\"],\n materializer: mcpAgentMaterializer,\n dockerfile: {\n // mcp-agent uses @clawmasons/mcp-agent from node_modules (no global install needed)\n },\n acp: {\n command: \"mcp-agent --acp\",\n },\n runtime: {\n command: \"mcp-agent\",\n },\n};\n\n// Wire the materializer to its parent AgentPackage\n_setAgentPackage(mcpAgent);\n\nexport default mcpAgent;\n"],
5
+ "mappings": "AACA,SAAS,sBAAsB,wBAAwB;AAEvD,SAAS,wBAAAA,6BAA4B;AAErC,MAAM,WAAyB;AAAA,EAC7B,MAAM;AAAA,EACN,SAAS,CAAC,KAAK;AAAA,EACf,cAAc;AAAA,EACd,YAAY;AAAA;AAAA,EAEZ;AAAA,EACA,KAAK;AAAA,IACH,SAAS;AAAA,EACX;AAAA,EACA,SAAS;AAAA,IACP,SAAS;AAAA,EACX;AACF;AAGA,iBAAiB,QAAQ;AAEzB,IAAO,wBAAQ;",
6
+ "names": ["mcpAgentMaterializer"]
7
+ }
@@ -0,0 +1,46 @@
1
+ import {
2
+ generateAgentsMd,
3
+ generateAgentLaunchJson
4
+ } from "@clawmasons/agent-sdk";
5
+ function generateMcpJson(proxyEndpoint, proxyType, proxyToken) {
6
+ const pathSuffix = proxyType === "sse" ? "/sse" : "/mcp";
7
+ const bearerValue = proxyToken ? `Bearer ${proxyToken}` : "Bearer ${MCP_PROXY_TOKEN}";
8
+ const mcpConfig = {
9
+ mcpServers: {
10
+ chapter: {
11
+ type: proxyType,
12
+ url: `${proxyEndpoint}${pathSuffix}`,
13
+ headers: {
14
+ Authorization: bearerValue
15
+ }
16
+ }
17
+ }
18
+ };
19
+ return JSON.stringify(mcpConfig, null, 2);
20
+ }
21
+ let _agentPkg;
22
+ const mcpAgentMaterializer = {
23
+ name: "mcp-agent",
24
+ materializeWorkspace(agent, proxyEndpoint, proxyToken, options) {
25
+ const result = /* @__PURE__ */ new Map();
26
+ const proxyType = agent.proxy?.type ?? "sse";
27
+ result.set(
28
+ ".mcp.json",
29
+ generateMcpJson(proxyEndpoint, proxyType, proxyToken)
30
+ );
31
+ result.set("AGENTS.md", generateAgentsMd(agent));
32
+ result.set(
33
+ "agent-launch.json",
34
+ generateAgentLaunchJson(_agentPkg, agent.credentials, options?.acpMode, void 0, options?.agentArgs)
35
+ );
36
+ return result;
37
+ }
38
+ };
39
+ function _setAgentPackage(pkg) {
40
+ _agentPkg = pkg;
41
+ }
42
+ export {
43
+ _setAgentPackage,
44
+ mcpAgentMaterializer
45
+ };
46
+ //# sourceMappingURL=materializer.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/materializer.ts"],
4
+ "sourcesContent": ["import type { ResolvedAgent } from \"@clawmasons/shared\";\nimport type { RuntimeMaterializer, MaterializationResult, MaterializeOptions, AgentPackage } from \"@clawmasons/agent-sdk\";\nimport {\n generateAgentsMd,\n generateAgentLaunchJson,\n} from \"@clawmasons/agent-sdk\";\n\n/**\n * Generate .mcp.json content for the mcp-agent.\n *\n * Creates a single \"chapter\" MCP server entry pointing at the proxy's\n * unified endpoint: /sse (SSE) or /mcp (streamable-http).\n */\nfunction generateMcpJson(\n proxyEndpoint: string,\n proxyType: \"sse\" | \"streamable-http\",\n proxyToken?: string,\n): string {\n const pathSuffix = proxyType === \"sse\" ? \"/sse\" : \"/mcp\";\n const bearerValue = proxyToken\n ? `Bearer ${proxyToken}`\n : \"Bearer ${MCP_PROXY_TOKEN}\";\n\n const mcpConfig = {\n mcpServers: {\n chapter: {\n type: proxyType,\n url: `${proxyEndpoint}${pathSuffix}`,\n headers: {\n Authorization: bearerValue,\n },\n },\n },\n };\n\n return JSON.stringify(mcpConfig, null, 2);\n}\n\n/** Reference to the parent AgentPackage \u2014 set after construction. */\nlet _agentPkg: AgentPackage;\n\n/**\n * MCP Agent runtime materializer.\n *\n * Generates a minimal workspace directory for the mcp-agent package:\n * - .mcp.json \u2014 MCP server config pointing to chapter-proxy\n * - AGENTS.md \u2014 agent identity and role documentation\n *\n * The mcp-agent is a tool-calling REPL/ACP agent, not a full coding\n * agent, so it does not need slash commands, IDE settings, or extensions.\n */\nexport const mcpAgentMaterializer: RuntimeMaterializer = {\n name: \"mcp-agent\",\n\n materializeWorkspace(\n agent: ResolvedAgent,\n proxyEndpoint: string,\n proxyToken?: string,\n options?: MaterializeOptions,\n ): MaterializationResult {\n const result: MaterializationResult = new Map();\n const proxyType = agent.proxy?.type ?? \"sse\";\n\n // .mcp.json \u2014 MCP server config at workspace root\n result.set(\n \".mcp.json\",\n generateMcpJson(proxyEndpoint, proxyType, proxyToken),\n );\n\n // AGENTS.md \u2014 agent identity and role documentation\n result.set(\"AGENTS.md\", generateAgentsMd(agent));\n\n // agent-launch.json \u2014 tells agent-entry how to bootstrap this agent\n result.set(\n \"agent-launch.json\",\n generateAgentLaunchJson(_agentPkg, agent.credentials, options?.acpMode, undefined, options?.agentArgs),\n );\n\n return result;\n },\n};\n\n/**\n * Set the parent AgentPackage reference (called during package initialization).\n * @internal\n */\nexport function _setAgentPackage(pkg: AgentPackage): void {\n _agentPkg = pkg;\n}\n"],
5
+ "mappings": "AAEA;AAAA,EACE;AAAA,EACA;AAAA,OACK;AAQP,SAAS,gBACP,eACA,WACA,YACQ;AACR,QAAM,aAAa,cAAc,QAAQ,SAAS;AAClD,QAAM,cAAc,aAChB,UAAU,UAAU,KACpB;AAEJ,QAAM,YAAY;AAAA,IAChB,YAAY;AAAA,MACV,SAAS;AAAA,QACP,MAAM;AAAA,QACN,KAAK,GAAG,aAAa,GAAG,UAAU;AAAA,QAClC,SAAS;AAAA,UACP,eAAe;AAAA,QACjB;AAAA,MACF;AAAA,IACF;AAAA,EACF;AAEA,SAAO,KAAK,UAAU,WAAW,MAAM,CAAC;AAC1C;AAGA,IAAI;AAYG,MAAM,uBAA4C;AAAA,EACvD,MAAM;AAAA,EAEN,qBACE,OACA,eACA,YACA,SACuB;AACvB,UAAM,SAAgC,oBAAI,IAAI;AAC9C,UAAM,YAAY,MAAM,OAAO,QAAQ;AAGvC,WAAO;AAAA,MACL;AAAA,MACA,gBAAgB,eAAe,WAAW,UAAU;AAAA,IACtD;AAGA,WAAO,IAAI,aAAa,iBAAiB,KAAK,CAAC;AAG/C,WAAO;AAAA,MACL;AAAA,MACA,wBAAwB,WAAW,MAAM,aAAa,SAAS,SAAS,QAAW,SAAS,SAAS;AAAA,IACvG;AAEA,WAAO;AAAA,EACT;AACF;AAMO,SAAS,iBAAiB,KAAyB;AACxD,cAAY;AACd;",
6
+ "names": []
7
+ }