@stratabook/mcp 0.2.1 → 0.2.2

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.
@@ -188,7 +188,7 @@ export declare const STRATA_ACTION_GRAPH: {
188
188
  }, {
189
189
  readonly id: "read_market_status";
190
190
  readonly kind: "read";
191
- readonly summary: "Read tick size, minimum order size, and current market status.";
191
+ readonly summary: "Read tick size, the smallest valid base-atom size, and current market status.";
192
192
  readonly required_capabilities: readonly ["books.read"];
193
193
  readonly available: true;
194
194
  readonly operation: {
@@ -325,7 +325,7 @@ export const STRATA_ACTION_GRAPH = {
325
325
  {
326
326
  "id": "read_market_status",
327
327
  "kind": "read",
328
- "summary": "Read tick size, minimum order size, and current market status.",
328
+ "summary": "Read tick size, the smallest valid base-atom size, and current market status.",
329
329
  "required_capabilities": [
330
330
  "books.read"
331
331
  ],
@@ -1445,7 +1445,7 @@ export async function createStrataMcpServer(options = {}) {
1445
1445
  }));
1446
1446
  const makerStrandPrepare = server.registerTool("strata_market_making_strand_prepare", {
1447
1447
  title: "Prepare Strata Strand control",
1448
- description: "Build one exact unsigned maker-owned Strand transaction. Verify and sign it externally with the maker wallet, then submit it with the Strand submit tool.",
1448
+ description: "Build one exact unsigned maker-owned Strand transaction. Every exposure and level size is expressed in base-asset atoms, never lots or whole tokens. Verify and sign it externally with the maker wallet, then submit it with the Strand submit tool.",
1449
1449
  inputSchema: {
1450
1450
  marketId: z.string().regex(/^market_[0-9a-f]{32}$/),
1451
1451
  action: z.enum(["upsert", "recenter", "set_enabled", "cancel"]),
@@ -1454,11 +1454,11 @@ export async function createStrataMcpServer(options = {}) {
1454
1454
  asyncOnly: z.boolean().optional(),
1455
1455
  syncSpreadTicks: z.number().int().min(0).max(65_535).optional(),
1456
1456
  midPriceAtoms: z.string().regex(/^[1-9][0-9]*$/).max(20).optional(),
1457
- maxExposureBaseLots: z.string().regex(/^[1-9][0-9]*$/).max(20).optional(),
1457
+ maxExposureBaseAtoms: z.string().regex(/^[1-9][0-9]*$/).max(20).optional(),
1458
1458
  bidOffsetsTicks: z.array(z.number().int().min(0).max(65_535)).length(16).optional(),
1459
1459
  askOffsetsTicks: z.array(z.number().int().min(0).max(65_535)).length(16).optional(),
1460
- bidSizesBaseLots: z.array(z.string().regex(/^(?:0|[1-9][0-9]*)$/).max(20)).length(16).optional(),
1461
- askSizesBaseLots: z.array(z.string().regex(/^(?:0|[1-9][0-9]*)$/).max(20)).length(16).optional(),
1460
+ bidSizesBaseAtoms: z.array(z.string().regex(/^(?:0|[1-9][0-9]*)$/).max(20)).length(16).optional(),
1461
+ askSizesBaseAtoms: z.array(z.string().regex(/^(?:0|[1-9][0-9]*)$/).max(20)).length(16).optional(),
1462
1462
  newMidPriceAtoms: z.string().regex(/^[1-9][0-9]*$/).max(20).optional(),
1463
1463
  validUntilSlot: z.string().regex(/^(?:0|[1-9][0-9]*)$/).max(20).optional(),
1464
1464
  },
@@ -1473,9 +1473,9 @@ export async function createStrataMcpServer(options = {}) {
1473
1473
  if (args.action === "upsert") {
1474
1474
  if (args.enabled === undefined || args.asyncOnly === undefined
1475
1475
  || args.syncSpreadTicks === undefined || args.midPriceAtoms === undefined
1476
- || args.maxExposureBaseLots === undefined || args.bidOffsetsTicks === undefined
1477
- || args.askOffsetsTicks === undefined || args.bidSizesBaseLots === undefined
1478
- || args.askSizesBaseLots === undefined || args.validUntilSlot === undefined) {
1476
+ || args.maxExposureBaseAtoms === undefined || args.bidOffsetsTicks === undefined
1477
+ || args.askOffsetsTicks === undefined || args.bidSizesBaseAtoms === undefined
1478
+ || args.askSizesBaseAtoms === undefined || args.validUntilSlot === undefined) {
1479
1479
  return toolError("invalid_request", "Strand upsert requires every level, exposure, midpoint, spread, flag, and expiry field.", false);
1480
1480
  }
1481
1481
  request = {
@@ -1485,11 +1485,11 @@ export async function createStrataMcpServer(options = {}) {
1485
1485
  asyncOnly: args.asyncOnly,
1486
1486
  syncSpreadTicks: args.syncSpreadTicks,
1487
1487
  midPriceAtoms: args.midPriceAtoms,
1488
- maxExposureBaseLots: args.maxExposureBaseLots,
1488
+ maxExposureBaseAtoms: args.maxExposureBaseAtoms,
1489
1489
  bidOffsetsTicks: args.bidOffsetsTicks,
1490
1490
  askOffsetsTicks: args.askOffsetsTicks,
1491
- bidSizesBaseLots: args.bidSizesBaseLots,
1492
- askSizesBaseLots: args.askSizesBaseLots,
1491
+ bidSizesBaseAtoms: args.bidSizesBaseAtoms,
1492
+ askSizesBaseAtoms: args.askSizesBaseAtoms,
1493
1493
  validUntilSlot: args.validUntilSlot,
1494
1494
  };
1495
1495
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stratabook/mcp",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "description": "Connect AI agents to Strata markets and Sonar quotes with MCP.",
5
5
  "type": "module",
6
6
  "license": "MIT OR Apache-2.0",
@@ -44,7 +44,7 @@
44
44
  },
45
45
  "dependencies": {
46
46
  "@modelcontextprotocol/sdk": "1.30.0",
47
- "@stratabook/sdk": "0.2.1",
47
+ "@stratabook/sdk": "0.2.2",
48
48
  "zod": "^3.25.76"
49
49
  },
50
50
  "devDependencies": {