{
  "name": "agip-public-content",
  "description": "Read-only Model Context Protocol access to published AGIP pages, all dynamic news and article groups, photo and video galleries, publications, speeches, links, FAQs, countries, offices, services, subservices, and service FAQs.",
  "version": "1.0.0",
  "protocolVersion": "2025-11-25",
  "serverInfo": {
    "name": "agip-public-content",
    "version": "1.0.0"
  },
  "vendor": {
    "name": "Abu-Ghazaleh Intellectual Property",
    "url": "https://www.agip.com"
  },
  "endpoint": "https://www.agip.com/mcp",
  "transport": {
    "url": "https://www.agip.com/mcp",
    "type": "streamable-http",
    "stateless": true
  },
  "authentication": {
    "required": false,
    "type": "none"
  },
  "capabilities": {
    "tools": {
      "listChanged": false,
      "readOnly": true
    },
    "readOnly": true,
    "resources": {},
    "prompts": {}
  },
  "requirements": {
    "languageArgument": "lang",
    "languageRequiredOnEveryTool": true,
    "publishedContentOnly": true,
    "activeStatusValue": 1,
    "archiveValue": 0
  },
  "tools": [
    { "name": "list_modules", "description": "List AGIP public content modules for a language.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" } } } },
    { "name": "list_content_groups", "description": "List all published news, article, event, and other content groups dynamically.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "query": { "type": "string", "maxLength": 200 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "search_content", "description": "Search published AGIP pages and content groups.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "query": { "type": "string", "maxLength": 200 }, "groupKey": { "type": "string", "maxLength": 100 }, "dateFrom": { "type": "string", "maxLength": 100, "description": "YYYY-MM-DD" }, "dateTo": { "type": "string", "maxLength": 100, "description": "YYYY-MM-DD" }, "modules": { "type": "array", "items": { "type": "string" }, "maxItems": 4 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "list_pages", "description": "List published localized AGIP pages.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "query": { "type": "string", "maxLength": 200 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "get_page", "description": "Get one published localized page.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "pageId": { "type": "integer", "minimum": 1 }, "pageKey": { "type": "string", "maxLength": 100 } } } },
    { "name": "list_news", "description": "List published items from any dynamically configured content group.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "groupKey": { "type": "string", "maxLength": 100 }, "query": { "type": "string", "maxLength": 200 }, "dateFrom": { "type": "string", "maxLength": 100, "description": "YYYY-MM-DD" }, "dateTo": { "type": "string", "maxLength": 100, "description": "YYYY-MM-DD" }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "get_news", "description": "Get one published content item.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "newsId": { "type": "integer", "minimum": 1 } } } },
    { "name": "list_photo_galleries", "description": "List published photo galleries.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "query": { "type": "string", "maxLength": 200 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "get_photo_gallery", "description": "Get a gallery and its published photos.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "galleryId": { "type": "integer", "minimum": 1 }, "galleryKey": { "type": "string", "maxLength": 100 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "list_video_galleries", "description": "List accessible localized AGIP video galleries.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "query": { "type": "string", "maxLength": 200 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "get_video_gallery", "description": "Get an accessible video gallery and its videos.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "galleryId": { "type": "integer", "minimum": 1 }, "galleryKey": { "type": "string", "maxLength": 100 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "get_video", "description": "Get one accessible localized AGIP video.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "videoId": { "type": "integer", "minimum": 1 } } } },
    { "name": "list_publication_groups", "description": "List accessible localized publication groups.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "query": { "type": "string", "maxLength": 200 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "list_publications", "description": "List accessible localized AGIP publications.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "groupKey": { "type": "string", "maxLength": 100 }, "query": { "type": "string", "maxLength": 200 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "get_publication", "description": "Get one accessible localized AGIP publication.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "publicationId": { "type": "integer", "minimum": 1 }, "publicationKey": { "type": "string", "maxLength": 100 } } } },
    { "name": "list_speech_groups", "description": "List accessible localized speech groups.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "query": { "type": "string", "maxLength": 200 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "list_speeches", "description": "List accessible localized AGIP speeches.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "groupKey": { "type": "string", "maxLength": 100 }, "query": { "type": "string", "maxLength": 200 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "get_speech", "description": "Get one accessible localized AGIP speech.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "speechId": { "type": "integer", "minimum": 1 }, "speechKey": { "type": "string", "maxLength": 100 } } } },
    { "name": "list_link_groups", "description": "List published localized AGIP link groups.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "query": { "type": "string", "maxLength": 200 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "list_links", "description": "List published localized AGIP links.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "groupKey": { "type": "string", "maxLength": 100 }, "query": { "type": "string", "maxLength": 200 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "get_link", "description": "Get one published localized AGIP link.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "linkId": { "type": "integer", "minimum": 1 }, "linkKey": { "type": "string", "maxLength": 100 } } } },
    { "name": "list_faqs", "description": "List published general FAQs.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "type": { "type": "string", "maxLength": 100 }, "parentId": { "type": "integer", "minimum": 1 }, "query": { "type": "string", "maxLength": 200 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "list_countries", "description": "List active AGIP countries.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "query": { "type": "string", "maxLength": 200 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "list_offices", "description": "List active public AGIP offices.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "officeType": { "type": "string", "maxLength": 100 }, "query": { "type": "string", "maxLength": 200 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "get_country", "description": "Get one active country or office.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "countryId": { "type": "integer", "minimum": 1 }, "countryKey": { "type": "string", "maxLength": 100 }, "countryCode": { "type": "string", "maxLength": 100 } } } },
    { "name": "list_main_services", "description": "List active main services, optionally for a country.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "countryId": { "type": "integer", "minimum": 1 }, "countryKey": { "type": "string", "maxLength": 100 }, "query": { "type": "string", "maxLength": 200 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "list_country_services", "description": "List active service mappings for a country.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "countryId": { "type": "integer", "minimum": 1 }, "countryKey": { "type": "string", "maxLength": 100 }, "mainServiceId": { "type": "integer", "minimum": 1 }, "query": { "type": "string", "maxLength": 200 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "get_country_service", "description": "Get one active country-service mapping.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "mappingId": { "type": "integer", "minimum": 1 }, "countryKey": { "type": "string", "maxLength": 100 }, "serviceKey": { "type": "string", "maxLength": 100 }, "subServiceOrder": { "type": "integer", "minimum": 1 } } } },
    { "name": "list_subservices", "description": "List active mapped subservices for a country and main service.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "countryId": { "type": "integer", "minimum": 1 }, "countryKey": { "type": "string", "maxLength": 100 }, "mainServiceId": { "type": "integer", "minimum": 1 }, "serviceKey": { "type": "string", "maxLength": 100 }, "query": { "type": "string", "maxLength": 200 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } },
    { "name": "list_service_faqs", "description": "List published FAQs for an active country-service mapping.", "annotations": { "readOnlyHint": true, "destructiveHint": false, "idempotentHint": true, "openWorldHint": false, "readOnly": true, "destructive": false, "idempotent": true }, "inputSchema": { "type": "object", "additionalProperties": false, "required": ["lang"], "properties": { "lang": { "type": "string", "maxLength": 100, "description": "Required enabled AGIP language code (for example en or ar)" }, "mappingId": { "type": "integer", "minimum": 1 }, "query": { "type": "string", "maxLength": 200 }, "page": { "type": "integer", "minimum": 1 }, "pageSize": { "type": "integer", "minimum": 1, "maximum": 50 } } } }
  ],
  "errorHandling": {
    "protocolErrors": "Invalid JSON-RPC or MCP envelopes return standard JSON-RPC error responses.",
    "toolErrors": "Tool execution failures are returned in MCP tool results with isError=true and a safe public message.",
    "httpErrors": "Unsupported methods or media types return the appropriate 4xx response; unexpected failures return 5xx without internal details."
  },
  "toolAnnotations": {
    "readOnlyHint": true,
    "destructiveHint": false,
    "idempotentHint": true,
    "openWorldHint": false
  }
}
