UFC-MCP

UFC-MCP

A local file conversion server supporting audio, video, image, document, and specialized formats via Model Context Protocol. It enables batch and single-file conversions without cloud dependencies.

Category
Visit Server

README

UFC-MCP โ€” Universal File Converter MCP

A full-featured Model Context Protocol server that lets Claude Desktop (or any MCP host) convert audio, video, image, document, and specialized scientific/business files โ€” all running locally with no cloud dependencies.

Features

Category Formats Engine
๐ŸŽต Audio MP3, WAV, FLAC, AAC, OGG, M4A, AIFF, OPUS, WMA FFmpeg
๐ŸŽฌ Video MP4, WebM, AVI, MOV, MKV, FLV, WMV, GIF, 3GP FFmpeg
๐Ÿ–ผ๏ธ Image JPEG, PNG, WebP, AVIF, GIF, TIFF, ICO, BMP, SVG Sharp
๐Ÿ“„ Document Markdown, JSON, YAML, HTML, CSV, TXT Node.js
๐Ÿ“Š Spreadsheet CSV, TSV, XLSX, JSON, HTML, Markdown Node.js
๐Ÿ—œ๏ธ Archive ZIP, GZIP, BZIP2, TAR, 7Z, RAR Node.js + CLI
๐Ÿ”ค Font TTF, OTF, WOFF, WOFF2 fonttools
๐ŸŽจ 3D Models OBJ, STL, PLY, GLTF, GLB Node.js + assimp
๐Ÿ“ง Email EML, MBOX โ†’ JSON/HTML/TXT Node.js
๐ŸŽผ Music Notation MIDI, ABC, MusicXML โ†’ JSON Node.js
๐Ÿงฌ Biotech FASTA, FASTQ, VCF, GFF, PDB* โ†’ JSON/CSV Node.js
๐Ÿ’ฐ Fintech OFX, QFX, QIF, MT940 โ†’ JSON/CSV Node.js
๐Ÿ“ฆ Logistics EDI, EDIFACT, GPX โ†’ JSON/GeoJSON Node.js
โš™๏ธ Dev Formats TOML, INI, ENV, XML, Protobuf โ†’ JSON Node.js
๐Ÿ“ˆ Statistics R, MATLAB, SPSS, Stata โ†’ JSON/CSV Node.js + Python*
๐Ÿงช Chemistry MOL, SDF, XYZ, SMILES โ†’ JSON/CSV; PDB* (via external RDKit/Open Babel tools) Node.js + RDKit*
๐Ÿ”ญ Astronomy FITS โ†’ JSON/CSV (header) Node.js + astropy*
๐ŸŒ Geoscience KML, GeoJSON, NetCDF*, HDF5* โ†’ JSON Node.js + Python*

* Some advanced features require optional Python libraries. PDB* conversion currently relies on external RDKit/Open Babel tooling and is not handled by the built-in ChemistryProcessor.

MCP Tools

  • convert_audio โ€” bitrate, sample rate, channel control
  • convert_video โ€” trim, resize, fps, bitrate, audio extraction
  • convert_image โ€” resize, compress, rotate, grayscale, icon set generation
  • convert_document โ€” bidirectional: MD โ†” JSON โ†” YAML โ†” HTML โ†” CSV
  • convert_spreadsheet โ€” CSV, TSV, XLSX โ†” JSON, HTML, Markdown
  • convert_archive โ€” compress/decompress archives with various formats
  • convert_font โ€” convert between font formats
  • convert_3d โ€” convert 3D model formats
  • convert_email โ€” parse email files to JSON/HTML/TXT
  • convert_music โ€” music notation to structured JSON
  • convert_biotech โ€” bioinformatics file conversions
  • convert_fintech โ€” financial data format conversions
  • convert_logistics โ€” supply chain & geospatial conversions
  • convert_dev_format โ€” config/schema format conversions
  • convert_statistics โ€” statistical data formats (R, MATLAB, SPSS, Stata)
  • convert_chemistry โ€” molecular file formats (MOL, SDF, XYZ, SMILES)
  • convert_astronomy โ€” astronomy data (FITS files)
  • convert_geoscience โ€” geoscience formats (KML, NetCDF, HDF5)
  • batch_convert โ€” parallel multi-file conversion
  • get_supported_formats โ€” list all formats by category
  • get_conversion_history โ€” session conversion log

Requirements

  • Node.js โ‰ฅ 18
  • FFmpeg on PATH (required for audio/video)
# macOS
brew install ffmpeg

# Ubuntu/Debian
sudo apt install ffmpeg

# Windows
winget install Gyan.FFmpeg

Installation

npm install
npm run build

Claude Desktop Setup

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "file-converter": {
      "command": "node",
      "args": ["/path/to/UFC-MCP/dist/index.js"]
    }
  }
}

Restart Claude Desktop and start converting!

Example Prompts

"Convert /music/beat.mp3 to WAV at 48000Hz stereo"
"Batch convert all MP3s in /stems/ to FLAC"
"Convert broll.mov to WebM, trim to first 30 seconds"
"Extract audio from interview.mp4 as a WAV file"
"Convert logo.png to WebP at quality 90, 800px wide"
"Generate a full icon set from app-icon.png"
"Convert README.md to JSON for my API response"
"Transform data.csv to JSON, then to Markdown table"
"Convert molecule.mol to JSON with atom coordinates"
"Parse FITS astronomy file header to JSON"
"Convert protein.pdb to structured JSON"
"Transform financial_data.ofx to CSV"
"Convert research_data.mat MATLAB file to JSON"
"Parse KML map data to GeoJSON format"

Project Structure

src/
  index.ts                     # MCP server entry point
  state/
    ConversionState.ts         # Conversion history & status tracking
  processors/
    AudioProcessor.ts          # FFmpeg-based audio conversion
    VideoProcessor.ts          # FFmpeg-based video conversion
    ImageProcessor.ts          # Sharp-based image conversion
    DocProcessor.ts            # Pure Node.js document conversion
    SpreadsheetProcessor.ts    # Spreadsheet/tabular data conversion
    ArchiveProcessor.ts        # Archive compression/decompression
    FontProcessor.ts           # Font format conversion
    3DProcessor.ts             # 3D model conversion
    EmailProcessor.ts          # Email file parsing
    MusicProcessor.ts          # Music notation conversion
    BiotechProcessor.ts        # Bioinformatics file conversion
    FintechProcessor.ts        # Financial data conversion
    LogisticsProcessor.ts      # Supply chain & geospatial conversion
    DevFormatProcessor.ts      # Developer config/schema conversion
    StatisticsProcessor.ts     # Statistical data format conversion
    ChemistryProcessor.ts      # Molecular/chemistry file conversion
    AstronomyProcessor.ts      # Astronomy data conversion
    GeoscienceProcessor.ts     # Geoscience data conversion
dashboard/
  index.html                   # Visual overview dashboard

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured