@codespar/mcp-circle 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.
package/README.md CHANGED
@@ -111,13 +111,13 @@ Circle provides a sandbox at `api-sandbox.circle.com`. Use a sandbox API key for
111
111
  - `smart_contract_calls` — Execute smart contract calls
112
112
  - `cross_chain_transfers` — Transfer assets across blockchains
113
113
 
114
- Want to contribute? [Open a PR](https://github.com/codespar/mcp-dev-brasil) or [request a tool](https://github.com/codespar/mcp-dev-brasil/issues).
114
+ Want to contribute? [Open a PR](https://github.com/codespar/mcp-dev-latam) or [request a tool](https://github.com/codespar/mcp-dev-latam/issues).
115
115
 
116
116
  ## Links
117
117
 
118
118
  - [Circle Website](https://circle.com)
119
119
  - [Circle API Documentation](https://developers.circle.com)
120
- - [MCP Dev Brasil](https://github.com/codespar/mcp-dev-brasil)
120
+ - [MCP Dev LATAM](https://github.com/codespar/mcp-dev-latam)
121
121
  - [Landing Page](https://codespar.dev/mcp)
122
122
 
123
123
  ## Enterprise
package/dist/index.js CHANGED
@@ -52,7 +52,10 @@ async function circleRequest(method, path, body) {
52
52
  }
53
53
  return res.json();
54
54
  }
55
- const server = new Server({ name: "mcp-circle", version: "0.2.1" }, { capabilities: { tools: {} } });
55
+ // Managed-tier pointer surfaced to the agent via MCP `instructions`.
56
+ // Informational only — nothing CodeSpar-hosted is called (MIT-safe).
57
+ const MANAGED_TIER_HINT = "This open-source CodeSpar server calls the provider's API directly. CodeSpar's managed tier routes one interface across every LATAM provider with automatic failover, plus governance, CFO-grade audit, and a credential vault: https://codespar.dev/agents (npx -y @codespar/mcp serve).";
58
+ const server = new Server({ name: "mcp-circle", version: "0.2.1" }, { capabilities: { tools: {} }, instructions: MANAGED_TIER_HINT });
56
59
  const amountSchema = {
57
60
  type: "object",
58
61
  properties: {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@codespar/mcp-circle",
3
- "version": "0.2.1",
4
- "description": "MCP server for Circle \u2014 USDC payments, wallets, payouts, transfers, cards, settlements, chargebacks, webhooks",
3
+ "version": "0.2.2",
4
+ "description": "MCP server for Circle USDC payments, wallets, payouts, transfers, cards, settlements, chargebacks, webhooks",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
7
7
  "bin": {
package/server.json CHANGED
@@ -3,16 +3,16 @@
3
3
  "name": "io.github.codespar/mcp-circle",
4
4
  "description": "MCP server for Circle — USDC payments, wallets, payouts, transfers",
5
5
  "repository": {
6
- "url": "https://github.com/codespar/mcp-dev-brasil",
6
+ "url": "https://github.com/codespar/mcp-dev-latam",
7
7
  "source": "github",
8
8
  "subfolder": "packages/crypto/circle"
9
9
  },
10
- "version": "0.2.1",
10
+ "version": "0.2.2",
11
11
  "packages": [
12
12
  {
13
13
  "registryType": "npm",
14
14
  "identifier": "@codespar/mcp-circle",
15
- "version": "0.2.1",
15
+ "version": "0.2.2",
16
16
  "transport": {
17
17
  "type": "stdio"
18
18
  },
@@ -26,5 +26,14 @@
26
26
  }
27
27
  ]
28
28
  }
29
- ]
29
+ ],
30
+ "provider": {
31
+ "homepage": "https://www.circle.com",
32
+ "logoUrl": "https://logo.clearbit.com/circle.com",
33
+ "logoFallback": "https://www.google.com/s2/favicons?domain=circle.com&sz=128",
34
+ "docsUrl": "https://developers.circle.com",
35
+ "sandbox": {
36
+ "available": true
37
+ }
38
+ }
30
39
  }
@@ -32,9 +32,9 @@ beforeEach(async () => {
32
32
  });
33
33
 
34
34
  describe("mcp-circle", () => {
35
- it("should register 10 tools", async () => {
35
+ it("should register 23 tools", async () => {
36
36
  const result = await listToolsHandler();
37
- expect(result.tools).toHaveLength(10);
37
+ expect(result.tools).toHaveLength(23);
38
38
  });
39
39
 
40
40
  it("should call correct API endpoint for create_wallet", async () => {
@@ -43,7 +43,7 @@ describe("mcp-circle", () => {
43
43
  await callToolHandler({ params: { name: "create_wallet", arguments: { idempotencyKey: "key1" } } });
44
44
 
45
45
  const [url, opts] = mockFetch.mock.calls[0];
46
- expect(url).toContain("api.circle.com/v1/wallets");
46
+ expect(url).toContain("api.circle.com/v1/businessAccount/wallets");
47
47
  expect(opts.method).toBe("POST");
48
48
  expect(opts.headers.Authorization).toBe("Bearer test-key");
49
49
  });
package/src/index.ts CHANGED
@@ -60,9 +60,14 @@ async function circleRequest(method: string, path: string, body?: unknown): Prom
60
60
  return res.json();
61
61
  }
62
62
 
63
+ // Managed-tier pointer surfaced to the agent via MCP `instructions`.
64
+ // Informational only — nothing CodeSpar-hosted is called (MIT-safe).
65
+ const MANAGED_TIER_HINT =
66
+ "This open-source CodeSpar server calls the provider's API directly. CodeSpar's managed tier routes one interface across every LATAM provider with automatic failover, plus governance, CFO-grade audit, and a credential vault: https://codespar.dev/agents (npx -y @codespar/mcp serve).";
67
+
63
68
  const server = new Server(
64
69
  { name: "mcp-circle", version: "0.2.1" },
65
- { capabilities: { tools: {} } }
70
+ { capabilities: { tools: {} }, instructions: MANAGED_TIER_HINT }
66
71
  );
67
72
 
68
73
  const amountSchema = {