# TradeOS

> TradeOS MCP: ticker search, My Agent, chart TA, macro news. npm stdio or HTTP.

- **Type:** MCP server
- **Install:** `agentstack add mcp-tradeos-ai-tradeos-mcp`
- **Verified:** Pending review
- **Seller:** [TradeOS-AI](https://agentstack.voostack.com/s/tradeos-ai)
- **Installs:** 0
- **Latest version:** 1.0.3
- **License:** MIT
- **Upstream author:** [TradeOS-AI](https://github.com/TradeOS-AI)
- **Source:** https://github.com/TradeOS-AI/tradeos-mcp
- **Website:** https://ai.tradeos.xyz/

## Install

```sh
agentstack add mcp-tradeos-ai-tradeos-mcp
```

Requires the [AgentStack CLI](https://agentstack.voostack.com/docs/cli). Works with Claude Code, Cursor, and any MCP-compatible agent.

## About

# tradeos-mcp

TradeOS MCP lets you connect TradeOS trading intelligence to MCP-compatible AI tools, so your assistant can analyze markets, search tickers, compare spreads, use macro context, and manage custom trading agents directly from natural-language prompts.

## Overview

This repo publishes **`@tradeos/tradeos-mcp`** on npm: a **stdio MCP bridge** that proxies tools to TradeOS Streamable HTTP (`mcp-call`). You can connect in two ways:

| Mode                   | Best for                                    | Auth                           |
| ---------------------- | ------------------------------------------- | ------------------------------ |
| **HTTP** (recommended) | Cursor, Claude Code, most MCP clients       | Browser OAuth in the client    |
| **npm stdio**          | Clients that only support `command` / stdio | `TRADEOS_ACCESS_TOKEN` env var |

Production endpoint (both modes ultimately call this):

```text
https://ai.tradeos.xyz/api/agent/mcp/mcp-call
```

Product docs: [TradeOS MCP integration & usage](https://tradeos.gitbook.io/tradeosaifaq/tradeos-mcp-integration-and-usage)

---

## Prerequisites

- [Node.js](https://nodejs.org/) **18+**
- A TradeOS account with MCP API access
- For npm stdio: ability to run a local install (see [Windows notes](#windows-notes))

---

## Option A — HTTP (recommended)

No npm install. The client handles OAuth.

### Cursor

Edit user config `~/.cursor/mcp.json` (Windows: `%USERPROFILE%\.cursor\mcp.json`):

```json
{
  "mcpServers": {
    "tradeos": {
      "url": "https://ai.tradeos.xyz/api/agent/mcp/mcp-call"
    }
  }
}
```

Save, restart Cursor (or refresh MCP in **Settings → MCP**), then complete OAuth when prompted.

### Claude Code (plugin — recommended)

Use the bundled plugin in [`tradeos-skills/`](tradeos-skills/):

```bash
claude --plugin-dir ./tradeos-skills
```

Then complete OAuth and run **`/tradeos:analyze`**. Full plugin workflow (validate, community marketplace submit): [`tradeos-skills/README.md`](tradeos-skills/README.md) — aligned with [Claude plugin docs](https://code.claude.com/docs/en/plugins#submit-your-plugin-to-the-community-marketplace).

---

## Option B — npm stdio bridge

Use when your client requires a local process (`command` + stdio).

### 1. Install locally

**Do not rely on `npx` inside MCP on Windows** (cache/path issues). Install once to a fixed directory:

```bash
mkdir -p ~/tradeos-mcp-run   # Windows: mkdir %USERPROFILE%\Downloads\tradeos-mcp-run
cd ~/tradeos-mcp-run         # Windows: cd %USERPROFILE%\Downloads\tradeos-mcp-run
npm install @tradeos/tradeos-mcp
```

Pin a version if you prefer, e.g. `@tradeos/tradeos-mcp@1.0.0`.

### 2. Get `TRADEOS_ACCESS_TOKEN`

Run the OAuth helper (opens browser → log in on TradeOS → prints token):

```bash
# Linux / macOS
npx -y -p @tradeos/tradeos-mcp tradeos-mcp-oauth

# Or subcommand on main bin:
npx -y @tradeos/tradeos-mcp oauth

# Or, from your install directory:
node node_modules/@tradeos/tradeos-mcp/scripts/fetch-token.mjs
```

**Windows (recommended):**

```cmd
cd /d %USERPROFILE%\Downloads\tradeos-mcp-run
node node_modules\@tradeos\tradeos-mcp\scripts\fetch-token.mjs
```

Copy the printed JWT (`eyJ...`). For **local development of this repo**, copy into `.env`:

```bash
cp .example.env .env
# TRADEOS_ACCESS_TOKEN=eyJ...
```

End users who only `npm install` the package do not need `.env` — set the token in MCP client config (`mcp.json`) instead.

**Do not commit tokens to git.**

### 3. Configure Cursor

```json
{
  "mcpServers": {
    "tradeos-npm": {
      "command": "node",
      "args": [
        "C:/Users/YOU/Downloads/tradeos-mcp-run/node_modules/@tradeos/tradeos-mcp/build/index.js"
      ],
      "env": {
        "TRADEOS_ACCESS_TOKEN": "eyJ..."
      }
    }
  }
}
```

Replace `YOU` and the path with your actual install location. Use forward slashes or escaped backslashes in JSON.

If Cursor cannot find `node`, set the full path:

```json
"command": "C:/nvm4w/nodejs/node.exe"
```

Enable **tradeos-npm** in **Settings → MCP**. Status should show connected with tools listed.

### 4. Verify in terminal (optional)

Environment variables in `mcp.json` **do not** apply to your shell. Set the token in the **same** terminal session:

```cmd
REM Windows CMD
set TRADEOS_ACCESS_TOKEN=eyJ...
node C:\Users\YOU\Downloads\tradeos-mcp-run\node_modules\@tradeos\tradeos-mcp\build\index.js
```

```bash
# Linux / macOS
export TRADEOS_ACCESS_TOKEN=eyJ...
node ~/tradeos-mcp-run/node_modules/@tradeos/tradeos-mcp/build/index.js
```

Success:

```text
[tradeos-mcp] remote: https://ai.tradeos.xyz/api/agent/mcp/mcp-call
[tradeos-mcp] stdio bridge ready
```

Press `Ctrl+C` to stop. Cursor starts its own process; you do not need to keep this terminal open.

---

## Windows notes

1. **Use local `node` + install path in `mcp.json`**, not `npx`, for MCP.
2. If npm cache errors mention `C:\Program Files\nodejs\node_cache`, run once:
   ```cmd
   npm config set cache "%USERPROFILE%\.npm-cache"
   ```
3. **`npx @pkg tradeos-mcp-oauth`** may run the wrong bin on Windows. Prefer:
   ```cmd
   npx -y -p @tradeos/tradeos-mcp tradeos-mcp-oauth
   ```
   or `node .../scripts/fetch-token.mjs` from your install directory.
4. Clear a broken npx cache (quit Cursor first):
   ```cmd
   rmdir /s /q "%USERPROFILE%\.npm-cache\_npx"
   ```

---

## npm package reference

| Item              | Value                                      |
| ----------------- | ------------------------------------------ |
| Package           | `@tradeos/tradeos-mcp`                     |
| MCP Registry name | `io.github.TradeOS-AI/tradeos-mcp`         |
| Bin: MCP bridge   | `tradeos-mcp`                              |
| Bin: OAuth token  | `tradeos-mcp-oauth`                        |
| OAuth subcommand  | `oauth` on bin `tradeos-mcp`               |

Install:

```bash
npm install @tradeos/tradeos-mcp
```

---

## Development (this repo)

```bash
git clone https://github.com/TradeOS-AI/tradeos-mcp.git
cd tradeos-mcp
npm ci
npm run build
npm run oauth:token    # browser OAuth → prints token (copy into .env if needed)
npm run registry:verify
```

| Script                                | Purpose                                             |
| ------------------------------------- | --------------------------------------------------- |
| `npm run build`                       | Compile stdio bridge to `build/`                    |
| `npm run oauth:token`                 | Browser OAuth → print token                         |
| `npm run registry:verify`             | Pre-publish checks (`package.json` ↔ `server.json`) |
| `npm run registry:sync-version ` | Sync version from release tag                       |

---

## Publishing (maintainers)

Push a version tag to trigger [`.github/workflows/publish-mcp.yml`](.github/workflows/publish-mcp.yml):

```bash
git tag v1.0.0
git push origin v1.0.0
```

- Stable tags (`v1.0.0`) publish to npm **`latest`** and the [MCP Registry](https://registry.modelcontextprotocol.io/).
- Pre-release tags (`v1.0.0-beta.1`) publish with an npm dist-tag matching the prerelease label (e.g. `beta`).
- Requires GitHub Actions secret **`NPM_TOKEN`** (Classic **Automation** token for `@tradeos`).

Verify on the registry API:

```bash
curl "https://registry.modelcontextprotocol.io/v0.1/servers?search=io.github.TradeOS-AI/tradeos-mcp"
```

---

## Troubleshooting

| Symptom                                                 | Likely cause                      | Fix                                                                                  |
| ------------------------------------------------------- | --------------------------------- | ------------------------------------------------------------------------------------ |
| `TRADEOS_ACCESS_TOKEN is required`                      | Token not set in env / `mcp.json` | Run oauth helper; set `env` in MCP config                                            |
| `unauthorized` on connect                               | Expired or invalid token          | Re-run oauth; paste fresh JWT (no `Bearer` prefix)                                   |
| `EPERM` / `node_cache`                                  | npm cache under `Program Files`   | `npm config set cache "%USERPROFILE%\.npm-cache"`                                    |
| `TAR_ENTRY_ERROR` / `'tradeos-mcp' is not recognized` | `npx` failed on Windows           | Local install + `node` path in `mcp.json`                                            |
| `MODULE_NOT_FOUND` for `node_modules/...`               | Ran script from wrong directory   | `cd` to install dir or use absolute path                                             |
| Token works in terminal, not in Cursor                  | `mcp.json` path or token mismatch | Match paths; restart Cursor / refresh MCP                                            |
| MCP connects but no tools                               | Wrong server enabled              | Disable broken `localhost` entries; use production HTTP URL or working `tradeos-npm` |

---

## Related

- [`tradeos-skills/`](tradeos-skills/) — Claude Code plugin + analyze skill
- [`server.json`](server.json) — MCP Registry manifest
- [TradeOS MCP FAQ (GitBook)](https://tradeos.gitbook.io/tradeosaifaq/tradeos-mcp-integration-and-usage)

## Source & license

This open-source MCP server is cataloged on AgentStack and links to its original source — we do not rehost the code.

- **Author:** [TradeOS-AI](https://github.com/TradeOS-AI)
- **Source:** [TradeOS-AI/tradeos-mcp](https://github.com/TradeOS-AI/tradeos-mcp)
- **License:** MIT
- **Homepage:** https://ai.tradeos.xyz/

Install and usage instructions live in the source repository linked above.

## Pricing

- **Free** — Free

## Versions

- **1.0.3** — security scan: pending review — Imported from the upstream source.

## Links

- Listing page: https://agentstack.voostack.com/l/mcp-tradeos-ai-tradeos-mcp
- Seller: https://agentstack.voostack.com/s/tradeos-ai
- Browse the marketplace: https://agentstack.voostack.com/browse

---
Listed on AgentStack — the marketplace for AI agent skills and MCP servers. Every listing is security-reviewed. Creators keep 70%.
