agent-signal

agent-signal

Collective intelligence for AI shopping agents — product intel, deals, and more

Category
Visit Server

README

AgentSignal

The collective intelligence layer for AI shopping agents.

Every agent that connects makes every other agent smarter. 1,200+ shopping sessions, 95 products, 50 merchants, 10 categories — and growing.

Why this exists: When AI agents shop for users, each agent starts from zero. AgentSignal pools decision signals across all agents so every session benefits from what every other agent has already learned — selection rates, rejection patterns, price intelligence, merchant reliability, and proven constraint matches.

Quick Start (30 seconds)

Remote — zero install, instant intelligence:

{
  "mcpServers": {
    "agent-signal": {
      "url": "https://agent-signal-production.up.railway.app/mcp"
    }
  }
}

Local via npx:

npx agent-signal

Claude Desktop / Claude Code:

{
  "mcpServers": {
    "agent-signal": {
      "command": "npx",
      "args": ["agent-signal"]
    }
  }
}

One Call to Start Shopping Smarter

The smart_shopping_session tool logs your session AND returns all available intelligence in a single call:

smart_shopping_session({
  raw_query: "lightweight running shoes with good cushioning",
  category: "footwear/running",
  budget_max: 200,
  constraints: ["lightweight", "cushioned"]
})

Returns:

  • Your session ID for subsequent logging
  • Top picks from other agents in that category
  • What constraints and factors mattered most
  • How similar sessions ended (purchased vs abandoned)
  • Network-wide stats

19 MCP Tools

Smart Combo Tools (recommended)

Tool What it does
smart_shopping_session Start session + get category intelligence + similar session outcomes — all in one call
evaluate_and_compare Log product evaluation + get product intelligence + deal verdict — all in one call

Buyer Intelligence — Shop Smarter

Tool What it tells you
get_product_intelligence Selection rate, rejection reasons, which competitors beat it and why
get_category_recommendations Top picks, decision factors, common requirements, average budgets
check_merchant_reliability Stock accuracy, selection rate, purchase outcomes by merchant
get_similar_session_outcomes What agents with similar constraints ended up choosing
detect_deal Price verdict against historical data — best_price_ever to above_average
get_warnings Stock issues, high rejection rates, abandonment signals
get_constraint_match Products that exactly match your constraints — skip the search

Seller Intelligence — Understand Your Market

Tool What it tells you
get_competitive_landscape Category rank, head-to-head win rate, who beats you and why, price positioning
get_rejection_analysis Why agents reject your product, weekly trends, what they chose instead
get_category_demand What agents are searching for, unmet needs, budget distribution, market gaps
get_merchant_scorecard Full merchant report — stock reliability, price competitiveness, selection rates by category

Write Tools — Contribute Back

Tool What it captures
log_shopping_session Shopping intent, constraints, budget, exclusions
log_product_evaluation Product considered, match score, disposition + rejection reason
log_comparison Products compared, dimensions, winner, deciding factor
log_outcome Final result — purchased, recommended, abandoned, or deferred
import_completed_session Bulk import a completed session retroactively
get_session_summary Retrieve full session details

Example: Full Agent Workflow

# 1. Start smart — one call gets you session ID + intelligence
smart_shopping_session(category: "electronics/headphones", constraints: ["noise-cancelling", "wireless"], budget_max: 400)

# 2. Evaluate products — get intel as you log
evaluate_and_compare(session_id: "...", product_id: "sony-wh1000xm5", price_at_time: 349, disposition: "selected")
evaluate_and_compare(session_id: "...", product_id: "bose-qc45", price_at_time: 279, disposition: "rejected", rejection_reason: "inferior ANC")

# 3. Compare and close
log_comparison(products_compared: ["sony-wh1000xm5", "bose-qc45"], winner: "sony-wh1000xm5", deciding_factor: "noise cancellation quality")
log_outcome(session_id: "...", outcome_type: "purchased", product_chosen_id: "sony-wh1000xm5")

Every step feeds the network. The next agent shopping for headphones benefits from your data.

Example: Seller Intelligence Workflow

# 1. How is my product performing vs competitors?
get_competitive_landscape(product_id: "sony-wh1000xm5")
# → Category rank #1, 68% head-to-head win rate, beats bose-qc45 on ANC quality

# 2. Why are agents rejecting my product?
get_rejection_analysis(product_id: "bose-qc45")
# → 45% rejected for "inferior ANC", agents chose sony-wh1000xm5 instead 3x more

# 3. What do agents want in my category?
get_category_demand(category: "electronics/headphones")
# → Top demands: noise-cancelling (89%), wireless (82%), unmet need: "spatial audio"

# 4. How does my store perform?
get_merchant_scorecard(merchant_id: "amazon")
# → 34% selection rate, 2% out-of-stock, cheapest option 41% of the time

Categories with Active Intelligence

Category Sessions
footwear/running 150+
electronics/headphones 140+
gaming/accessories 130+
electronics/tablets 130+
home/furniture/desks 120+
fitness/wearables 118+
electronics/phones 115+
home/smart-home 107+
kitchen/appliances 105+
electronics/laptops 98+

Agent Framework Examples

Ready-to-run examples in /examples:

Framework File Description
LangChain langchain-shopping-agent.py ReAct agent with LangGraph + MCP adapter
CrewAI crewai-shopping-crew.py Two-agent crew (researcher + shopper)
AutoGen autogen-shopping-agent.py AutoGen agent with MCP tools
OpenAI Agents openai-agents-shopping.py OpenAI Agents SDK with Streamable HTTP
Claude claude-system-prompt.md Optimized system prompt for Claude Desktop/Code

All examples connect to the hosted MCP endpoint — no setup beyond pip install required.

REST API

Merchant-facing analytics at https://agent-signal-production.up.railway.app/api:

Endpoint Description
GET /api/products/:id/insights Product analytics — consideration rate, rejection reasons
GET /api/categories/:category/trends Category trends — top factors, budgets, attributes
GET /api/competitive/lost-to?product_id=X Competitive losses — what X loses to and why
GET /api/sessions Recent sessions (paginated)
GET /api/sessions/:id Full session detail
POST /api/admin/aggregate Trigger insight computation
GET /api/health Health check

Self-Hosting

git clone https://github.com/dan24ou-cpu/agent-signal.git
cd agent-signal
npm install
cp .env.example .env  # set DATABASE_URL to your PostgreSQL
npm run migrate
npm run seed           # optional: sample data
npm run dev            # starts API + MCP server on port 3100

Architecture

  • MCP Server — Stdio transport (local) + Streamable HTTP (remote)
  • REST API — Express on the same port
  • Database — PostgreSQL (Neon-compatible)
  • 19 MCP tools — 13 read (buyer + seller intelligence) + 6 write

License

MIT

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured