Skip to content
Guavy Logo GUAVY

Connect Your AI Tool

Connect Guavy's scored market news and sentiment to Claude Desktop, ChatGPT, Cursor, VS Code, the Anthropic API or any LLM framework. Each tab is a step-by-step setup with copy-paste configs.

You will need: A free Guavy API key or sign in to auto-fill it below.
MCP

Claude Desktop

Native MCP support: 21 tools in Claude. The news, sentiment and market data tools cover every live market; the trade-signal tools are crypto-only.

1

Get your Guavy API key

Start free. Your key is on your dashboard as soon as you sign in.

2

Download Claude Desktop

Download Claude Desktop if you don't have it yet, then install and open it.

3

Add Guavy as a connector

Go to Claude Desktop → Settings → Connectors → Add custom connector. Paste the following URL (replace YOUR_GUAVY_API_KEY with your key):

Connector URL
https://guavy.com/mcp?key=YOUR_GUAVY_API_KEY

No Node.js or config files needed. Just paste the URL and you're connected.

4

Grant permission

After adding the connector, click the Configure button and set permission to Always allow to avoid having to authorize each request.

5

Try it

Ask Claude: "What's the latest news on BTC, and how has its sentiment moved this week?"

Claude will call get_recent_briefs and get_sentiment_history and answer from Guavy's data.

Alternative: config file method (requires Node.js)

If custom connectors are not available in your version of Claude Desktop, go to Settings → Developer → Edit Config and add the following to claude_desktop_config.json:

claude_desktop_config.json
{
  "mcpServers": {
    "guavy": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://guavy.com/mcp?key=YOUR_GUAVY_API_KEY"]
    }
  }
}

Requires Node.js installed (Mac: brew install node · Windows: winget install OpenJS.NodeJS · Linux: sudo apt install nodejs npm). Restart Claude Desktop after saving.

21 tools Claude can now call
get_market_summaryget_recommendationsget_recent_buysget_recent_sellsget_current_actionget_trend_historyget_sentiment_historyget_current_trendget_trend_segmentsget_recent_briefssearch_briefsget_instrument_analysissearch_instrumentslist_symbolsget_articleget_price_historyget_indicatorsget_backtest_summaryget_scorecardget_detailget_backtest_history
Sandbox note: The free plan reaches every live market on REST and MCP. MCP calls cost 1-20 tokens per tool, by route tier; the free plan includes 3,000 tokens a month for each market, with a daily cap of 500.
GPT

ChatGPT Custom GPT

Add Guavy to a Custom GPT as an OpenAPI Action

1

Get your Guavy API key

Start free, then copy your API key from the dashboard.

2

Create a Custom GPT

Go to chatgpt.com/gpts → Create a GPT → Configure → Actions → Create new action.

3

Import the OpenAPI schema

In the schema field, import from this URL. ChatGPT reads every Guavy endpoint from it:

OpenAPI schema URL
https://guavy.com/openapi.json
4

Set authentication

Under Authentication, set Type to API Key, Auth type to Bearer, and paste your Guavy API key.

5

Add these instructions to your GPT

Paste into the Instructions field for best results:

GPT Instructions
Use the Guavy Action for every question about market news, sentiment, prices or other market data.
Do not use web search or answer from memory for news, sentiment, prices, signals, or recommendations.
Always call the Guavy API for this data rather than guessing.
When asked about an asset, check its recent news briefs and sentiment history before responding. For a crypto asset, the trade simulator's current action is also available.
If a Guavy action fails, say that Guavy's data was unavailable rather than guessing.
6

Disable web search

Under Capabilities, turn off Web Search so your GPT answers from Guavy's data instead of searching the web.

7

Test it

Ask your GPT: "Summarize the latest news on oil and how its sentiment has moved."

MCP

Cursor / VS Code

Add Guavy as an MCP server in Cursor, or in VS Code with GitHub Copilot

Cursor
1

Open Cursor MCP settings

Go to Cursor Settings → MCP → Add MCP Server.

2

Enter server details

  • Name: Guavy
  • Type: SSE
  • URL: https://guavy.com/mcp
  • Header: Authorization: Bearer YOUR_GUAVY_API_KEY
3

Try it in chat

In Cursor Chat: "@guavy What is the sentiment trend for ETH this week?"

VS Code (GitHub Copilot)
1

Create .vscode/mcp.json in your project

Add this file (replace YOUR_GUAVY_API_KEY):

.vscode/mcp.json
{
  "servers": {
    "guavy": {
      "type": "sse",
      "url": "https://guavy.com/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_GUAVY_API_KEY"
      }
    }
  }
}
2

Reload VS Code

Copilot will auto-discover the 21 Guavy tools. Use them in the Copilot Chat sidebar.

Windsurf: Same SSE config pattern as VS Code. Add the Guavy MCP server in Windsurf's MCP settings panel with the URL and Bearer token header.
API

Anthropic API (Direct Tool Use)

Define Guavy endpoints as tools in your Claude API calls, with no wrapper library

1

Install dependencies

bash
pip install anthropic requests
2

Define tools and run an agentic loop

python
import json
import anthropic
import requests

