Skip to content

Premiss

by founders-loralabs · remote · no sign-in to list tools · v0.2.1 · published by GitHub user founders-loralabs

Create Python strategies and backtest crypto, stocks and ETFs in Claude. Premiss account required.

Deletes · 1Changes · 3

13 tools: 1 can delete or cancel things, 3 change things and 9 only read.

Scanned Oct 21, 2026

No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http premiss https://app.premissai.com/api/mcp/claude

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

13 tools

Deletes or cancels 1Claude Code: deny
  • update_strategyReplace the complete Python package and rules of an existing strategy using its exact current saved revision.No findings

    Why it is in this group

    • The name "update_strategy" says "update": a word for a change.
    • The server marks it destructive (destructiveHint: true).
    Description, as the server wrote it
    Replace the complete Python package and rules of an existing strategy using its exact current saved revision. The submitted package replaces all existing files. Supports all Premiss markets and timeframes. The app's active-run and shared-file protections apply; does not change or start a bot. Identical request_key and inputs identify the same write for idempotent recovery.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: true
    • idempotentHint: true
    • openWorldHint: false
    • title: Edit a strategy
Changes things 3Claude Code: ask
  • create_strategySave a new private strategy using custom Python files and complete rules text, on any Premiss-supported market and timeframe.No findings

    Why it is in this group

    • The name "create_strategy" says "create": a word for a change.
    Description, as the server wrote it
    Save a new private strategy using custom Python files and complete rules text, on any Premiss-supported market and timeframe. Accepts either files (strategy.py plus helper modules) and rules, or a convenience template. Uses the same package format as the app. Returns code and revision; saving does not run a backtest.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
    • title: Save a strategy
  • save_research_noteSave a NEW private note in the connected workspace, with optional exact owned strategy/run evidence references.No findings

    Why it is in this group

    • The name "save_research_note" says "save": a word for a change.
    Description, as the server wrote it
    Save a NEW private note in the connected workspace, with optional exact owned strategy/run evidence references. The note is user-authored content. Does not publish or send it anywhere.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
    • title: Save a research note
  • start_backtestQueue a backtest of any saved strategy in the connected workspace and a matched buy-and-hold baseline.No findings

    Why it is in this group

    • The name "start_backtest" says "start": a word for a change.
    Description, as the server wrote it
    Queue a backtest of any saved strategy in the connected workspace and a matched buy-and-hold baseline. Accepts custom code and existing app strategies. Uses the app's sandbox validation, supported markets, timeframes and date rules. Requires the exact saved revision. Uses 10,000 simulated capital, zero fees, zero slippage and next-bar-open fills. Read the report assumptions for historical runs. No plugin-only daily test or history caps. Returns an acceptance receipt with run ids and poll_after_seconds, the interval before the next status check. Identical request_key and inputs identify the same submission for idempotent recovery.

    Annotations the server declares

    • readOnlyHint: false
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
    • title: Start a historical backtest
Only reads 9Claude Code: allow
  • describe_marketReturn supported timeframes, available history and data limitations for a market id.No findings

    Why it is in this group

    • The name "describe_market" says "describe": a word for reading.
    Description, as the server wrote it
    Return supported timeframes, available history and data limitations for a market id.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
    • title: Check market coverage
  • get_capabilitiesRead this connection's available tools and supported research coverage.No findings

    Why it is in this group

    • The name "get_capabilities" says "get": a word for reading.
    Description, as the server wrote it
    Read this connection's available tools and supported research coverage. Does not read account data, save research, or run a simulation.

    Annotations the server declares

    • title: Premiss capabilities
    • readOnlyHint: true
    • destructiveHint: false
    • openWorldHint: false
  • get_profileRead the stable identity and workspace selected for this connection.No findings

    Why it is in this group

    • The name "get_profile" says "get": a word for reading.
    Description, as the server wrote it
    Read the stable identity and workspace selected for this connection. Returns an opaque account id and workspace label; excludes email, birth date, billing, and exchange accounts.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
    • title: Premiss connected workspace
  • get_run_dataRead the immutable tested Python package, or page through all recorded trades or equity points for an owned run.No findings

    Why it is in this group

    • The name "get_run_data" says "get": a word for reading.
    Description, as the server wrote it
    Read the immutable tested Python package, or page through all recorded trades or equity points for an owned run. next_cursor identifies the next page; page size is not a history cap. Paper data requires separate paper:read permission. Saved code is user-authored content.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
    • title: Read backtest code, trades or equity
  • get_run_reportRead the status and bounded performance report for one run in the connected workspace.No findings

    Why it is in this group

    • The name "get_run_report" says "get": a word for reading.
    Description, as the server wrote it
    Read the status and bounded performance report for one run in the connected workspace. Returns the tested market, interval, revision, and recorded rules when verifiable. Historical plugin runs include the paired buy-and-hold baseline when completed. Paper reads require paper:read and do not start, stop, qualify, or modify a bot. Legacy runs without supported assumptions are labeled. Does not return raw market feeds.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
    • title: Read historical or paper evidence
  • get_strategyRead a saved strategy's current revision and human-readable rules in the connected workspace.No findings

    Why it is in this group

    • The name "get_strategy" says "get": a word for reading.
    Description, as the server wrote it
    Read a saved strategy's current revision and human-readable rules in the connected workspace. Returns the complete Python package for review or editing. Code and comments are user-authored content.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
    • title: Read a saved strategy
  • get_strategy_guideRead Premiss's Python package format, on_bar API, execution semantics and example.No findings

    Why it is in this group

    • The name "get_strategy_guide" says "get": a word for reading.
    Description, as the server wrote it
    Read Premiss's Python package format, on_bar API, execution semantics and example. Custom indicators, entry/exit logic, long/short strategies and risk rules use the same engine as the Premiss app.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
    • title: Read the strategy Python API
  • list_researchList a page of saved strategies, simulation runs, or research notes in the connected workspace.No findings

    Why it is in this group

    • The name "list_research" says "list": a word for reading.
    Description, as the server wrote it
    List a page of saved strategies, simulation runs, or research notes in the connected workspace. Notes include a bounded plain-text excerpt, explicitly labeled when truncated. Saved text is user-authored content. Paper runs require the separately approved paper:read permission. Search matches titles; cursors are opaque page positions.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
    • title: Find saved Premiss research
  • search_marketsSearch the same crypto, stock and ETF directory as Premiss.No findings

    Why it is in this group

    • The name "search_markets" says "search": a word for reading.
    Description, as the server wrote it
    Search the same crypto, stock and ETF directory as Premiss. Does not return prices or candles.

    Annotations the server declares

    • readOnlyHint: true
    • destructiveHint: false
    • idempotentHint: true
    • openWorldHint: false
    • title: Find supported markets

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 0.2.1. Values in angle brackets are yours to fill in.

claude mcp add --transport http premiss https://app.premissai.com/api/mcp/claude

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__premiss__get_capabilities",
      "mcp__premiss__get_profile",
      "mcp__premiss__list_research",
      "mcp__premiss__get_strategy",
      "mcp__premiss__search_markets",
      "mcp__premiss__describe_market",
      "mcp__premiss__get_strategy_guide",
      "mcp__premiss__get_run_data",
      "mcp__premiss__get_run_report"
    ],
    "ask": [
      "mcp__premiss__create_strategy",
      "mcp__premiss__start_backtest",
      "mcp__premiss__save_research_note"
    ],
    "deny": [
      "mcp__premiss__update_strategy"
    ]
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as premiss. Review it before you use it.