npm @abhishekmcp/filesstdioMITupdated 2mo ago
A collection of Model Context Protocol servers, built in TypeScript.
Files 能做什么?
🧰 mcp-suite
A collection of Model Context Protocol servers, built in TypeScript.
Each server lives in its own folder under servers/ and publishes to npm as an independent package, while sharing tooling through an npm workspace. Connect them to any MCP client — Claude Desktop, Claude Code, Cursor, and more.
Table of contents
- Servers
- Quickstart
- Install
- Connecting to a client
- Architecture & conventions
- Development
- Adding a new server
- Publishing
- Contributing
- License
Servers
| Server | Description | Status |
|---|---|---|
notes |
Local markdown notes: ranked full-text and semantic search, tags, todos, a [[wiki-link]] knowledge graph, daily notes + templates, and slash-command workflows (prompts) |
✅ Stable |
files |
Sandboxed local filesystem: read, glob + content search, token-efficient edits, copy/move, soft-delete trash, zip, checksums, and dedup | ✅ Stable |
github |
GitHub: search repos/code/issues, read repos/issues/PRs/files, notifications, create issues — OAuth device flow or token | ✅ Stable |
git |
Git: status, log, diff, file history, branches/tags, gated stage/commit, and remote clone/fetch/pull/push — pure-JS, no git binary | ✅ Stable |
sql |
SQL databases: read-only query + schema introspection over Postgres & SQLite, gated writes | ✅ Stable |
http |
HTTP/REST client: ad-hoc requests + saved collections/environments, env secrets, host-allowlisted + SSRF-safe | ✅ Stable |
More on the way: a Spotify controller, and others.
Quickstart
git clone https://github.com/Abhishekkumar2021/mcp-suite.git
cd mcp-suite
npm install # installs deps for every workspace
npm run build # builds every server
Install
Every server ships through every common channel. For the Claude Code plugin, add the marketplace
once — /plugin marketplace add Abhishekkumar2021/mcp-suite — then install per the table. See each
server's README for full config.
| Server | Claude Code plugin | npm (any client) | Claude Desktop (MCPB) | MCP registry |
|---|---|---|---|---|
notes |
/plugin install notes |
npx -y @abhishekmcp/notes |
drag notes-*.mcpb from the latest release |
io.github.Abhishekkumar2021/notes |
files |
/plugin install files |
npx -y @abhishekmcp/files |
drag files-*.mcpb |
io.github.Abhishekkumar2021/files |
github |
/plugin install github |
npx -y @abhishekmcp/github |
drag github-*.mcpb |
io.github.Abhishekkumar2021/github |
git |
/plugin install git |
npx -y @abhishekmcp/git |
drag git-*.mcpb |
io.github.Abhishekkumar2021/git |
sql |
/plugin install sql |
npx -y @abhishekmcp/sql |
drag sql-*.mcpb |
io.github.Abhishekkumar2021/sql |
http |
/plugin install http |
npx -y @abhishekmcp/http |
drag http-*.mcpb |
io.github.Abhishekkumar2021/http |
notesdefaults to~/notes;filesrequiresFS_ROOTS(the directories it may touch). MCPB bundles install via Claude Desktop → Settings → Extensions.
Connecting to a client
Each server's README has full configuration instructions. As an example, to use the notes server with Claude Code:
claude mcp add notes --env NOTES_DIR=$HOME/notes -- node "$(pwd)/servers/notes/dist/index.js"
Or with Claude Desktop (claude_desktop_config.json):
{
"mcpServers": {
"notes": {
"command": "node",
"args": ["/absolute/path/to/mcp-suite/servers/notes/dist/index.js"],
"env": { "NOTES_DIR": "/absolute/path/to/your/notes" }
}
}
}
Architecture & conventions
A few principles hold across every server:
- Pure-JS/WASM by default; native only when genuinely required. Servers run via
npx/MCPB on any machine, so portable pure-JS/WebAssembly is strongly preferred and a native dependency is used only when genuinely required (gated + documented). In practice these servers are dependency-light:notesuses MiniSearch + WebAssembly embeddings,sqluses thesql.jsWASM SQLite engine, andfilesusesfast-globinstead of ripgrep.npm auditstays clean. - Sandbox-first, layered design. Each server keeps a thin
index.ts(tool registration only) over focused modules, with a single security boundary every path must pass through (realpath-containment, symlink-escape rejection, atomic writes). - Token-efficient by default. Pagination, head/tail/section reads, snippets, and compact graph refs keep tool output small.
- Automated, hands-off releases. A GitHub Release tagged
<server>-v<version>publishes to npm (with provenance), the official MCP registry, and attaches an MCPB bundle — all via OIDC, no secrets. - Tested in CI. Each server ships a committed
node:testsuite (unit + integration/security) run on every push.
Development
This is an npm workspaces monorepo.
npm install # install all workspace dependencies (run once at the root)
npm run build # build every server
npm run build -w servers/notes # build a single server
npm test --workspaces --if-present # run each server's test suite
npm run clean # remove all build output
Adding a new server
- Create
servers/<name>/with its ownpackage.json(unique npmname) and atsconfig.jsonthatextends: "../../tsconfig.base.json". - Put source in
servers/<name>/src/. - Run
npm installat the root so the workspace picks it up. - Add a row to the Servers table above.
All servers follow the naming standard (@abhishekmcp/<slug>). See CONTRIBUTING.md for detailed guidelines.
Publishing
Releases are automated. Cutting a GitHub Release tagged <server>-v<version> triggers
publish.yml, which — authenticated entirely via GitHub OIDC (no
NPM_TOKEN) — publishes the package to npm with provenance, registers it on the official MCP
registry, and builds + attaches the MCPB bundle to the release.
# bump servers/<name>/package.json, commit, then:
gh release create <name>-v<version> --title "<name> v<version>" --notes "…"
Contributing
Contributions are welcome! Please read CONTRIBUTING.md and our Code of Conduct. Found a security issue? See SECURITY.md.
License
MIT © Abhishek
安装
把 Files 添加到你的客户端。选择你正在使用的那个。
claude mcp add files -- npx -y @abhishekmcp/filescodex mcp add files -- npx -y @abhishekmcp/filesamp mcp add files -- npx -y @abhishekmcp/files{
"mcpServers": {
"files": {
"command": "npx",
"args": [
"-y",
"@abhishekmcp/files"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"files": {
"command": "npx",
"args": [
"-y",
"@abhishekmcp/files"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"files","command":"npx","args":["-y","@abhishekmcp/files"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"files": {
"command": "npx",
"args": [
"-y",
"@abhishekmcp/files"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"files": {
"command": "npx",
"args": [
"-y",
"@abhishekmcp/files"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"files": {
"command": "npx",
"args": [
"-y",
"@abhishekmcp/files"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"files": {
"type": "local",
"command": "npx",
"args": [
"-y",
"@abhishekmcp/files"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"files": {
"command": {
"path": "npx",
"args": [
"-y",
"@abhishekmcp/files"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y @abhishekmcp/filesRun `goose configure`, choose **Add Extension → Command-line Extension**, and paste this command.
评分
39 / 100
不完整
- 文档25/25
- 维护16/25
- 可信度13/20
- 能力0/15
- 安装体验12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 58 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
版本历史
| 版本 | 发布于 |
|---|---|
| 0.2.0最新 | 2026年6月28日 |
| 0.1.0 | 2026年6月28日 |