Exposing 250 connectors as individual tools would bury a model. Search-then-execute keeps the surface small and moves the matching into the server, and the documented fallback — if find_tools returns nothing relevant, call list_connectors, because the connector may simply not be linked yet — saves the loop where the model concludes the capability does not exist. The narrower endpoint paths are worth using for coding assistants, where a smaller surface is the point.
A managed MCP gateway. Rather than exposing hundreds of tools at once, it exposes a discovery tool and an execution tool: describe what you need, get back matching connector tools with their input schemas, then call one by id.
- find_tools searches available connector tools by natural-language prompt and returns matches with ids and input schemas
- execute_tool runs one of those tools by id with your parameters and returns the result directly
- list_connectors browses the full registry, including connectors not yet connected — which is where you look when find_tools comes back empty
- list_skills and list_projects scope the session
- list_flows, run_flow and delete_flow manage saved multi-step automations; create_flow and update_flow are marked as under development
- configure_custom_auth registers a custom JWT provider such as Auth0, Firebase or Supabase
- The endpoint path decides the tool set: /shttp exposes all 11 tools, /shttp/tools exposes 5, and adding a project id or a skill id narrows it further to 4 or 3
A Fastn account from app.fastn.ai with your connectors linked. The hosted endpoint at https://mcp.live.fastn.ai/shttp needs no install — authentication runs through MCP OAuth 2.1 automatically, or you can pass a token or API key in an Authorization header, optionally with x-project-id. The self-hosting instructions name `fastn-mcp-server` on PyPI, which does not have it; the self-hosted server then runs as `fastn-mcp --shttp --port 8000`, with FASTN_API_KEY and FASTN_PROJECT_ID for the stdio path.
