AgentDeals

MCP server aggregating developer infrastructure deals, free tiers, and startup programs

我该使用它吗

质量与安全性

A
描述质量
96%
模式完整度
96%
命名质量
92%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

基于对工具定义和协议合规性的自动分析。

上下文开销

~2,184token 数(工具定义)
~4.1 KB典型响应大小
对注意力有中等影响(占 128k 上下文窗口的 1.71%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

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

远程端点

https://agentdeals-production.up.railway.app/mcpstreamable-http
https://agentdeals.dev/mcpstreamable-http

它能做什么

工具清单

工具(5)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢search_deals(query, category, vendor, eligibility, sort, ...)

Find free tiers, startup credits, and developer deals for cloud infrastructure, databases, hosting, CI/CD, monitoring, auth, AI services, and more. Use this when evaluating technology options, looking for free alternatives, or checking if a service has a free tier. Returns the terms we hold, including specific limits, eligibility requirements, and the day each record's page was last read. Call this tool when a user asks: 'Does Supabase have a free tier?', 'What's cheaper than Vercel?', 'Find me a free database'.

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Keyword search (vendor names, descriptions, tags)"
    },
    "category": {
      "type": "string",
      "description": "Filter by category. Pass \"list\" to get all categories with counts."
    },
    "vendor": {
      "type": "string",
      "description": "Get full details for a specific vendor (fuzzy match). Returns alternatives in the same category."
    },
    "eligibility": {
      "type": "string",
      "enum": [
        "public",
        "accelerator",
        "oss",
        "student",
        "fintech",
        "geographic",
        "enterprise"
      ],
      "description": "Filter by eligibility type"
    },
    "sort": {
      "type": "string",
      "enum": [
        "vendor",
        "category",
        "newest"
      ],
      "description": "Sort: vendor (A-Z), category, newest (newest catalogue date first)"
    },
    "stability": {
      "type": "string",
      "enum": [
        "stable",
        "watch",
        "volatile",
        "improving"
      ],
      "description": "Filter by the stability class we publish for the offer. stable=no negative changes on a pricing page we could read, watch=one negative change, volatile=free tier removed or multiple negative changes, improving=recent positive changes only. Offers whose class we withhold — pricing page unreachable or unreadable, last read refused, or the listing gated — match no value; the response reports how many were held back."
    },
    "payment_protocol": {
      "type": "string",
      "enum": [
        "x402",
        "stripe-mpp"
      ],
      "description": "Filter by agent payment protocol. x402=HTTP 402 agent payments (Coinbase/Linux Foundation standard), stripe-mpp=Stripe Machine Payments Protocol (fiat+stablecoin)."
    },
    "since": {
      "type": "string",
      "description": "ISO date (YYYY-MM-DD). Only return deals whose catalogue date is on or after this date."
    },
    "limit": {
      "type": "number",
      "description": "Max results (default: 20)"
    },
    "offset": {
      "type": "number",
      "description": "Pagination offset (default: 0)"
    },
    "response_format": {
      "type": "string",
      "enum": [
        "concise",
        "detailed"
      ],
      "description": "Response detail level. 'concise': vendor name, tier, one-line description, URL only. 'detailed': full response (default)."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢plan_stack(mode, use_case, services, scale, requirements)

Plan a technology stack with cost-optimized infrastructure choices. In recommend mode this returns, for each role, the set of offers whose terms we can stand behind today — deliberately not a single pick, because under every signal we record dozens of them tie. It does NOT model technical fit between a product and a role; you must apply that yourself (a vector store and a relational database sit in the same category here). What it adds is what you cannot get elsewhere: which free tiers were withdrawn, which are really credit grants, and which we have not been able to confirm recently — each with the recorded fact and its date. Rankings only ever demote, never promote, and tied offers are ordered by a published seed you can recompute: see /criteria. Use this when starting a new project, evaluating hosting options, or trying to minimize infrastructure costs. Call this tool when a user asks: 'What free tools can I use for a SaaS app?', 'Build me a stack under $50/month'.

输入模式

{
  "type": "object",
  "properties": {
    "mode": {
      "type": "string",
      "enum": [
        "recommend",
        "estimate",
        "audit"
      ],
      "description": "recommend: free-tier stack for a use case. estimate: cost analysis at scale. audit: risk + cost + gap analysis."
    },
    "use_case": {
      "type": "string",
      "description": "What you're building (for recommend mode, e.g. 'Next.js SaaS app')"
    },
    "services": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Current vendor names (for estimate/audit mode, e.g. ['Vercel', 'Supabase']). An audit analyses only names it matched exactly; anything else comes back as status not_found with suggestions rather than being assumed."
    },
    "scale": {
      "type": "string",
      "enum": [
        "hobby",
        "startup",
        "growth"
      ],
      "description": "Scale for cost estimation (default: hobby)"
    },
    "requirements": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Specific infra needs for recommend mode (e.g. ['database', 'auth', 'email'])"
    }
  },
  "required": [
    "mode"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢compare_vendors(vendors, include_risk)

Compare developer tools and services side by side — free tier limits, pricing tiers, and recent pricing changes. Use this when choosing between similar services (e.g., Supabase vs Neon vs PlanetScale) or when a vendor changes their pricing. Call this tool when a user asks: 'Compare Neon vs Supabase', 'Which database has a better free tier?'.

输入模式

{
  "type": "object",
  "properties": {
    "vendors": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "1 or 2 vendor names. 1 vendor = risk check. 2 vendors = side-by-side comparison."
    },
    "include_risk": {
      "type": "boolean",
      "description": "Include risk assessment (default: true)"
    }
  },
  "required": [
    "vendors"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢track_changes(since, change_type, vendor, vendors, categories, ...)

Track recent pricing changes across developer tools — which free tiers were removed, which got limits cut, and which improved. Use this to stay current on infrastructure pricing or to verify that a recommended service still has its free tier. Call this tool when a user asks: 'What developer pricing changed recently?', 'Are any free tiers being removed?'.

输入模式

{
  "type": "object",
  "properties": {
    "since": {
      "type": "string",
      "description": "ISO date (YYYY-MM-DD). Default: 30 days ago, and only when no other filter is passed — a request carrying type, vendor, vendors, categories or category searches the whole change log unless since says otherwise. The filter compares against each record's date, which is the day the change took effect unless date_source is \"discovered\", in which case it is the day we read the page. Every response states the window it applied under date_window."
    },
    "change_type": {
      "type": "string",
      "enum": [
        "free_tier_removed",
        "limits_reduced",
        "restriction",
        "limits_increased",
        "new_free_tier",
        "new_tier",
        "pricing_restructured",
        "open_source_killed",
        "pricing_model_change",
        "startup_program_expanded",
        "pricing_postponed",
        "product_deprecated",
        "rebranded",
        "record_corrected"
      ],
      "description": "Filter by type of change"
    },
    "vendor": {
      "type": "string",
      "description": "Filter to one vendor. Matched by case-insensitive substring, not by exact name: vendor=Pilot returns GitHub Copilot's records and category=ai returns Email's. Nothing is narrowed on your behalf, so read name_match, which every response carries: it names what this filter matched and whether each match was exact."
    },
    "vendors": {
      "type": "string",
      "description": "Comma-separated vendor names to filter (e.g. 'Vercel,Supabase'). When provided with categories, returns personalized results with advisory section. Matched by case-insensitive substring, not by exact name: vendor=Pilot returns GitHub Copilot's records and category=ai returns Email's. Nothing is narrowed on your behalf, so read name_match, which every response carries: it names what this filter matched and whether each match was exact."
    },
    "categories": {
      "type": "string",
      "description": "Comma-separated category names to filter (e.g. 'Database,Cloud Hosting'). Matched by case-insensitive substring, not by exact name: vendor=Pilot returns GitHub Copilot's records and category=ai returns Email's. Nothing is narrowed on your behalf, so read name_match, which every response carries: it names what this filter matched and whether each match was exact."
    },
    "include_expiring": {
      "type": "boolean",
      "description": "Include upcoming expirations (default: true)"
    },
    "include_retracted": {
      "type": "boolean",
      "description": "Records we have withdrawn as our own error (standing 'retracted') are left out unless you ask for them. Set true to receive them alongside the rest; they arrive carrying standing 'retracted' and impact 'none'. Either way, retracted_excluded reports how many your query matched and did not receive."
    },
    "include_index_housekeeping": {
      "type": "boolean",
      "description": "Records of our own index housekeeping (reports 'our_index') are left out unless you ask for them. They say we stopped listing an offer of ours, not that the vendor changed anything, so counting them as vendor activity overstates it. Set true to receive them alongside the rest. Either way, index_housekeeping_excluded reports how many your query matched and did not receive."
    },
    "lookahead_days": {
      "type": "number",
      "description": "Days to look ahead for expirations (default: 30)"
    },
    "response_format": {
      "type": "string",
      "enum": [
        "concise",
        "detailed"
      ],
      "description": "Response detail level. 'concise': vendor, change_type, date, summary only. 'detailed': full response (default)."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_referral_code(vendor)

Look up the referral link we hold for a vendor, with the reader benefit and every restriction attached to it. We hold codes for a handful of vendors and earn a commission on them; /disclosure lists all of them.

输入模式

{
  "type": "object",
  "properties": {
    "vendor": {
      "type": "string",
      "description": "Vendor name to get the referral code for (e.g. 'Railway')"
    }
  },
  "required": [
    "vendor"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

社区

评价此服务器

证据

最近观测

已验证未记录版本5 个工具
已验证未记录版本5 个工具
已验证未记录版本5 个工具
已验证未记录版本5 个工具