◆ MCP~5 minPYTHON

Expose FundedAPI as an MCP server

Hosted MCP at https://fundedapi.com/mcp — paste one block into Claude Desktop config. No self-hosting. (Python bridge below for older Claude builds.)

◆ STEPS
  1. 01FASTEST PATH: use the hosted server at https://fundedapi.com/mcp. See /mcp/claude for the Claude Desktop config block. No Python required.
  2. 02Python bridge (below) is only needed for older Claude builds or if you want to run offline / self-host.
  3. 03Save the Python as fundedapi_mcp.py.
  4. 04Add to Claude Desktop config: mcpServers.fundedapi = { command: 'python', args: ['fundedapi_mcp.py'] }.
  5. 05Restart Claude — new tools appear.
◆ CODE · PYTHON
# pip install mcp httpx

from mcp.server.fastmcp import FastMCP
import httpx, os

mcp = FastMCP("fundedapi")
API = "https://fundedapi.com"
KEY = os.environ["FUNDED_API_KEY"]

@mcp.tool()
async def search_funded(
    niche: str | None = None,
    round: str | None = None,
    hiring: bool | None = None,
    limit: int = 20,
) -> list[dict]:
    """Search recently funded startups."""
    params = {k: v for k, v in locals().items() if v is not None}
    async with httpx.AsyncClient() as c:
        r = await c.get(f"{API}/v1/startups", params=params,
                        headers={"Authorization": f"Bearer {KEY}"})
        r.raise_for_status()
        return r.json()["startups"]

@mcp.tool()
async def ai_search(query: str) -> dict:
    """Natural-language startup search."""
    async with httpx.AsyncClient() as c:
        r = await c.post(f"{API}/v1/search/ai", json={"query": query},
                         headers={"Authorization": f"Bearer {KEY}"})
        r.raise_for_status()
        return r.json()

if __name__ == "__main__":
    mcp.run()
◆ PREREQUISITES
  • A FundedAPI key (free). Grab one.
  • Set FUNDED_API_KEY in your environment.
  • Read the API reference if you need other endpoints.
▶ RELATED RECIPES