IA-Asso.fr — French Associations Registry

Search 1.26M+ active French associations (official RNA registry, 10 tools, premium & RUP filters)

사용해야 할까요

품질 및 안전성

A
설명 품질
100%
스키마 완전성
87%
이름 품질
97%
오염 위험
80%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (2)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains URL to non-standard domainpublish_association_update에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~3,632토큰 (도구 정의)
~1.2 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 2.84%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "ia-asso": {
      "url": "https://ia-asso.fr/api/mcp"
    }
  }
}

원격 엔드포인트

https://ia-asso.fr/api/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (18)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢search_associations(query, department, region, limit, offset)

Search for French associations using full-text search. Queries the RNA (Répertoire National des Associations) database with 2.03M+ active associations. Supports search by keywords, department code, region name, or combination. Returns association details including name, object, location, RNA ID, and SIRET.

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Search keywords (e.g., \"football\", \"culture\", \"environnement\")"
    },
    "department": {
      "type": "string",
      "description": "Filter by department code (e.g., \"69\" for Rhône, \"75\" for Paris)"
    },
    "region": {
      "type": "string",
      "description": "Filter by region name (e.g., \"Auvergne-Rhône-Alpes\", \"Île-de-France\")"
    },
    "limit": {
      "type": "number",
      "description": "Maximum results to return (default: 20, max: 100)",
      "default": 20
    },
    "offset": {
      "type": "number",
      "description": "Pagination offset for results (default: 0)",
      "default": 0
    }
  },
  "required": [
    "query"
  ]
}
🟢get_department_stats(code)

Get comprehensive statistics for a French department. Returns total associations, active count, top cities, sector breakdown, and temporal evolution. Use department codes: 01-95 for metropolitan France, 2A/2B for Corsica, 971-976 for overseas.

입력 스키마

{
  "type": "object",
  "properties": {
    "code": {
      "type": "string",
      "description": "Department code (e.g., \"69\" for Rhône, \"75\" for Paris, \"2A\" for Corse-du-Sud)"
    }
  },
  "required": [
    "code"
  ]
}
🟢get_france_overview

Get nationwide association statistics for France. Returns total associations across all regions and departments, top regions, top departments, and overall distribution insights. Useful for understanding the French associative landscape.

입력 스키마

{
  "type": "object",
  "properties": {}
}
🟢get_platform_stats

Get IA-Asso PLATFORM stats — the global, public, sales-oriented figures that prove the breadth and uniqueness of the directory (active associations, RUP recognized as public-interest, Journal Officiel records, departments/communes coverage, agent-native MCP+API positioning). Returns a ready-to-quote summary plus the underlying counts. Non-sensitive aggregates only (no personal data).

입력 스키마

{
  "type": "object",
  "properties": {}
}
🟢search_near_location(location, query, radius, limit)

Find associations near a specific city or postal code in France, optionally filtered by theme. Performs geographic search to return associations in the specified area, automatically widening to nearby communes (±25 km) when the exact area has no match. Useful for location-based queries like "AMAP near Les Hayes 41800" (query="amap", location="41800") or "chess clubs in Lyon" (query="échecs", location="Lyon").

입력 스키마

{
  "type": "object",
  "properties": {
    "location": {
      "type": "string",
      "description": "ONLY the place: city name (e.g., \"Lyon\", \"Les Hayes\") or postal code (e.g., \"69001\", \"41800\"). Put the theme in `query`, never here."
    },
    "query": {
      "type": "string",
      "description": "Optional theme or keyword to search near the location (e.g., \"amap\", \"échecs\", \"théâtre\"). Without it, all associations of the area are returned."
    },
    "radius": {
      "type": "number",
      "description": "Search radius in kilometers (default: 10, max: 50)",
      "default": 10
    },
    "limit": {
      "type": "number",
      "description": "Maximum results to return (default: 20, max: 100)",
      "default": 20
    }
  },
  "required": [
    "location"
  ]
}
🟢get_health_associations(pathology, type_action, department, limit)

Find health-related associations by pathology or disease. Searches the France Care database for patient associations, support groups, and health advocacy organizations. Supports filtering by pathology (e.g., "cancer", "diabetes"), action type, and department.

