Koskamo

Wadifa Info MCP

Provides AI agents with read-only access to Moroccan public-sector employment data, including open recruitment exams (concours), civil-service salary grids, and public or school holiday schedules. It enables searching for specific job competitions, retrieving detailed exam information, and accessing salary and holiday data without requiring authentication keys.

Endpoint and access

No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.

Wadifa Info MCP logo, by Wadifa InfoVendor evidenceStreamable HTTPNo sign-inEndpoint checked 2026-11-01Operated by Wadifa Info
MCP endpoint (Streamable HTTP)
https://www.wadifa-info.com/mcp
Vendor documentation

What you can do with it

  • Search for open public-sector recruitment exams in Morocco
  • Retrieve specific details for a given competition or exam paper
  • Access civil-service salary grids by grade
  • Check public and school holiday schedules

Source and maintenance

Vendor evidenceRegistry 1.0.0

Protocol and capabilities

Server
wadifa-info 1.0.0
MCP protocol
2025-06-18
Tools
8 advertised
Resources
Not advertised
Resource templates
Not advertised
Prompts
Not advertised
Server-advertised capabilities
{
  "tools": {}
}

Server-provided instructions

Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.

Data on Moroccan public-sector jobs from wadifa-info.com: open recruitment exams (concours), past exam papers, civil-service salaries, public and school holidays. CC BY 4.0: when you show an item, cite "Source: Wadifa Info" with its url. Dates in the official notice prevail.

Tools

8 advertised

search_concours — Search public-sector recruitment exams
Advertised by the server during the last successful anonymous check.
Advertised read-only

Search Moroccan public-sector recruitment exams (concours) with the website's own filters. Open exams only unless include_closed is true. Returns grade, employer, posts, deadline, salary, the Wadifa Info page url and the official notice url. Use list_filters for exact diploma and region values.

search_concours input schema
{
  "type": "object",
  "required": [],
  "properties": {
    "q": {
      "type": "string",
      "description": "Keywords: grade, employer or city, in French or Arabic (e.g. 'technicien', 'ministère de la santé', 'متصرف')."
    },
    "city": {
      "type": "string",
      "description": "City name."
    },
    "lang": {
      "enum": [
        "fr",
        "ar"
      ],
      "type": "string",
      "description": "Language of the labels: fr (default) or ar."
    },
    "page": {
      "type": "integer",
      "description": "Page number, default 1."
    },
    "size": {
      "type": "integer",
      "description": "Results per page, 1-50, default 20."
    },
    "region": {
      "type": "string",
      "description": "Region value from list_filters (Arabic name)."
    },
    "diploma": {
      "type": "string",
      "description": "Diploma filter value from list_filters (Arabic label)."
    },
    "specialty": {
      "type": "string",
      "description": "Specialty, e.g. 'informatique', 'droit'."
    },
    "include_closed": {
      "type": "boolean",
      "description": "Also return exams whose deadline has passed."
    }
  }
}
search_concours annotations
{
  "title": "Search public-sector recruitment exams",
  "readOnlyHint": true,
  "openWorldHint": false
}
get_concours — Get one recruitment exam
Advertised by the server during the last successful anonymous check.
Advertised read-only

Full details of one recruitment exam by id: dates, posts, diplomas, how to apply, official documents, past exam papers for the same grade and similar open exams.

get_concours input schema
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "description": "Exam id (the id field of search_concours)."
    },
    "lang": {
      "enum": [
        "fr",
        "ar"
      ],
      "type": "string",
      "description": "Language of the labels: fr (default) or ar."
    }
  }
}
get_concours annotations
{
  "title": "Get one recruitment exam",
  "readOnlyHint": true,
  "openWorldHint": false
}
search_exam_papers — Search past exam papers
Advertised by the server during the last successful anonymous check.
Advertised read-only

Search the library of past Moroccan public recruitment exam papers (sujets / نماذج مباريات), many with a correction.

search_exam_papers input schema
{
  "type": "object",
  "required": [],
  "properties": {
    "q": {
      "type": "string",
      "description": "Keywords: grade, employer, subject or year."
    },
    "lang": {
      "enum": [
        "fr",
        "ar"
      ],
      "type": "string",
      "description": "Language of the labels: fr (default) or ar."
    },
    "page": {
      "type": "integer",
      "description": "Page number, default 1."
    },
    "size": {
      "type": "integer",
      "description": "Results per page, 1-100, default 20."
    }
  }
}
search_exam_papers annotations
{
  "title": "Search past exam papers",
  "readOnlyHint": true,
  "openWorldHint": false
}
get_exam_paper — Get one past exam paper
Advertised by the server during the last successful anonymous check.
Advertised read-only

One past exam paper by id: description, page images, PDF and the editorial correction when there is one.

