MCP server
by xiaolaa2
Easily parse and manipulate MIDI files using Tone.js. Streamline your MIDI files workflow with our robust MIDI files sol
Parse and manipulate MIDI files, including reading track information, notes, pitch bends, and control changes. Add new musical elements and modify tempo.
MIDI Files is a community-built MCP server published by xiaolaa2 that provides AI assistants with tools and capabilities via the Model Context Protocol. Easily parse and manipulate MIDI files using Tone.js. Streamline your MIDI files workflow with our robust MIDI files sol It is categorized under file systems, other. This server exposes 11 tools that AI clients can invoke during conversations and coding sessions.
You can install MIDI Files in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.
MIT
MIDI Files is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.
Read, analyze, and understand files in your project
Example
Summarize README, analyze code structure, find TODO comments across codebase
Navigate large codebases 5x faster, understand projects quickly
Create, move, rename, and organize files based on natural language instructions
Example
Organize downloads by file type, rename files following convention, batch process images
Save hours on manual file organization
Search files for patterns, extract data, find information across directories
Example
Find all config files with API keys, extract emails from documents, search logs for errors
Find information instantly instead of manual grep/find
Share your MCP server with the developer community
I recommend MIDI Files for teams standardizing on MCP; the explainx.ai page compares cleanly with sibling servers.
MIDI Files has been reliable for tool-calling workflows; the MCP profile page is a good permalink for internal docs.
We evaluated MIDI Files against two servers with overlapping tools; this profile had the clearer scope statement.
According to our notes, MIDI Files benefits from clear Model Context Protocol framing — fewer ambiguous “AI plugin” claims.
According to our notes, MIDI Files benefits from clear Model Context Protocol framing — fewer ambiguous “AI plugin” claims.
MIDI Files reduced integration guesswork — categories and install configs on the listing matched the upstream repo.
MIDI Files is a well-scoped MCP server in the explainx.ai directory — install snippets and categories matched our Claude Code setup.
We evaluated MIDI Files against two servers with overlapping tools; this profile had the clearer scope statement.
We wired MIDI Files into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.
We wired MIDI Files into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.
showing 1-10 of 65
This is a MIDI file parsing and manipulation tool based on Tone.js and the @tonejs/midi library, providing functionality through MCP (Model Context Protocol) services. This tool allows you to easily read, analyze and modify MIDI files without delving into the complexities of the MIDI file format.
Use with an MCP client, supported clients include but are not limited to:
To install MIDI File Parser for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @xiaolaa2/midi-file-mcp --client claude
Configure midi-file-mcp in Cursor:
"midi-file-mcp": {
"command": "npx",
"args": [
"-y",
"midi-file-mcp"
]
}
All operations in MIDI Parser MCP require the absolute path to the MIDI file. This ensures that the tool can correctly locate and manipulate your MIDI files regardless of the current working directory.
Here are some example prompts you can use with your AI assistant:
Get MIDI File Information:
Can you show me information about the MIDI file at D:\path o\your\file.mid?
Analyzing Tracks:
Please analyze all tracks in D:\path o\your\file.mid and tell me how many notes are in each track.
Setting Tempo:
Change the tempo of D:\path o\your\file.mid to 120 BPM.
Working with Notes:
Show me all notes in track 1 of D:\path o\your\file.mid.
Adding Notes:
Add a C4 note at position 0 with a duration of 1 beat to track 0 in D:\path o\your\file.mid.
| Operation | Description | Parameters |
|---|---|---|
| get_midi_info | Get general MIDI file information | filePath |
| set_tempo | Set the tempo (BPM) of a MIDI file | filePath, bpm |
| get_tracks_info | Get information about all tracks | filePath |
| get_track_info_by_index | Get information about a specific track | filePath, trackIndex |
| get_notes_by_index | Get all notes from a specific track | filePath, trackIndex |
| get_pitchbends_by_index | Get all pitch bends from a specific track | filePath, trackIndex |
| get_controlchanges_by_index | Get all control changes from a specific track | filePath, trackIndex |
| add_notes_by_index | Add notes to a specific track | filePath, trackIndex, notes |
| add_controlchanges_by_index | Add control changes to a specific track | filePath, trackIndex, controlchanges |
| add_pitchbends_by_index | Add pitch bends to a specific track | filePath, trackIndex, pitchbends |
| add_track | Add a new track to the MIDI file | filePath |
Note: Always use double backslashes (\) or forward slashes (/) in file paths when working with Windows paths to avoid errors.
This project is licensed under the MIT License. See the LICENSE file for details.
Thanks to the following projects and libraries, without which this tool would not be possible:
Generate boilerplate files, apply templates, create project structures
Example
Create React component with tests and styles, generate OpenAPI spec, scaffold new project
Eliminate repetitive file creation work
Prerequisites
Time Estimate
10-20 minutes including configuration
Steps
Troubleshooting
✓ Do
✗ Don't
💡 Pro Tips
Architecture
MCP server provides file I/O operations (read, write, search, metadata) as tools Claude can invoke with natural language instructions.
Protocols
Compatibility
✓ Use when
Use for code analysis, file organization, content search, template generation, and automating repetitive file operations. Best for local development workflows.
✗ Avoid when
Avoid for system-critical files, sensitive credentials, production environments, or when file integrity is paramount. Don't use on files you can't afford to lose.