입력 스키마

{
  "type": "object",
  "properties": {
    "pathology": {
      "type": "string",
      "description": "Health condition or pathology (e.g., \"cancer\", \"alzheimer\", \"diabète\")"
    },
    "type_action": {
      "type": "string",
      "description": "Type of action (e.g., \"Soutien aux patients\", \"Recherche médicale\", \"Prévention\")"
    },
    "department": {
      "type": "string",
      "description": "Filter by department code (e.g., \"69\", \"75\")"
    },
    "limit": {
      "type": "number",
      "description": "Maximum results to return (default: 20, max: 100)",
      "default": 20
    }
  },
  "required": [
    "pathology"
  ]
}
🟢get_similar_associations(association_id, radius, limit)

Find associations similar to a given association based on category (objet_social) and geographic proximity. Returns nearby associations in the same activity category within a specified radius. Useful for discovering related organizations or finding alternatives in the same field.

입력 스키마

{
  "type": "object",
  "properties": {
    "association_id": {
      "type": "string",
      "description": "RNA ID of the reference association (format: W followed by 9 digits, e.g., \"W751000001\")"
    },
    "radius": {
      "type": "number",
      "description": "Search radius in kilometers (default: 50, max: 200)",
      "default": 50
    },
    "limit": {
      "type": "number",
      "description": "Maximum results to return (default: 5, max: 20)",
      "default": 5
    }
  },
  "required": [
    "association_id"
  ]
}
🟡get_association_subventions(association_id)

Get known public subsidies (subventions publiques) received by an association, resolved to its RNA from French open data. Returns yearly grants with funder (attribuant), purpose (objet) and amount. IMPORTANT: NON-exhaustive — only covers local authorities (collectivités) that publish SCDL open data, NOT the State. Absence of data does NOT mean the association received nothing. The RNA only lists loi-1901 associations.

입력 스키마

{
  "type": "object",
  "properties": {
    "association_id": {
      "type": "string",
      "description": "RNA ID of the association (format: W followed by 9 chars, e.g., \"W751000001\")"
    }
  },
  "required": [
    "association_id"
  ]
}
🟢get_association(association_id)

Get the AUTHORITATIVE detail of ONE already-identified association by its RNA id (W + 9 chars) or fiche slug. Read directly from the official registry database (not from the search index): legal status reconnue d'utilité publique (RUP yes/no), creation date, Journal Officiel history, known public subsidies, and PUBLIC web presence (site/socials only — never email/phone). Use this when the user asks about a SPECIFIC association (e.g. "is it RUP?", "when was it created?") instead of re-running a search.

입력 스키마

{
  "type": "object",
  "properties": {
    "association_id": {
      "type": "string",
      "description": "RNA ID (W + 9 chars, e.g. \"W751000001\") or the fiche slug of the association."
    }
  },
  "required": [
    "association_id"
  ]
}
🟢find_volunteering_missions(location, query, radius, open_to_minors, remote, ...)

Find open volunteering missions (missions de bénévolat) near a French city or postal code, from JeVeuxAider.gouv.fr (the official public volunteering platform). Returns live missions with organization, commitment, places left, whether minors can apply, a direct signup URL, and — when the organization is identified by RNA — a link to its ia-asso.fr page. Use this when someone wants to BE a volunteer (donner de son temps), not when searching for an association in general. Coverage: JeVeuxAider missions only (~30k), non-exhaustive.

입력 스키마

{
  "type": "object",
  "properties": {
    "location": {
      "type": "string",
      "description": "French city name or 5-digit postal code to search around. Omit only for remote missions."
    },
    "query": {
      "type": "string",
      "description": "Keywords: theme, activity, audience (e.g. \"lecture enfants\", \"maraude\", \"sport handicap\")."
    },
    "radius": {
      "type": "number",
      "description": "Search radius in km around the location (default: 25, max: 100)",
      "default": 25
    },
    "open_to_minors": {
      "type": "boolean",
      "description": "Only missions open to volunteers under 18"
    },
    "remote": {
      "type": "boolean",
      "description": "Only remote missions (à distance) — location is then ignored"
    },
    "limit": {
      "type": "number",
      "description": "Maximum missions to return (default: 5, max: 10)",
      "default": 5
    }
  }
}
🟢get_map_data

