Skip to main content

Python client and MCP server for the Gildea AI market intelligence API

Project description

Gildea

Python client and MCP server for the Gildea AI market intelligence API.

Gildea tracks 500+ expert sources on AI, decomposes every signal into verified reasoning chains (thesis, arguments, claims, evidence), and serves it through a REST API. This package gives you a Python client and an MCP server so AI assistants can use the data directly.

Search uses modern hybrid retrieval — dense and learned sparse embeddings fused via RRF, with cross-encoder reranking — for high precision on verified, citable text units. See How search works for details.

Install

# Python client only
pip install gildea

# With MCP server
pip install gildea[mcp]

Quick Start

from gildea_sdk import Gildea

client = Gildea(api_key="gld_your_key_here")

# Search verified text units
results = client.search(query="data center infrastructure spending")
for hit in results["data"]:
    print(hit["unit"]["text"])
    print(f"  Source: {hit['citation']['signal_title']} ({hit['citation']['registrable_domain']})")

# Get full signal decomposition with evidence
signal = client.signals.get("signal_id", include="evidence")

# Entity intelligence with trend analytics
entity = client.entities.get("NVIDIA")
print(f"{entity['display_name']}: {entity['direction']}, {entity['scale']} scale, {entity['notability']} notability")

# Cross-source consensus mapping
similar = client.search(similar_to="unit_id")

# Embed arbitrary text into Gildea's vector space
vector = client.embed("Data center capex is accelerating.")["embedding"]

Local similarity search

Pair include="embeddings" on signal detail with client.embed() to compute cosine similarity between user content and verified Gildea units, fully client-side:

import numpy as np
from gildea_sdk import Gildea

client = Gildea(api_key="gld_your_key_here")

# 1. Embed user content
user_vec = np.array(client.embed("I think infrastructure spending will slow in H2.")["embedding"])

# 2. Fetch signal with per-unit embeddings
signal = client.signals.get("sig_01JABCDEF123456789", include="embeddings")

# 3. Find semantically related text units
def iter_units(decomp):
    for arg in decomp.get("arguments", []):
        yield from arg.get("sentences", []) + arg.get("claims", [])
    yield from decomp.get("claims", [])
    if "thesis" in decomp:
        yield from decomp["thesis"].get("sentences", [])
    if "summary" in decomp:
        yield from decomp["summary"].get("sentences", [])

for u in iter_units(signal["decomposition"]):
    if "embedding" in u:
        sim = float(np.dot(user_vec, np.array(u["embedding"])))  # both unit-normalized
        if sim > 0.7:
            print(f"[{sim:.3f}] {u['unit']['text']}")

Embeddings are 768-dim BAAI/bge-base-en-v1.5 vectors. Both endpoints return vectors in the same space. See docs.gildea.ai/concepts/embeddings for details.

MCP Server

Use Gildea as a tool in Claude, ChatGPT, Cursor, VS Code, or any MCP-compatible client.

# Run directly
gildea-mcp

# Or via uvx (no install needed)
uvx --from gildea[mcp] gildea-mcp

Set your API key:

export GILDEA_API_KEY=gld_your_key_here

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "gildea": {
      "command": "uvx",
      "args": ["--from", "gildea[mcp]", "gildea-mcp"],
      "env": {
        "GILDEA_API_KEY": "gld_your_key_here"
      }
    }
  }
}

Available MCP Tools

Tool Description
search_text_units Semantic search across verified text units, or vector similarity via similar_to
list_signals Browse signals by entity, theme, date, content type
get_signal_detail Full decomposition: thesis, arguments, claims, evidence
get_entity_profile Entity trend analytics, co-occurrence, theme distribution
list_entities Discover entities by trend direction, notability, scale
get_themes Theme overview across value chain and market force axes
get_theme_detail Single theme trend analytics and cross-theme relationships

API Key

Get your API key at gildea.ai. Free tier includes 5 requests/minute and 200 requests/month.

Documentation

Full API docs at docs.gildea.ai.

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

gildea-0.2.4.tar.gz (18.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

gildea-0.2.4-py3-none-any.whl (15.2 kB view details)

Uploaded Python 3

File details

Details for the file gildea-0.2.4.tar.gz.

File metadata

  • Download URL: gildea-0.2.4.tar.gz
  • Upload date:
  • Size: 18.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for gildea-0.2.4.tar.gz
Algorithm Hash digest
SHA256 11986963f3c34b80acef0bde6c82570b886defd05fa5f3b1ee3ffe91f5072d89
MD5 46cd780f7d584a9af335dcbac46a173a
BLAKE2b-256 4ccd4552145b3f716800ed3307ff3f34e6e5516056d2aa3a9f27c2b2402bfcbe

See more details on using hashes here.

File details

Details for the file gildea-0.2.4-py3-none-any.whl.

File metadata

  • Download URL: gildea-0.2.4-py3-none-any.whl
  • Upload date:
  • Size: 15.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.14

File hashes

Hashes for gildea-0.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 92e16693bf308239f3b90a2e8f86eb05a261a7fe117c66f2a420509f72424372
MD5 1b5cd3e9ca95f44021e07887e562146c
BLAKE2b-256 6c4e4ccbd3e254f78b0035a3bfb5cad52afcecb28bd7f30d99cd59d01796bb5e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page