ai. marketintell/ marketintell
by marketintell.ai · remote · local (npm) · no sign-in to list tools · v0.3.1 · published by ai.marketintell
AI analyst desk for stocks, options & crypto with sourced trade setups and a public accuracy record.
17 tools: 1 can delete or cancel things, 11 change things and 5 only read.
Scanned Oct 21, 2026
- Deletes or cancels1Claude Code: deny: see these tools
- Can't be undone0Claude Code: ask
- Changes things11Claude Code: ask: see these tools
- Only reads5Claude Code: allow: see these tools
4 checks matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http marketintell https://api.marketintell.ai/mcpFindings
Matches of fixed checks, with the text they matched.
- Warnchat
The server marks "chat" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "run": a word for a change.
- Warnchat_deep
The server marks "chat_deep" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "run": a word for a change.
The server marks "execute_list_intents" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "execute_list_intents" says "execute": a word for a change.
The server marks "execute_read_portfolio" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "execute_read_portfolio" says "execute": a word for a change.
Tools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
17 tools
Deletes or cancels 1Claude Code: deny
execute_approve_intentApprove a pending trade intent and place the order at the broker.No findings
Why it is in this group
- The name "execute_approve_intent" says "execute": a word for a change.
- The server marks it destructive (destructiveHint: true).
Description, as the server wrote it Approve a pending trade intent and place the order at the broker. Returns the executed_order audit row. Requires `trade` scope.
Annotations the server declares
- title: Approve intent & place order
- readOnlyHint: false
- destructiveHint: true
- idempotentHint: false
- openWorldHint: true
Changes things 11Claude Code: ask
chatRun a query through MarketIntell's brain (auto-routes to T1 fast agent or T2 CoT pipeline based on intent).1 finding
Why it is in this group
- The description's first verb is "run": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "chat" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "run": a word for a change.
Description, as the server wrote it Run a query through MarketIntell's brain (auto-routes to T1 fast agent or T2 CoT pipeline based on intent). Returns synthesized analysis with citations and trade setup when relevant.
Annotations the server declares
- title: Chat with the MarketIntell brain
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
chat_deepRun a query through MarketIntell's T3 supervisor — parallel specialists across technical/derivatives/macro/social/onchain/etc.1 finding
Why it is in this group
- The description's first verb is "run": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "chat_deep" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The description's first verb is "run": a word for a change.
Description, as the server wrote it Run a query through MarketIntell's T3 supervisor — parallel specialists across technical/derivatives/macro/social/onchain/etc. plus synthesis. Slower (~25-40s) and costlier than `chat`. Pro tier only.
Annotations the server declares
- title: Deep multi-specialist analysis (T3)
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
execute_list_intentsList the caller's recent trade intents (pending, executed, rejected).1 finding
Why it is in this group
- The name "execute_list_intents" says "execute": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "execute_list_intents" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":false}; The name "execute_list_intents" says "execute": a word for a change.
Description, as the server wrote it List the caller's recent trade intents (pending, executed, rejected). Requires `trade` scope.
Annotations the server declares
- title: List trade intents
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
execute_propose_intentPropose a trade intent to the user's connected broker.No findings
Why it is in this group
- The name "execute_propose_intent" says "execute": a word for a change.
Description, as the server wrote it Propose a trade intent to the user's connected broker. Writes a pending row the user reviews + approves. Requires `trade` scope. Use this when an agent wants to act on a signal without placing the order itself.
Annotations the server declares
- title: Propose a trade intent (pending review)
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
execute_read_portfolioRead the caller's connected broker account snapshot — equity, cash, buying power, open positions.1 finding
Why it is in this group
- The name "execute_read_portfolio" says "execute": a word for a change.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Findings
- Warn
The server marks "execute_read_portfolio" read-only (readOnlyHint: true), and its own name, description or input give the class "write".
What this check looks forMatched text
annotations: {"readOnlyHint":true,"destructiveHint":false,"idempotentHint":true,"openWorldHint":true}; The name "execute_read_portfolio" says "execute": a word for a change.
Description, as the server wrote it Read the caller's connected broker account snapshot — equity, cash, buying power, open positions. Requires `trade` scope.
Annotations the server declares
- title: Read broker account snapshot
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
healthMarketIntell system health — uptime, cache stats, memory, provider circuit-breaker states.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it MarketIntell system health — uptime, cache stats, memory, provider circuit-breaker states.
Annotations the server declares
- title: System health
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
portfolio_createCreate a new portfolio for the authenticated key.No findings
Why it is in this group
- The name "portfolio_create" says "create": a word for a change.
Description, as the server wrote it Create a new portfolio for the authenticated key. Holdings are token symbol + amount (+ optional entry_price and notes).
Annotations the server declares
- title: Create a portfolio
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
registerStep 2 of MCP self-signup.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Step 2 of MCP self-signup. Submit the challenge id + solved nonce to provision a fresh Free-tier API key. The key is shown ONCE — store it. Pro upgrades go through Stripe checkout; this tool only issues Free keys.
Annotations the server declares
- title: Provision a Free-tier API key
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
register_challengeStep 1 of MCP self-signup.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
Description, as the server wrote it Step 1 of MCP self-signup. Returns a proof-of-work challenge. Solve locally (find a nonce whose sha256 has the required leading zero hex chars), then call `register` with { challenge_id, nonce, name }.
Annotations the server declares
- title: Get a self-signup PoW challenge
- readOnlyHint: false
- destructiveHint: false
- idempotentHint: false
- openWorldHint: false
screenerToken screening — find trending tokens, top gainers, and top losers.No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Token screening — find trending tokens, top gainers, and top losers. Use this to discover what's moving in the market right now.
Annotations the server declares
- title: Token / equity screener
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
signal_performanceRealized signal accuracy — rolling 30-day win rate over CLOSED trade signals, where a win is a real take-profit / in-profit expiry (net positive after fees & leverage) and a loss i…No findings
Why it is in this group
- Nothing in its name or description says what it does, so it is counted as a write.
- The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.
Description, as the server wrote it Realized signal accuracy — rolling 30-day win rate over CLOSED trade signals, where a win is a real take-profit / in-profit expiry (net positive after fees & leverage) and a loss is a real stop-loss / losing expiry. Win-rate is over resolved signals only; flat (break-even) and cancelled/no-fill/ambiguous signals are reported but excluded from the rate. Broken down by timeframe and direction.
Annotations the server declares
- title: Signal accuracy stats
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
Only reads 5Claude Code: allow
alpha_signalsFetch recent alpha signals — automated market intelligence.No findings
Why it is in this group
- The description's first verb is "fetch": a word for reading.
Description, as the server wrote it Fetch recent alpha signals — automated market intelligence. Crypto signals every ~10 min; equities (Beta) every ~30 min during US market hours. Filter by domain to narrow.
Annotations the server declares
- title: Recent alpha signals
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
billing_statusReturn the authenticated key's plan, daily quota usage, monthly LLM-cost-cents, and cap.No findings
Why it is in this group
- The name "billing_status" says "status": a word for reading.
Description, as the server wrote it Return the authenticated key's plan, daily quota usage, monthly LLM-cost-cents, and cap. Mirrors GET /v1/billing/status.
Annotations the server declares
- title: Billing + quota status
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
portfolio_analyzeCompute PnL + risk assessment for a portfolio you own.No findings
Why it is in this group
- The name "portfolio_analyze" says "analyze": a word for reading.
Description, as the server wrote it Compute PnL + risk assessment for a portfolio you own. Returns per-holding pnl, risk_assessment, and top_risks.
Annotations the server declares
- title: Analyze portfolio PnL + risk
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: true
portfolio_listList all portfolios owned by the authenticated key.No findings
Why it is in this group
- The name "portfolio_list" says "list": a word for reading.
Description, as the server wrote it List all portfolios owned by the authenticated key. Returns id, name, holdings, timestamps.
Annotations the server declares
- title: List portfolios
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
sessions_listList the authenticated key's recent chat sessions.No findings
Why it is in this group
- The name "sessions_list" says "list": a word for reading.
Description, as the server wrote it List the authenticated key's recent chat sessions. Useful to resume prior conversations.
Annotations the server declares
- title: List chat sessions
- readOnlyHint: true
- destructiveHint: false
- idempotentHint: true
- openWorldHint: false
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.3.1. Values in angle brackets are yours to fill in.
claude mcp add --transport http marketintell https://api.marketintell.ai/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__marketintell__alpha_signals",
"mcp__marketintell__portfolio_list",
"mcp__marketintell__portfolio_analyze",
"mcp__marketintell__sessions_list",
"mcp__marketintell__billing_status"
],
"ask": [
"mcp__marketintell__chat",
"mcp__marketintell__chat_deep",
"mcp__marketintell__signal_performance",
"mcp__marketintell__screener",
"mcp__marketintell__portfolio_create",
"mcp__marketintell__health",
"mcp__marketintell__register_challenge",
"mcp__marketintell__register",
"mcp__marketintell__execute_propose_intent",
"mcp__marketintell__execute_list_intents",
"mcp__marketintell__execute_read_portfolio"
],
"deny": [
"mcp__marketintell__execute_approve_intent"
]
}
}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 marketintell. Review it before you use it.