@rymi/mcp 2.3.0 → 2.5.0
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 +5 -1
- package/dist/index.js +37 -2
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -63,7 +63,7 @@ Run the server on your own machine — it speaks **stdio** by default and talks
|
|
|
63
63
|
}
|
|
64
64
|
```
|
|
65
65
|
|
|
66
|
-
> **Options:** `RYMI_MCP_READONLY=1` hides every mutating tool (including `create_call`, `batch_call`, `publish_agent`).
|
|
66
|
+
> **Options:** `RYMI_MCP_READONLY=1` hides every mutating tool (including `create_call`, `batch_call`, `publish_agent`). `RYMI_WORKSPACE` makes the local server act in that workspace (sent as the `Rymi-Workspace` header). On the hosted endpoint, send the `Rymi-Workspace` header on the HTTP request instead.
|
|
67
67
|
>
|
|
68
68
|
> This package speaks **stdio** only. `--transport http` was removed in 2.0.0 — use the hosted endpoint above, which the local server could never match on auth (it has no OAuth, and no per-key tool gating).
|
|
69
69
|
|
|
@@ -135,6 +135,10 @@ Run the server on your own machine — it speaks **stdio** by default and talks
|
|
|
135
135
|
<td><b>Billing & cost</b></td>
|
|
136
136
|
<td><code>estimate_call_cost</code> · <code>set_auto_recharge</code> · <code>set_spend_alerts</code></td>
|
|
137
137
|
</tr>
|
|
138
|
+
<tr>
|
|
139
|
+
<td><b>Workspaces</b></td>
|
|
140
|
+
<td><code>list_workspaces</code> · <code>create_workspace</code> · <code>get_workspace_usage</code></td>
|
|
141
|
+
</tr>
|
|
138
142
|
</table>
|
|
139
143
|
|
|
140
144
|
### ⚠️ Gated tools
|
package/dist/index.js
CHANGED
|
@@ -1637,6 +1637,40 @@ var require_dist = __commonJS({
|
|
|
1637
1637
|
run: (client, { agent_id }) => client.agents.regenerateShareLink(agent_id)
|
|
1638
1638
|
})
|
|
1639
1639
|
];
|
|
1640
|
+
var import_zod13 = require("zod");
|
|
1641
|
+
var workspaceTools = [
|
|
1642
|
+
defineTool({
|
|
1643
|
+
name: "list_workspaces",
|
|
1644
|
+
description: "List the workspaces this credential can act in, marking the current one. Client workspaces show their agency in parent_id. Act in another by setting RYMI_WORKSPACE (local MCP) or the Rymi-Workspace header.",
|
|
1645
|
+
scope: "account",
|
|
1646
|
+
risk: "read",
|
|
1647
|
+
input: {},
|
|
1648
|
+
run: (client) => client.workspaces.list()
|
|
1649
|
+
}),
|
|
1650
|
+
defineTool({
|
|
1651
|
+
name: "create_workspace",
|
|
1652
|
+
description: "Create a standalone workspace you own, or, with parent, a client workspace of an agency workspace you run. The agency pays for a client workspace's calls. Neither gets the free monthly credit.",
|
|
1653
|
+
scope: "account",
|
|
1654
|
+
risk: "write",
|
|
1655
|
+
input: {
|
|
1656
|
+
name: import_zod13.z.string().min(1).max(80).describe("Workspace name"),
|
|
1657
|
+
operating_country: import_zod13.z.string().length(2).optional().describe('ISO-3166 alpha-2 country, e.g. "IN"'),
|
|
1658
|
+
parent: import_zod13.z.string().optional().describe("Agency workspace id. Makes this a client workspace the agency pays for.")
|
|
1659
|
+
},
|
|
1660
|
+
run: (client, params) => client.workspaces.create(params)
|
|
1661
|
+
}),
|
|
1662
|
+
defineTool({
|
|
1663
|
+
name: "get_workspace_usage",
|
|
1664
|
+
description: "Calls, minutes and credits for one workspace in a calendar month (UTC). Use it to invoice a client workspace. Credits are left out for client-role users.",
|
|
1665
|
+
scope: "account",
|
|
1666
|
+
risk: "read",
|
|
1667
|
+
input: {
|
|
1668
|
+
workspace_id: import_zod13.z.string().describe("Workspace id from list_workspaces"),
|
|
1669
|
+
month: import_zod13.z.string().regex(/^\d{4}-\d{2}$/).optional().describe("YYYY-MM; default this month")
|
|
1670
|
+
},
|
|
1671
|
+
run: (client, params) => client.workspaces.usage(params.workspace_id, { month: params.month })
|
|
1672
|
+
})
|
|
1673
|
+
];
|
|
1640
1674
|
var import_agentTools2 = (init_agentTools(), __toCommonJS(agentTools_exports));
|
|
1641
1675
|
var REDACTED = "[redacted]";
|
|
1642
1676
|
function redactToolSecrets(value) {
|
|
@@ -1670,7 +1704,8 @@ var require_dist = __commonJS({
|
|
|
1670
1704
|
...webhookTools,
|
|
1671
1705
|
...billingTools,
|
|
1672
1706
|
...campaignTools,
|
|
1673
|
-
...shareLinkTools
|
|
1707
|
+
...shareLinkTools,
|
|
1708
|
+
...workspaceTools
|
|
1674
1709
|
].map((t) => ({ ...t, run: async (client, params) => redactToolSecrets(await t.run(client, params)) }));
|
|
1675
1710
|
var names = /* @__PURE__ */ new Set();
|
|
1676
1711
|
for (const tool of opsToolCatalog2) {
|
|
@@ -1706,7 +1741,7 @@ function withToolErrors(handler) {
|
|
|
1706
1741
|
// package.json
|
|
1707
1742
|
var package_default = {
|
|
1708
1743
|
name: "@rymi/mcp",
|
|
1709
|
-
version: "2.
|
|
1744
|
+
version: "2.5.0",
|
|
1710
1745
|
description: "Rymi MCP server \u2014 manage AI voice agents via Model Context Protocol",
|
|
1711
1746
|
license: "MIT",
|
|
1712
1747
|
author: "Rymi AI <engineering@rymi.live>",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rymi/mcp",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.5.0",
|
|
4
4
|
"description": "Rymi MCP server — manage AI voice agents via Model Context Protocol",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"author": "Rymi AI <engineering@rymi.live>",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
46
|
"@modelcontextprotocol/sdk": "^1.11.1",
|
|
47
|
-
"@rymi/node": "^2.
|
|
47
|
+
"@rymi/node": "^2.4.0",
|
|
48
48
|
"zod": "^3.23.0"
|
|
49
49
|
},
|
|
50
50
|
"devDependencies": {
|