European Parliament MCP Server API - v1.0.1
    Preparing search index...

    Interface MEPDetails

    Detailed MEP information including biography and social media.

    Extends MEP with additional biographical information, contact details, social media profiles, voting statistics, and parliamentary roles. This interface represents the complete MEP profile available through the EP API /meps/{id}/details endpoint.

    Personal Data: Contains multiple GDPR-protected fields (phone, address) requiring audit logging and data minimization practices.

    Caching: Due to personal data, cache TTL should not exceed 15 minutes per ISMS Policy DP-003 (Data Retention).

    MEPDetails

    const mepDetails: MEPDetails = {
    // MEP base fields
    id: "person/124936",
    name: "Jane Marie Andersson",
    country: "SE",
    politicalGroup: "S&D",
    committees: ["DEVE", "ENVI"],
    email: "jane.andersson@europarl.europa.eu",
    active: true,
    termStart: "2019-07-02",

    // Extended fields
    biography: "Member of Parliament since 2019...",
    phone: "+32 2 28 45000",
    address: "European Parliament, Rue Wiertz 60, 1047 Brussels",
    website: "https://example.com",
    twitter: "@janeandersson",
    facebook: "jane.andersson.official",
    votingStatistics: {
    totalVotes: 1250,
    votesFor: 800,
    votesAgainst: 350,
    abstentions: 100,
    attendanceRate: 92 // 92% participation
    },
    roles: ["Vice-Chair of DEVE Committee", "Member of ENVI Committee"]
    };
    // Minimal details (all optional fields omitted)
    const minimalDetails: MEPDetails = {
    id: "person/100000",
    name: "John Smith",
    country: "DE",
    politicalGroup: "EPP",
    committees: ["ECON"],
    active: true,
    termStart: "2024-07-16"
    };

    Contains personal data (phone, address) - requires audit logging

    interface MEPDetails {
        active: boolean;
        committees: string[];
        country: string;
        id: string;
        name: string;
        politicalGroup: string;
        termStart: string;
        address?: string;
        biography?: string;
        email?: string;
        facebook?: string;
        phone?: string;
        roles?: string[];
        termEnd?: string;
        twitter?: string;
        votingStatistics?: VotingStatistics;
        website?: string;
    }

    Hierarchy (View Summary)

    Index

    Properties

    active: boolean

    Current active status.

    Indicates if the MEP is currently serving in the European Parliament. False for former MEPs or those who resigned/were replaced.

    EP API Field: active

    true  // Currently serving
    
    false // Former MEP
    
    committees: string[]

    Committee memberships.

    Array of committee abbreviations where the MEP serves as member, substitute, chair, or vice-chair. MEPs typically serve on 1-2 standing committees plus temporary committees/delegations.

    EP API Field: committeeRoles

    Common Committees:

    • "AFET" - Foreign Affairs
    • "DEVE" - Development
    • "INTA" - International Trade
    • "BUDG" - Budgets
    • "CONT" - Budgetary Control
    • "ECON" - Economic and Monetary Affairs
    • "EMPL" - Employment and Social Affairs
    • "ENVI" - Environment, Public Health and Food Safety
    • "ITRE" - Industry, Research and Energy
    • "IMCO" - Internal Market and Consumer Protection
    • "TRAN" - Transport and Tourism
    • "REGI" - Regional Development
    • "AGRI" - Agriculture and Rural Development
    • "PECH" - Fisheries
    • "CULT" - Culture and Education
    • "JURI" - Legal Affairs
    • "LIBE" - Civil Liberties, Justice and Home Affairs
    • "AFCO" - Constitutional Affairs
    • "FEMM" - Women's Rights and Gender Equality
    • "PETI" - Petitions
    ["DEVE", "ENVI"]
    
    ["ECON", "BUDG", "CONT"]
    

    Committee for committee details

    country: string

    Country of representation.

    ISO 3166-1 alpha-2 country code (2 uppercase letters). Represents the EU member state the MEP represents.

    EP API Field: country Validation: Must match /^[A-Z]{2}$/

    "SE" (Sweden)
    
    "DE" (Germany)
    
    "FR" (France)
    
    id: string

    Unique MEP identifier.

    Format: "person/{numeric-id}" or numeric string Stable across parliamentary terms for historical tracking.

    EP API Field: identifier

    "person/124936"
    
    "197789"
    
    name: string

    Full name in official format.

    Format: "FirstName MiddleName(s) LastName" May include titles in some cases.

    EP API Field: label

    "Jane Marie Andersson"
    
    "Dr. Hans-Peter Schmidt"
    
    politicalGroup: string

    Political group affiliation.

    Abbreviation of the political group in the European Parliament. Groups may change during parliamentary terms due to realignments.

    EP API Field: politicalGroup

    Common Values:

    • "EPP" - European People's Party (Christian Democrats)
    • "S&D" - Progressive Alliance of Socialists and Democrats
    • "Renew" - Renew Europe (Liberals)
    • "Greens/EFA" - Greens/European Free Alliance
    • "ECR" - European Conservatives and Reformists
    • "ID" - Identity and Democracy
    • "The Left" - The Left in the European Parliament
    • "NI" - Non-Inscrits (Non-attached members)
    "S&D"
    
    "EPP"
    
    termStart: string

    Term start date.

    Date when the MEP's term began in ISO 8601 format (YYYY-MM-DD). For current MEPs, typically aligned with parliamentary term start. For replacements, may be mid-term.

    EP API Field: termStart Format: ISO 8601 date (YYYY-MM-DD) Validation: Must be valid date, typically after 1952-07-23 (first ECSC assembly)

    "2019-07-02" // 9th parliamentary term start
    
    "2024-07-16" // 10th parliamentary term start
    
    address?: string

    Official office address.

    Primary office address, typically European Parliament Brussels or Strasbourg location. May include building, floor, and office number.

    EP API Field: address Format: Multi-line address string

    "European Parliament, Rue Wiertz 60, ASP 08E123, 1047 Brussels, Belgium"
    
    "European Parliament, 1 Avenue du Président Robert Schuman, 67000 Strasbourg, France"
    

    Personal data - requires audit logging per ISMS AU-002

    biography?: string

    Biographical information.

    Free-text biography provided by the MEP or EP information service. May include educational background, professional experience, and political career highlights. Content may be in multiple languages.

    EP API Field: biography Format: Plain text or HTML (sanitize before display) Max Length: Typically 500-2000 characters

    "Member of the European Parliament since 2019, focusing on development and environmental issues. Former municipal councillor (2010-2019)."
    
    email?: string

    Official European Parliament email address.

    Standard format: firstname.lastname@europarl.europa.eu Optional field as some MEPs may not have public email or may have left office.

    EP API Field: email Validation: Must be valid email format

    "jane.andersson@europarl.europa.eu"
    

    Personal data - requires audit logging per ISMS AU-002

    facebook?: string

    Facebook profile identifier.

    Facebook profile username, page name, or numeric ID. May be username (facebook.com/username) or numeric ID (facebook.com/12345).

    EP API Field: facebook Format: Username or numeric ID

    "jane.andersson.official"
    
    "100012345678901"
    
    phone?: string

    Contact phone number.

    Primary office phone number, typically Brussels or Strasbourg office. Format varies by country but usually includes country code.

    EP API Field: phone Format: International format recommended (e.g., +32 2 28 XXXXX)

    "+32 2 28 45000" (Brussels)
    
    "+33 3 88 17 5000" (Strasbourg)
    

    Personal data - requires audit logging per ISMS AU-002

    roles?: string[]

    Parliamentary roles and positions.

    Array of official roles held within the European Parliament, including committee positions, delegation memberships, and special assignments. Roles are current as of data fetch.

    EP API Field: roles

    Common Role Types:

    • Committee Chair/Vice-Chair
    • Delegation Chair/Vice-Chair/Member
    • Quaestor
    • Vice-President of Parliament
    ["Vice-Chair of DEVE Committee", "Member of ENVI Committee", "Member of Delegation for relations with India"]
    
    ["Chair of FEMM Committee", "Quaestor"]
    
    termEnd?: string

    Term end date.

    Date when the MEP's term ended in ISO 8601 format (YYYY-MM-DD). Undefined for currently active MEPs. Set for former MEPs who completed their term, resigned, or were replaced.

    EP API Field: termEnd Format: ISO 8601 date (YYYY-MM-DD) Validation: Must be valid date after termStart if present

    "2024-07-15" // End of 9th term
    
    "2020-01-31" // Brexit date for UK MEPs
    
    twitter?: string

    Twitter/X handle.

    Social media handle for Twitter/X platform (without @ prefix in data, but typically displayed with @). Not validated against current platform availability.

    EP API Field: twitter Format: Username without @ prefix Validation: Alphanumeric and underscores, 1-15 characters

    "janeandersson"
    
    "Jane_Andersson_MEP"
    
    votingStatistics?: VotingStatistics

    Voting behavior statistics.

    Aggregated statistics on the MEP's voting patterns including attendance rate and vote distribution. Calculated from plenary session roll-call votes.

    EP API Field: votingStatistics (computed) Update Frequency: Updated after each plenary session

    VotingStatistics for detailed metrics

    website?: string

    Personal or official website URL.

    MEP's personal website, campaign site, or party profile page. URL should be validated for HTTPS and accessibility.

    EP API Field: website Format: Full URL with protocol Validation: Must be valid URL format

    "https://www.janeanderson.eu"
    
    "https://example-party.eu/members/jane-andersson"