get_exam_paper input schema
{
  "type": "object",
  "required": [
    "id"
  ],
  "properties": {
    "id": {
      "type": "integer",
      "description": "Paper id (the id field of search_exam_papers)."
    },
    "lang": {
      "enum": [
        "fr",
        "ar"
      ],
      "type": "string",
      "description": "Language of the labels: fr (default) or ar."
    }
  }
}
get_exam_paper annotations
{
  "title": "Get one past exam paper",
  "readOnlyHint": true,
  "openWorldHint": false
}
civil_service_salaries — Civil-service net salaries
Advertised by the server during the last successful anonymous check.
Advertised read-only

Indicative net monthly pay (MAD) at the first step of about 370 Moroccan civil-service grades (official simulator basis), with a link to the salary page of each grade.

civil_service_salaries input schema
{
  "type": "object",
  "required": [],
  "properties": {
    "lang": {
      "enum": [
        "fr",
        "ar"
      ],
      "type": "string",
      "description": "Language of the labels: fr (default) or ar."
    },
    "grade": {
      "type": "string",
      "description": "Optional text to keep only matching grades (e.g. 'ingénieur', 'technicien')."
    }
  }
}
civil_service_salaries annotations
{
  "title": "Civil-service net salaries",
  "readOnlyHint": true,
  "openWorldHint": false
}
public_holidays — Morocco public holidays
Advertised by the server during the last successful anonymous check.
Advertised read-only

Moroccan public holidays for this year and next. Islamic holidays carry approximate=true until the Ministry of Habous confirms the moon sighting.

public_holidays input schema
{
  "type": "object",
  "required": [],
  "properties": {}
}
public_holidays annotations
{
  "title": "Morocco public holidays",
  "readOnlyHint": true,
  "openWorldHint": false
}
school_holidays — Morocco school holidays
Advertised by the server during the last successful anonymous check.
Advertised read-only

School breaks of the current Moroccan school year (ministerial decision), end dates inclusive.

school_holidays input schema
{
  "type": "object",
  "required": [],
  "properties": {}
}
school_holidays annotations
{
  "title": "Morocco school holidays",
  "readOnlyHint": true,
  "openWorldHint": false
}
list_filters — Search filter values
Advertised by the server during the last successful anonymous check.
Advertised read-only

The exact diploma and region values accepted by search_concours, with French and Arabic labels.

list_filters input schema
{
  "type": "object",
  "required": [],
  "properties": {}
}
list_filters annotations
{
  "title": "Search filter values",
  "readOnlyHint": true,
  "openWorldHint": false
}

Prompts

Not advertised

No prompt definitions available.

Resources

Not advertised

No resource definitions available.

30-day availability

Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.

Successful checks
1 of 1 (100%)
Average latency
907 ms
95th percentile latency
907 ms

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · probe · passed · 907 ms · metadata changed · 8 tool(s)

Connect from your client

Each snippet registers the same endpoint; pick the client you use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Claude Code

Run this once in a terminal. It registers the remote server. Use --scope project to write .mcp.json for the repo.
Claude Code configuration
claude mcp add --transport http wadifa-info-mcp https://www.wadifa-info.com/mcp

Codex

Run this once. Codex stores MCP servers in ~/.codex/config.toml (or .codex/config.toml in a trusted project).
Codex configuration
codex mcp add wadifa-info-mcp --url https://www.wadifa-info.com/mcp

Cursor

Merge this server into .cursor/mcp.json in your project, then enable wadifa-info-mcp in your MCP settings.
Cursor configuration
{
  "mcpServers": {
    "wadifa-info-mcp": {
      "url": "https://www.wadifa-info.com/mcp"
    }
  }
}

Cline

Merge this into cline_mcp_settings.json (Cline → MCP Servers → Configure).
Cline configuration
{
  "mcpServers": {
    "wadifa-info-mcp": {
      "type": "streamableHttp",
      "url": "https://www.wadifa-info.com/mcp",
      "disabled": false
    }
  }
}

VS Code

Merge this server into .vscode/mcp.json. Use MCP: List Servers to start wadifa-info-mcp and inspect its tools.
VS Code configuration
{
  "servers": {
    "wadifa-info-mcp": {
      "type": "http",
      "url": "https://www.wadifa-info.com/mcp"
    }
  }
}

Gemini CLI

Run this once. It writes .gemini/settings.json in the current project; pass --scope user for ~/.gemini/settings.json.
Gemini CLI configuration
gemini mcp add --transport http wadifa-info-mcp https://www.wadifa-info.com/mcp

Claude Desktop

Merge this into claude_desktop_config.json (macOS: ~/Library/Application Support/Claude/, Windows: %APPDATA%\Claude\), then restart Claude Desktop.
Claude Desktop configuration
{
  "mcpServers": {
    "wadifa-info-mcp": {
      "url": "https://www.wadifa-info.com/mcp"
    }
  }
}

Windsurf

Merge this into ~/.codeium/windsurf/mcp_config.json, then refresh MCP in Cascade. Windsurf remote servers use serverUrl, not url.
Windsurf configuration
{
  "mcpServers": {
    "wadifa-info-mcp": {
      "serverUrl": "https://www.wadifa-info.com/mcp"
    }
  }
}

Let your agent find its tools

Find servers like Wadifa Info MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.

Do you run Wadifa Info MCP?

Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.

Claim this listing