OutSend

Find local businesses, enrich them with emails and socials, and run lead pipelines from your AI.

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
100%
Vollständigkeit des Schemas
66%
Qualität der Benennung
98%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~1,421Tokens (Tool-Definitionen)
~678 BTypische Antwortgröße
Mittlere Auswirkung auf die Aufmerksamkeit (1.11% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "outsend": {
      "url": "https://outsend.xyz/mcp"
    }
  }
}

Remote-Endpunkte

https://outsend.xyz/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (13)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢list_modules

Catalog of outsend data modules: what each one needs and produces. Call this first to know what is possible. Modules listed as coming_soon cannot be launched.

Eingabe-Schema

{
  "type": "object",
  "properties": {}
}
🟡get_pipeline_schema

Machine contract for building pipelines: valid block types, per-block config schema, and chaining rules. Use before create_pipeline.

Eingabe-Schema

{
  "type": "object",
  "properties": {}
}
🟢estimate_scrap(queries, zones, country, stop_at, scrap_mode)

Estimate the cost (EF) and volume of a Google Maps extraction WITHOUT launching it. Always estimate before creating a large job. 1 EF = a full-France scrape for one query type.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "queries": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 1,
      "maxItems": 20,
      "description": "Business types, e.g. ['plombier', 'electricien']"
    },
    "zones": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 1,
      "maxItems": 50,
      "description": "Cities, departments, regions or 'France'"
    },
    "country": {
      "type": "string",
      "description": "ISO3 country code, default FRA"
    },
    "stop_at": {
      "type": "integer",
      "minimum": 1,
      "description": "Stop after N unique places (recommended when the user gives a number)"
    },
    "scrap_mode": {
      "type": "string",
      "enum": [
        "fast",
        "normal",
        "ultra"
      ]
    }
  },
  "required": [
    "queries",
    "zones"
  ]
}
🟡create_scrap_job(queries, zones, country, stop_at, scrap_mode, ...)

Launch a Google Maps extraction (async). Returns the job id immediately; poll get_job until status=done, then use get_job_results. When the user wants ~N results, set stop_at.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "queries": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 1,
      "maxItems": 20
    },
    "zones": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 1,
      "maxItems": 50
    },
    "country": {
      "type": "string",
      "description": "ISO3, default FRA"
    },
    "stop_at": {
      "type": "integer",
      "minimum": 1
    },
    "scrap_mode": {
      "type": "string",
      "enum": [
        "fast",
        "normal",
        "ultra"
      ]
    },
    "extra_columns": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "gps",
          "departement",
          "region"
        ]
      }
    },
    "max_per_phone": {
      "type": "integer",
      "minimum": 0
    }
  },
  "required": [
    "queries",
    "zones"
  ]
}
🟡create_enrichment_job(enrichment, source_job_id, email_mode)

Enrich the results of a finished job (async): find emails, scrape reviews, detect social networks, verify emails, tech stack, etc. Returns the new job id.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "enrichment": {
      "type": "string",
      "enum": [
        "ads_intelligence",
        "brand_assets",
        "dead_check",
        "emails",
        "legal_data",
        "legal_ids",
        "legal_mentions",
        "pagespeed",
        "phone_info",
        "phones_extra",
        "pricing",
        "reviews",
        "socials",
        "techstack",
        "verify_emails"
      ]
    },
    "source_job_id": {
      "type": "string",
      "description": "A job with status=done"
    },
    "email_mode": {
      "type": "string",
      "enum": [
        "normal",
        "deep"
      ],
      "description": "Only for enrichment=emails. Default normal."
    }
  },
  "required": [
    "enrichment",
    "source_job_id"
  ]
}
🟢get_job(job_id)

Status, counters and download URL of a job.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "job_id": {
      "type": "string"
    }
  },
  "required": [
    "job_id"
  ]
}
🟢get_job_results(job_id, limit, offset)

Preview of a finished job's rows (max 50 per call, paginate with offset) + total count + CSV download URL. Never dump thousands of rows into the conversation: show a sample, give the link.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "job_id": {
      "type": "string"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    },
    "offset": {
      "type": "integer",
      "minimum": 0
    }
  },
  "required": [
    "job_id"
  ]
}
🟢list_jobs(limit)

The account's recent jobs, newest first.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    }
  }
}
🟡create_pipeline(name, definition)

Create AND start a multi-step pipeline (e.g. scrap → emails → verify_emails). Keep chains LINEAR (each block feeds the next). Edges use the keys "from" and "to" — NOT source/target. Call get_pipeline_schema first for the valid block types and their config fields. Returns pipeline id + initial job ids. Example definition: {"nodes": [{"id": "n1", "type": "scrap", "config": {"queries": ["plombier"], "zones": ["Lyon"], "stop_at": 500}}, {"id": "n2", "type": "emails", "config": {}}], "edges": [{"id": "e1", "from": "n1", "to": "n2"}]}

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "name": {
      "type": "string",
      "maxLength": 100
    },
    "definition": {
      "type": "object",
      "description": "{nodes: [{id, type, config}], edges: [{id, from, to}]} — edge keys are \"from\"/\"to\", not source/target",
      "properties": {
        "nodes": {
          "type": "array",
          "items": {
            "type": "object"
          }
        },
        "edges": {
          "type": "array",
          "items": {
            "type": "object"
          }
        }
      },
      "required": [
        "nodes"
      ]
    }
  },
  "required": [
    "definition"
  ]
}
🟢list_pipelines

The account's pipelines with status.

Eingabe-Schema

{
  "type": "object",
  "properties": {}
}
🟡create_veille(source_job_id, source_pipeline_id, name, frequency_days)

Turn a finished job or pipeline into recurring monitoring: outsend re-runs it every N days and computes the diff (new / removed / modified places).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "source_job_id": {
      "type": "string"
    },
    "source_pipeline_id": {
      "type": "string"
    },
    "name": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "frequency_days": {
      "type": "integer",
      "minimum": 1,
      "maximum": 90
    }
  },
  "required": [
    "name",
    "frequency_days"
  ]
}
🟢list_veilles

The account's recurring monitors.

Eingabe-Schema

{
  "type": "object",
  "properties": {}
}
🟢get_events(since_id, types, limit)

Account event feed (job.completed, pipeline.completed, veille.run_completed…). Cursor-based: pass back last_id as since_id.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "since_id": {
      "type": "integer",
      "minimum": 0
    },
    "types": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    }
  }
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet13 Tools
Authentifizierung erforderlichVersion nicht aufgezeichnet—