@chartobserver/mcp-server 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/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.2.2 — 2026-06-12
4
+
5
+ The self-serve credentials page is now live in production.
6
+
7
+ - README, SECURITY.md, server instructions, and config error hints now point
8
+ to the real credentials page: https://chart.observer/integrations/mcp
9
+ (Integrations → AI Agent (MCP)) — masked webhook ID with reveal, copy
10
+ buttons, and a pre-filled MCP config snippet.
11
+ - Removed the interim "ask Brian" fallback; the package is now fully
12
+ self-serve: sign up at https://chart.observer, copy credentials, connect.
13
+
3
14
  ## 0.2.1 — 2026-06-12
4
15
 
5
16
  Agent-facing signup guidance. No behavior changes to tools or transport.
package/README.md CHANGED
@@ -45,9 +45,7 @@ Restart Claude Desktop. The tools become available in any conversation.
45
45
 
46
46
  ### Where to find your credentials
47
47
 
48
- Sign in at https://chart.observer and open **SettingsAPI & Integrations**. The page shows your webhook ID, UID, and username with copy buttons and a pre-filled config snippet.
49
-
50
- (Until that settings page ships, ask Brian for your three values.)
48
+ Sign in at https://chart.observer and open **IntegrationsAI Agent (MCP)** — or go directly to https://chart.observer/integrations/mcp. The page shows your webhook ID, UID, and username with copy buttons and a pre-filled config snippet you can paste straight into your MCP client.
51
49
 
52
50
  ## Environment variables
53
51
 
@@ -97,7 +95,7 @@ Sign in at https://chart.observer and open **Settings → API & Integrations**.
97
95
  - **`place_trade` defaults to dry-run.** The AI agent must explicitly pass `dry_run: false` to execute. You should be asked for confirmation before that happens.
98
96
  - **Live trades are validated.** Execution runs the same checks as the dry run (sufficient funds, position size, well-formed quantities) and refuses trades that would fail, without calling the API.
99
97
  - **Secret redaction.** Error text returned to the agent is sanitized; the webhook credential is redacted as defense-in-depth so it cannot leak into transcripts.
100
- - **Bearer-secret auth.** The webhook ID acts as a bearer token. If it leaks, anyone can act on your account. Don't paste it into screenshots, logs, or chat messages. If you suspect compromise, regenerate it from Settings → API & Integrations.
98
+ - **Bearer-secret auth.** The webhook ID acts as a bearer token. If it leaks, anyone can act on your account. Don't paste it into screenshots, logs, or chat messages. If you suspect compromise, regenerate it from https://chart.observer/integrations/mcp.
101
99
  - **No account creation.** Sign up at https://chart.observer in a browser. Web signup requires a CAPTCHA, which a headless MCP server can't solve.
102
100
 
103
101
  ## What's not in v1
package/SECURITY.md CHANGED
@@ -37,7 +37,7 @@ standing and visible portfolio, not real funds). Treat it like a password:
37
37
  - This server sanitizes its error output and redacts the credential from any
38
38
  text returned to the AI agent, as defense-in-depth.
39
39
  - If you suspect it leaked, regenerate it from your ChartObserver account
40
- settings (Settings → API & Integrations) — the old value stops working
40
+ settings (https://chart.observer/integrations/mcp) — the old value stops working
41
41
  immediately.
42
42
 
43
43
  ## Reporting a vulnerability
package/dist/config.d.ts CHANGED
@@ -8,6 +8,6 @@ export interface Config {
8
8
  }
9
9
  export declare const DEFAULT_API_BASE = "https://g2uyqqluc4.execute-api.us-east-2.amazonaws.com/dev";
10
10
  export declare const DEFAULT_TIMEOUT_MS = 15000;
11
- export declare const PACKAGE_VERSION = "0.2.1";
11
+ export declare const PACKAGE_VERSION = "0.2.2";
12
12
  export declare const CREDENTIALS_HINT: string;
13
13
  export declare function loadConfig(env?: NodeJS.ProcessEnv): Config;
package/dist/config.js CHANGED
@@ -1,11 +1,11 @@
1
1
  import { z } from "zod";
2
2
  export const DEFAULT_API_BASE = "https://g2uyqqluc4.execute-api.us-east-2.amazonaws.com/dev";
3
3
  export const DEFAULT_TIMEOUT_MS = 15_000;
4
- export const PACKAGE_VERSION = "0.2.1";
4
+ export const PACKAGE_VERSION = "0.2.2";
5
5
  export const CREDENTIALS_HINT = "These values come from your chart.observer account: create one in a " +
6
6
  "browser at https://chart.observer (accounts cannot be created via this " +
7
- "server), then copy your webhook ID, UID, and username from Settings → " +
8
- "API & Integrations.";
7
+ "server), then copy your webhook ID, UID, and username from " +
8
+ "https://chart.observer/integrations/mcp (Integrations → AI Agent (MCP)).";
9
9
  // Validation messages must never echo the webhook value — they can end up in
10
10
  // MCP client logs.
11
11
  const configSchema = z.object({
@@ -11,8 +11,9 @@ export const SERVER_INSTRUCTIONS = [
11
11
  "and must be done by the user in a browser at https://chart.observer).",
12
12
  "If the configured credentials are missing or invalid, tell the user to:",
13
13
  "(1) create an account at https://chart.observer in their browser, then",
14
- "(2) copy their webhook ID, UID, and username from Settings → API &",
15
- "Integrations into this server's environment variables (see the package",
14
+ "(2) copy their webhook ID, UID, and username from",
15
+ "https://chart.observer/integrations/mcp into this server's environment",
16
+ "variables (see the package",
16
17
  "README). All trading is simulated paper trading — no real funds move — but",
17
18
  "trades do affect the user's public leaderboard standing, so always confirm",
18
19
  "with the user before executing a trade (place_trade defaults to dry_run).",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chartobserver/mcp-server",
3
- "version": "0.2.1",
3
+ "version": "0.2.2",
4
4
  "description": "MCP server for the ChartObserver paper-trading platform. Lets an AI agent (Claude Desktop, etc.) read portfolio state, place trades, and check the leaderboard on behalf of the configured user.",
5
5
  "license": "MIT",
6
6
  "author": "ChartObserver Corp",