{
  "serverInfo": {
    "name": "FTIR.fun Spectral Search",
    "version": "1.0.0"
  },
  "authentication": {
    "required": false,
    "schemes": []
  },
  "tools": [
    {
      "name": "ftir_identify_material",
      "description": "High-precision FTIR spectral database search with evidence-based reasoning for material classification.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "spectrum": {
            "type": "object"
          },
          "file_base64": {
            "type": "string"
          },
          "filename": {
            "type": "string",
            "default": "spectrum.0"
          },
          "top_k": {
            "type": "integer",
            "default": 15
          },
          "tolerance_cm1": {
            "type": "integer",
            "default": 8
          }
        },
        "required": ["spectrum"]
      }
    },
    {
      "name": "ftir_explain_peaks",
      "description": "Explain FTIR peaks with current peak-group evidence and ranked library context.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "spectrum": {
            "type": "object"
          },
          "top_k": {
            "type": "integer",
            "default": 15
          },
          "tolerance_cm1": {
            "type": "integer",
            "default": 8
          }
        },
        "required": ["spectrum"]
      }
    },
    {
      "name": "ftir_match_library_topk",
      "description": "Return ranked FTIR spectral-library top-k matches for material screening.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "spectrum": {
            "type": "object"
          },
          "file_base64": {
            "type": "string"
          },
          "filename": {
            "type": "string",
            "default": "spectrum.0"
          },
          "top_k": {
            "type": "integer",
            "default": 15
          },
          "tolerance_cm1": {
            "type": "integer",
            "default": 8
          }
        },
        "required": ["spectrum"]
      }
    },
    {
      "name": "ftir_assign_functional_groups",
      "description": "Assign likely FTIR functional groups using current peak evidence and library context.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "spectrum": {
            "type": "object"
          },
          "top_k": {
            "type": "integer",
            "default": 15
          },
          "tolerance_cm1": {
            "type": "integer",
            "default": 8
          }
        },
        "required": ["spectrum"]
      }
    },
    {
      "name": "search_ftir_peaks",
      "description": "Search the FTIR library using peak positions in cm^-1.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "peaks": {
            "type": "array",
            "items": {
              "type": "number"
            }
          },
          "top_k": {
            "type": "integer",
            "default": 10
          },
          "tolerance": {
            "type": "integer",
            "default": 8
          }
        },
        "required": ["peaks"]
      }
    },
    {
      "name": "search_ftir_file",
      "description": "Search the FTIR library using a base64-encoded spectrum file.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "file_base64": {
            "type": "string"
          },
          "filename": {
            "type": "string",
            "default": "spectrum.0"
          },
          "top_k": {
            "type": "integer",
            "default": 10
          }
        },
        "required": ["file_base64"]
      }
    },
    {
      "name": "search",
      "description": "Search FTIR.fun public result pages by keyword or result number using the OpenAI-compatible MCP retrieval schema. Returns real public result URLs for citations.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string"
          }
        },
        "required": ["query"]
      }
    },
    {
      "name": "fetch",
      "description": "Fetch a public FTIR.fun result document by canonical id using the OpenAI-compatible MCP retrieval schema.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          }
        },
        "required": ["id"]
      }
    }
  ],
  "resources": [],
  "prompts": []
}