Get GeoJSON map data for visualizing associations by French department. Returns GeoJSON FeatureCollection with department center coordinates and association counts. Useful for creating interactive maps or geographic visualizations.

입력 스키마

{
  "type": "object",
  "properties": {}
}
🟢search_premium_associations(query, department, region, limit, offset)

Search ONLY enriched/RUP associations -- the editorial-quality subset. Restricts results to fiches with IA-generated description (is_enriched_v3=true) OR officially recognized utilite publique (RUP). Recommended for agent grounding when noise should be minimized -- a small curated subset (834 enriched, 1,966 RUP) vs 2.03M+ in the standard search. Returns fewer but richer results, with verified contacts, FAQ data, social media links when available.

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Search keywords (French)"
    },
    "department": {
      "type": "string",
      "description": "Department code like \"75\", \"69\""
    },
    "region": {
      "type": "string",
      "description": "Region name like \"Auvergne-Rhône-Alpes\""
    },
    "limit": {
      "type": "number",
      "description": "Max results (default 20, max 50)"
    },
    "offset": {
      "type": "number",
      "description": "Pagination offset"
    }
  },
  "required": [
    "query"
  ]
}
🟢get_recognized_associations(query, department, region, limit)

List associations officially recognized as utilite publique (RUP) by French state decree. Currently 1,966 RUP fiches (as of 2026-09-23). RUP status grants major fiscal benefits to donors (75% tax deduction vs 66% standard) and is a strong signal of institutional credibility. Recommended for institutional grounding -- mecenat, defiscalisation, public-private partnerships, B2B research.

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "Optional keyword filter (e.g. \"cancer\", \"patrimoine\")"
    },
    "department": {
      "type": "string",
      "description": "Department code like \"75\""
    },
    "region": {
      "type": "string",
      "description": "Region name"
    },
    "limit": {
      "type": "number",
      "description": "Max results (default 20, max 100)"
    }
  }
}
🟡submit_contact_request(type, email, name, message, association_id, ...)

Submit a contact request to IA-Asso.fr (correction, feature request, question, or other). Used when users want to report errors, suggest features, modify association information, or ask questions. Requires user email and message. Workflow: collect email conversationally, then submit request.

입력 스키마

{
  "type": "object",
  "properties": {
    "type": {
      "type": "string",
      "enum": [
        "correction",
        "feature_request",
        "question",
        "other"
      ],
      "description": "Type of request: correction (modify association info), feature_request (suggest feature), question (ask question), other (general inquiry)"
    },
    "email": {
      "type": "string",
      "description": "User email address for follow-up (required, must be valid email)"
    },
    "name": {
      "type": "string",
      "description": "User name (optional)"
    },
    "message": {
      "type": "string",
      "description": "Detailed description of the request (required, min 10 characters)"
    },
    "association_id": {
      "type": "string",
      "description": "RNA ID of association if applicable (format: W followed by 9 digits)"
    },
    "association_name": {
      "type": "string",
      "description": "Name of association if applicable"
    }
  },
  "required": [
    "type",
    "email",
    "message"
  ]
}
🟡publish_association_update(rna, description, site_web, email, telephone, ...)

