list_deputies

Pack: nosdeputes-fr · Endpoint: https://gateway.pipeworx.io/nosdeputes-fr/mcp

List French Assemblée nationale deputies with party, département, profession and contact details.

Parameters

NameTypeRequiredDescription
groupstringnoGroup acronym, matched against groupe_sigle. The 16th legislature uses REN (193),
departementstringnoDépartement name (matched against nom_circo) or 2-3 char code (num_deptmt), e.g. “Paris” or “75”.
legislaturestringno16 (2022–2024, default) · 15 (2017–2022) · 14 (2012–2017). No 17th exists.

Example call

Arguments

{
  "group": "LFI"
}

curl

curl -X POST https://gateway.pipeworx.io/nosdeputes-fr/mcp \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"list_deputies","arguments":{"group":"LFI"}}}'

TypeScript (@pipeworx/sdk)

import { Pipeworx } from '@pipeworx/sdk';
const pipeworx = new Pipeworx();

const result = await pipeworx.call('list_deputies', {
  "group": "LFI"
});

More examples

{
  "group": "LFI",
  "departement": "Paris"
}

Response shape

Always returns: deputes

FieldTypeDescription
deputesarrayDeputies, each wrapped in a depute envelope by the upstream API.
countintegerNumber of deputies returned. Present only when a filter was applied.
filtered_fromintegerTotal before filtering. Present only when a filter was applied.
filtersobjectEcho of the filters actually applied. Absent on an unfiltered call.
Full JSON Schema
{
  "type": "object",
  "properties": {
    "deputes": {
      "type": "array",
      "description": "Deputies, each wrapped in a `depute` envelope by the upstream API.",
      "items": {
        "type": "object",
        "properties": {
          "depute": {
            "type": "object",
            "properties": {
              "id": {
                "type": "integer",
                "description": "Deputy numeric identifier"
              },
              "slug": {
                "type": "string",
                "description": "NosDéputés URL slug"
              },
              "nom": {
                "type": "string",
                "description": "Full name"
              },
              "prenom": {
                "type": "string",
                "description": "First name"
              },
              "nom_de_famille": {
                "type": "string",
                "description": "Surname"
              },
              "sexe": {
                "type": "string",
                "description": "Gender (H/F)"
              },
              "date_naissance": {
                "type": "string",
                "description": "Birth date (YYYY-MM-DD)"
              },
              "lieu_naissance": {
                "type": "string",
                "description": "Place of birth"
              },
              "num_deptmt": {
                "type": "string",
                "description": "Département code"
              },
              "nom_circo": {
                "type": "string",
                "description": "Constituency name"
              },
              "num_circo": {
                "type": "integer",
                "description": "Constituency number"
              },
              "mandat_debut": {
                "type": "string",
                "description": "Mandate start date"
              },
              "mandat_fin": {
                "type": "string",
                "description": "Mandate end date"
              },
              "nb_mandats": {
                "type": "integer",
                "description": "Number of mandates held"
              },
              "ancien_depute": {
                "type": "integer",
                "description": "1 if the mandate has ended"
              },
              "groupe_sigle": {
                "type": "string",
                "description": "Political group acronym (REN / LFI / RN …)"
              },
              "parti_ratt_financier": {
                "type": "string",
                "description": "Party for campaign-finance attachment"
              },
              "profession": {
                "type": [
                  "string",
                  "null"
                ],
                "description": "Stated profession; null when not declared"
              },
              "place_en_hemicycle": {
                "type": "string",
                "description": "Hemicycle seat position"
              },
              "id_an": {
                "type": "string",
                "description": "Assemblée nationale identifier"
              },
              "url_an": {
                "type": "string",
                "description": "Official Assemblée profile URL"
              },
              "url_nosdeputes": {
                "type": "string",
                "description": "NosDéputés profile URL"
              },
              "url_nosdeputes_api": {
                "type": "string",
                "description": "NosDéputés API URL"
              },
              "twitter": {
                "type": "string",
                "description": "Twitter handle"
              },
              "emails": {
                "type": "array",
                "description": "Contact emails",
                "items": {}
              },
              "adresses": {
                "type": "array",
                "description": "Contact addresses",
                "items": {}
              },
              "sites_web": {
                "type": "array",
                "description": "Personal websites",
                "items": {}
              },
              "collaborateurs": {
                "type": "array",
                "description": "Parliamentary assistants",
                "items": {}
              },
              "autres_mandats": {
                "type": "array",
                "description": "Other current mandates",
                "items": {}
              },
              "anciens_mandats": {
                "type": "array",
                "description": "Past mandates",
                "items": {}
              },
              "anciens_autres_mandats": {
                "type": "array",
                "description": "Other past mandates",
                "items": {}
              }
            }
          }
        }
      }
    },
    "count": {
      "type": "integer",
      "description": "Number of deputies returned. Present only when a filter was applied."
    },
    "filtered_from": {
      "type": "integer",
      "description": "Total before filtering. Present only when a filter was applied."
    },
    "filters": {
      "type": "object",
      "description": "Echo of the filters actually applied. Absent on an unfiltered call."
    }
  },
  "required": [
    "deputes"
  ]
}

Connect

Add this to your MCP client config, or use one-click install buttons:

{
  "mcpServers": {
    "nosdeputes-fr": {
      "url": "https://gateway.pipeworx.io/nosdeputes-fr/mcp"
    }
  }
}

See Getting Started for client-specific install steps.

Regenerated from source · build August 21, 2026