client = anthropic.Anthropic(api_key="YOUR_ANTHROPIC_KEY")
GUAVY_KEY = "YOUR_GUAVY_API_KEY"
GUAVY_BASE = "https://guavy.com/api/v2/crypto"

tools = [
    {
        "name": "get_recent_briefs",
        "description": "Get a coin's latest scored news briefs: headline, summary, six scores and the assets each may affect",
        "input_schema": {
            "type": "object",
            "properties": {
                "symbol": {"type": "string", "description": "Coin symbol, e.g. BTC"},
                "limit": {"type": "integer", "description": "How many briefs, newest first"}
            },
            "required": ["symbol"]
        }
    },
    {
        "name": "get_market_summary",
        "description": "Get today's AI-generated crypto market summary",
        "input_schema": {"type": "object", "properties": {}}
    }
]

def call_guavy(tool_name, tool_input):
    headers = {"Authorization": f"Bearer {GUAVY_KEY}"}
    if tool_name == "get_recent_briefs":
        r = requests.get(
            f"{GUAVY_BASE}/newsroom/get-recent-briefs/{tool_input['symbol']}",
            headers=headers, params={"limit": tool_input.get("limit", 5)}
        )
    elif tool_name == "get_market_summary":
        r = requests.get(f"{GUAVY_BASE}/newsroom/get-market-summary", headers=headers)
    else:
        return {"error": f"unknown tool {tool_name}"}
    return r.json()

messages = [{"role": "user", "content": "What's the latest news on BTC, and what's the overall crypto mood today?"}]

while True:
    response = client.beta.messages.create(
        model="claude-opus-5-5", max_tokens=16000,
        # If the model declines, the API retries the request on a fallback model
        betas=["server-side-fallback-2026-07-01"], fallbacks="default",
        tools=tools, messages=messages
    )
    if response.stop_reason != "tool_use":
        break
    messages.append({"role": "assistant", "content": response.content})
    messages.append({"role": "user", "content": [
        {"type": "tool_result", "tool_use_id": block.id,
         "content": json.dumps(call_guavy(block.name, block.input))}
        for block in response.content if block.type == "tool_use"
    ]})

print("".join(block.text for block in response.content if block.type == "text"))
Full OpenAPI spec at guavy.com/openapi.json. Import it into any OpenAPI-compatible tool, or generate a client from it.
SDK

LangChain, CrewAI & Any Framework

Two patterns: llms.txt for spec injection, or native MCP through the LangChain adapter

Pattern 1: llms.txt (any framework)
1

Install

bash
pip install anthropic requests
2

Inject the spec and ask for code

Fetches the API spec at runtime, so it's always current with no hardcoding. Works with any LLM or framework that accepts a system prompt.

python
import os, requests, anthropic

GUAVY_KEY     = os.environ["GUAVY_API_KEY"]
ANTHROPIC_KEY = os.environ["ANTHROPIC_API_KEY"]

# Fetch the spec at run time, so new endpoints reach your agent without a code change
spec = requests.get("https://guavy.com/llms.txt").text

system = f"""You are a developer assistant. Use the Guavy API spec below to write
correct requests: never invent an endpoint, parameter or field.

{spec}

Auth: Authorization: Bearer {GUAVY_KEY}
"""

client = anthropic.Anthropic(api_key=ANTHROPIC_KEY)

response = client.beta.messages.create(
    model="claude-opus-5-5",
    max_tokens=16000,
    # If the model declines, the API retries the request on a fallback model
    betas=["server-side-fallback-2026-07-01"],
    fallbacks="default",
    system=system,
    messages=[{"role": "user", "content": "Write a Python function that prints BTC's five newest briefs with their sentiment."}]
)

print("".join(block.text for block in response.content if block.type == "text"))
Pattern 2: Native MCP via LangChain
1

Install dependencies

bash
pip install langchain-mcp-adapters langchain-anthropic langgraph
2

Build an agent that calls Guavy's tools

The agent auto-discovers all 21 Guavy tools and decides which to call based on your question.

python
import os, asyncio
from langchain_mcp_adapters.client import MultiServerMCPClient
from langchain_anthropic import ChatAnthropic
from langgraph.prebuilt import create_react_agent

GUAVY_KEY = os.environ["GUAVY_API_KEY"]

async def ask(agent, question):
    result = await agent.ainvoke({"messages": question})
    print(f"\n> {question}")
    print(result["messages"][-1].content)

async def main():
    client = MultiServerMCPClient({
        "guavy": {
            "url": "https://guavy.com/mcp",
            "transport": "streamable_http",
            "headers": {"Authorization": f"Bearer {GUAVY_KEY}"}
        }
    })
    tools = await client.get_tools()
    agent = create_react_agent(ChatAnthropic(model="claude-opus-5-5"), tools)

    # Each call picks the right tool automatically
    await ask(agent, "What's the latest scored news on ETH?")
    await ask(agent, "What's the ETH sentiment trend over the past 2 weeks?")
    await ask(agent, "Which coins have a buy signal from the trade simulator?")

asyncio.run(main())
Claude on the web: add the same connector URL at claude.ai under Settings → Connectors → Add custom connector, and Claude calls Guavy's tools from the browser. Free Claude plans allow one custom connector.

Ready to go live?

The free Sandbox plan reaches every live market on REST and MCP.