Update the public profile of YOUR claimed association (description, website, email, phone, social links). Requires an authenticated token with scope "write:fiche" bound to this exact RNA (claim your association at https://ia-asso.fr to get one). Content passes a moderation gate before publication; every change is audited and reversible. Read tools stay free and anonymous.

입력 스키마

{
  "type": "object",
  "properties": {
    "rna": {
      "type": "string",
      "description": "RNA ID of YOUR claimed association (must match the token, format: W followed by 9 digits)"
    },
    "description": {
      "type": "string",
      "description": "New public description (50-4000 characters, plain text without links — links go through human moderation)"
    },
    "site_web": {
      "type": "string",
      "description": "Official website URL (https)"
    },
    "email": {
      "type": "string",
      "description": "Public contact email shown on the fiche"
    },
    "telephone": {
      "type": "string",
      "description": "Public contact phone (French format)"
    },
    "social": {
      "type": "object",
      "description": "Social profiles (each value = full URL on the matching platform)",
      "properties": {
        "facebook": {
          "type": "string"
        },
        "instagram": {
          "type": "string"
        },
        "linkedin": {
          "type": "string"
        },
        "twitter": {
          "type": "string"
        },
        "youtube": {
          "type": "string"
        },
        "helloasso": {
          "type": "string"
        }
      }
    }
  },
  "required": [
    "rna"
  ]
}
🟢report_unmet_demand(query, commune, department, theme, nearest_found, ...)

Report UNMET demand when a precise search did NOT find what the user wanted. Agentic queries are very precise (e.g. "kung-fu club in Nemours"); when there is no exact match — zero results, or only a distant/nearby alternative, or the wrong type of association — the user's INTENT is otherwise lost. Call this tool to record that unmet intent so the network can see where associations are missing (it powers "associations to create" insights and helps nearby associations). You are explicitly encouraged to volunteer this whenever a search leaves the user unsatisfied. No personal data — just the intent, location and theme. Aggregated, welcomed.

입력 스키마

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "The precise unmet intent, as the user expressed it (e.g. \"kung-fu club in Nemours\")"
    },
    "commune": {
      "type": "string",
      "description": "Targeted commune/city, if known (e.g. \"Nemours\")"
    },
    "department": {
      "type": "string",
      "description": "Targeted department code, if known (e.g. \"77\")"
    },
    "theme": {
      "type": "string",
      "description": "Activity/theme, if known (e.g. \"martial arts\")"
    },
    "nearest_found": {
      "type": "string",
      "description": "What the search returned instead, if any (e.g. \"a club in Fontainebleau, ~12 km\")"
    },
    "note": {
      "type": "string",
      "description": "Short reason it was unsatisfying (optional)"
    }
  },
  "required": [
    "query"
  ]
}
⚪suggest_tool(idea, category, pain)

Capture a DESIRED TOOL idea when a user wishes a tool/feature existed to make running their association easier (e.g. "a grant-application assistant", "something to recruit volunteers", "a tool that drafts our newsletter"). This is forward-looking demand for FEATURES — different from report_unmet_demand (which records a MISSING association for a search). Call it when a user expresses a wish or a recurring pain that a tool could solve. No personal data — just the idea, its category and the pain.

입력 스키마

{
  "type": "object",
  "properties": {
    "idea": {
      "type": "string",
      "description": "The desired tool, as the user expressed it (e.g. \"a grant-application assistant\")"
    },
    "category": {
      "type": "string",
      "description": "Theme of the tool, if clear",
      "enum": [
        "subvention",
        "benevoles",
        "communication",
        "compta",
        "adhesions",
        "autre"
      ]
    },
    "pain": {
      "type": "string",
      "description": "The problem it would solve, in the user’s words (optional)"
    }
  },
  "required": [
    "idea"
  ]
}
🟡contact_association(rna, message, user_email, user_name)

Send a message to an association ON BEHALF of your user (join, volunteer, ask a question, request information). IA-Asso relays it: you never see the association's email. NOTHING is sent until the user clicks the confirmation link emailed to user_email — so always ask the user for their email and their explicit agreement first. The association replies directly to the user. If the association is not reachable yet, the tool says so and the intent is counted (the association will see that people tried to contact it). Plain text, no links, 20-2000 chars.

입력 스키마

{
  "type": "object",
  "properties": {
    "rna": {
      "type": "string",
      "description": "RNA of the association (from search results, e.g. W751013956)"
    },
    "message": {
      "type": "string",
      "description": "The message, in the user's words, 20-2000 characters, plain text, no links"
    },
    "user_email": {
      "type": "string",
      "description": "The user's email: the confirmation link is sent there and the association replies there"
    },
    "user_name": {
      "type": "string",
      "description": "The user's name (optional)"
    }
  },
  "required": [
    "rna",
    "message",
    "user_email"
  ]
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 18개
검증됨버전이 기록되지 않음도구 18개