{
  "serverInfo": {
    "name": "Fund Momentum",
    "version": "1.1.0",
    "description": "Live VC intelligence for 1,056 actively deploying funds and 413 institutional limited partners. Query fund profiles, GP signal profiles, thesis tags and deployment status. Every fund profile carries a provenance block naming its source, last verification date and confidence.",
    "homepage": "https://fundmomentum.vc",
    "icon": "https://fundmomentum.vc/favicon.png",
    "endpoint": "https://fundmomentum.vc/_api/mcp",
    "transport": "streamable-http",
    "docs": "https://fundmomentum.vc/mcp"
  },
  "counts": {
    "funds": 1056,
    "limited_partners": 413,
    "limited_partners_note": "Disclosed institutional LPs only. Individual and angel backers are deliberately not published, and roughly half of all fund closings name no LPs at all.",
    "counted_at": "2026-09-02T17:12:44.479Z",
    "note": "Live SELECT COUNT(*) at request time, not a marketing figure. Marketing copy elsewhere on the site rounds this down."
  },
  "authentication": {
    "required": false,
    "schemes": [
      "apiKey",
      "bearer"
    ],
    "header": "X-API-Key",
    "alternative_header": "Authorization: Bearer <key>",
    "keyless_trial": {
      "tools": [
        "search_funds",
        "get_fund"
      ],
      "calls_per_caller_per_utc_day": 10,
      "signup_required": false,
      "note": "Call these with no credential at all to see real data before deciding anything. Metered per caller."
    },
    "free_tier": {
      "price": "€0",
      "calls_per_month": 100,
      "tools": [
        "search_funds",
        "get_fund",
        "get_changes"
      ]
    },
    "how_to_get_a_key": {
      "human": "https://fundmomentum.vc/pricing",
      "agent": {
        "method": "POST",
        "url": "https://fundmomentum.vc/_api/agent/register",
        "body": {
          "agent_name": "your-agent-name",
          "email": "you@example.com"
        },
        "returns": "api_key immediately in the JSON response"
      }
    },
    "instructions": "Start with no credential at all: search_funds and get_fund answer 10 calls per caller per UTC day without a key. Beyond that, send \"X-API-Key: <key>\". The free tier costs nothing and covers search_funds, get_fund, get_changes at 100 calls per month. Humans get a key at https://fundmomentum.vc/pricing; agents can self-register at https://fundmomentum.vc/_api/agent/register."
  },
  "tools": [
    {
      "name": "search_funds",
      "title": "Search VC funds",
      "description": "Search actively deploying venture capital funds by stage, country, and industry. Free tier. Returns name, slug, country, stage, fund size, industries and a durable profile URL.",
      "annotations": {
        "title": "Search VC funds",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false
      },
      "requiredTier": "free",
      "price": "€0",
      "inputSchema": {
        "type": "object",
        "properties": {
          "stage": {
            "type": "string",
            "enum": [
              "growth",
              "late_stage",
              "pre_seed",
              "seed",
              "series_a",
              "series_b",
              "series_c"
            ],
            "description": "Funding stage focus. Must be one of the listed enum values (lowercase, underscores). Common spellings such as 'Pre-Seed' or 'Series A' are accepted and normalised."
          },
          "country": {
            "type": "string",
            "description": "Country of the fund's headquarters, spelled out in full (e.g. 'United States', 'United Kingdom', 'Germany'). Not an ISO code."
          },
          "industry": {
            "type": "string",
            "enum": [
              "agritech",
              "ai_ml",
              "biotech",
              "built_environment",
              "carbon_removal",
              "circular_economy",
              "climate_sustainability",
              "cloud_devops",
              "consumer_commerce",
              "creator_economy",
              "cybersecurity",
              "data_infrastructure",
              "deep_tech",
              "defense",
              "developer_tools",
              "diagnostics",
              "digital_banking",
              "digital_education_consumer",
              "digital_health",
              "digital_infrastructure",
              "ecommerce",
              "energy_tech",
              "enterprise_software",
              "evs_charging",
              "fashion_tech",
              "fem_tech",
              "fintech",
              "food_beverage",
              "food_tech",
              "gaming",
              "infrastructure_tech",
              "insur_tech",
              "iot",
              "manufacturing",
              "marketplaces",
              "med_tech",
              "mental_health",
              "mobility_transport",
              "payments_embedded_finance",
              "private_markets",
              "prop_tech",
              "robotics_automation",
              "saas",
              "semiconductors",
              "space",
              "supply_chain",
              "therapeutics",
              "travel_tech",
              "vertical_saas",
              "water_tech",
              "wealth_tech",
              "web3_finance",
              "web3_infrastructure",
              "wellness_lifestyle"
            ],
            "description": "Industry focus. Must be one of the listed enum values (lowercase, underscores), e.g. 'ai_ml', 'fintech', 'climate_sustainability'. Common spellings such as 'AI/ML', 'FinTech' or 'climate' are accepted and normalised."
          },
          "limit": {
            "type": "integer",
            "description": "Number of results to return (1-20)",
            "default": 10
          }
        }
      }
    },
    {
      "name": "get_fund",
      "title": "Get fund profile",
      "description": "Get the detailed profile of a specific fund by slug. Free tier. Every response carries a `provenance` block stating where each field came from, when it was last verified, and how confident Fund Momentum is in it.",
      "annotations": {
        "title": "Get fund profile",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false
      },
      "requiredTier": "free",
      "price": "€0",
      "inputSchema": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string",
            "description": "The slug identifier of a fund, exactly as returned in the `slug` field of search_funds. Call search_funds first rather than guessing: slugs are not derivable from a fund's display name."
          }
        },
        "required": [
          "slug"
        ]
      }
    },
    {
      "name": "get_changes",
      "title": "Get changed funds since",
      "description": "Return only the funds whose data changed since a given timestamp. Free tier. Designed for cheap repeated polling: send the `next_since` AND the `etag` from your previous response, and an unchanged window answers with `unchanged: true` and no rows. Use this instead of re-running search_funds on a schedule.",
      "annotations": {
        "title": "Get changed funds since",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false
      },
      "requiredTier": "free",
      "price": "€0",
      "inputSchema": {
        "type": "object",
        "properties": {
          "since": {
            "type": "string",
            "description": "Lower bound, exclusive. Accepts either an ISO 8601 timestamp ('2026-08-01T00:00:00Z') or a unix epoch in milliseconds as a string ('1785955265103'). Omit to receive the last 7 days."
          },
          "if_none_match": {
            "type": "string",
            "description": "The `etag` value from your previous get_changes response. If nothing changed, the reply is a few bytes instead of a full page. This is the cheapest poll available here."
          },
          "limit": {
            "type": "integer",
            "description": "Maximum rows to return (1-200)",
            "default": 50
          }
        }
      }
    },
    {
      "name": "get_fund_signals",
      "title": "Get fund investor signals",
      "description": "Get comprehensive investor signals for a fund: GP thesis, bullish and contrarian signals, founder dos and don'ts, deployment status, source URLs. Pro tier.",
      "annotations": {
        "title": "Get fund investor signals",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false
      },
      "requiredTier": "pro",
      "price": "€29/mo",
      "inputSchema": {
        "type": "object",
        "properties": {
          "slug": {
            "type": "string",
            "description": "The slug identifier of the fund"
          }
        },
        "required": [
          "slug"
        ]
      }
    },
    {
      "name": "get_gp_profile",
      "title": "Get General Partner profiles",
      "description": "Get General Partner profiles for a fund. Pro tier.",
      "annotations": {
        "title": "Get General Partner profiles",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false
      },
      "requiredTier": "pro",
      "price": "€29/mo",
      "inputSchema": {
        "type": "object",
        "properties": {
          "fund_slug": {
            "type": "string",
            "description": "The slug identifier of the fund"
          },
          "gp_name": {
            "type": "string",
            "description": "Optional GP name to filter by"
          }
        },
        "required": [
          "fund_slug"
        ]
      }
    },
    {
      "name": "match_startup",
      "title": "Match startup to funds",
      "description": "AI-powered fund matching. Describe a startup and receive the top 10 matching funds with a reason and score. Pro tier.",
      "annotations": {
        "title": "Match startup to funds",
        "readOnlyHint": true,
        "destructiveHint": false,
        "idempotentHint": true,
        "openWorldHint": false
      },
      "requiredTier": "pro",
      "price": "€29/mo",
      "inputSchema": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "Startup description (max 500 chars)"
          },
          "stage": {
            "type": "string",
            "enum": [
              "growth",
              "late_stage",
              "pre_seed",
              "seed",
              "series_a",
              "series_b",
              "series_c"
            ],
            "description": "Funding stage. Must be one of the listed enum values; common spellings are normalised."
          },
          "country": {
            "type": "string",
            "description": "Country, spelled out in full"
          }
        },
        "required": [
          "description"
        ]
      }
    }
  ],
  "polling": {
    "recommended_tool": "get_changes",
    "note": "Do not re-run search_funds on a schedule. Call get_changes, advance to the next_since it returns, and send the previous etag back as if_none_match; an unchanged window comes back with zero rows.",
    "http_alternative": {
      "method": "GET",
      "url": "https://fundmomentum.vc/_api/changes",
      "query": {
        "since": "<iso 8601 or unix ms>",
        "limit": "1-200"
      },
      "conditional": "Keep the ETag response header and send it back as If-None-Match. An unchanged window answers 304 with an empty body."
    }
  },
  "resources": [],
  "prompts": []
}