agent-signal
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-signalClaude 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
23 MCP Tools
Smart Combo Tools (recommended)
Tool | What it does |
| Start session + get category intelligence + similar session outcomes — all in one call |
| Log product evaluation + get product intelligence + deal verdict — all in one call |
Buyer Intelligence — Shop Smarter
Tool | What it tells you |
| Selection rate, rejection reasons, which competitors beat it and why |
| Top picks, decision factors, common requirements, average budgets |
| Stock accuracy, selection rate, purchase outcomes by merchant |
| What agents with similar constraints ended up choosing |
| Price verdict against historical data — best_price_ever to above_average |
| Stock issues, high rejection rates, abandonment signals |
| Products that exactly match your constraints — skip the search |
Seller Intelligence — Understand Your Market
Tool | What it tells you |
| Category rank, head-to-head win rate, who beats you and why, price positioning |
| Why agents reject your product, weekly trends, what they chose instead |
| What agents are searching for, unmet needs, budget distribution, market gaps |
| Full merchant report — stock reliability, price competitiveness, selection rates by category |
Discovery & Monitoring
Tool | What it tells you |
| Best products within a specific budget — ranked by agent selections, with merchant availability |
| Products trending up or down — compares current vs previous period selection rates |
| Set a price alert — triggers when agents spot the product at or below your target |
| Check which alerts have been triggered by recent agent activity |
Write Tools — Contribute Back
Tool | What it captures |
| Shopping intent, constraints, budget, exclusions |
| Product considered, match score, disposition + rejection reason |
| Products compared, dimensions, winner, deciding factor |
| Final result — purchased, recommended, abandoned, or deferred |
| Bulk import a completed session retroactively |
| 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 timeCategories 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 | ReAct agent with LangGraph + MCP adapter | |
CrewAI | Two-agent crew (researcher + shopper) | |
AutoGen | AutoGen agent with MCP tools | |
OpenAI Agents | OpenAI Agents SDK with Streamable HTTP | |
Claude | 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 |
| Product analytics — consideration rate, rejection reasons |
| Category trends — top factors, budgets, attributes |
| Competitive losses — what X loses to and why |
| Recent sessions (paginated) |
| Full session detail |
| Trigger insight computation |
| 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 3100Architecture
MCP Server — Stdio transport (local) + Streamable HTTP (remote)
REST API — Express on the same port
Database — PostgreSQL (Neon-compatible)
23 MCP tools — 17 read (buyer + seller + discovery) + 6 write
License
MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/dan24ou-cpu/agent-signal'
If you have feedback or need assistance with the MCP directory API, please join our Discord server