# python-mcp

A local STDIO server that connects AI assistants to the Files.com API for managing remote files, folder structures, and user accounts directly from your editor.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 3
- Author: Files-com
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/Files-com/files-mcp
- Updated: 2026-10-22
- HTML: https://affpapa.org/en/nevibecode/mcp/python-mcp

## What it does

This MCP server runs as a local child process over STDIO to connect your coding assistant with the Files.com API. Outbound network requests handle remote site operations, letting the model query directories, transfer data, and manage user accounts under your API credentials. It does not accept network connections or support HTTP/SSE modes. Every action executes through standard input and output on the host machine.

Execution relies on the `uvx` runner from Astral, which launches the `files-com-mcp` package in an isolated environment. You provide authentication through the `FILES_COM_API_KEY` environment variable. To safeguard your local disk, you can set `FILES_COM_LOCAL_ROOT` to an absolute folder path. This confines all read and write transfers strictly to that directory tree and resolves symlinks.

If `FILES_COM_LOCAL_ROOT` points to a path that does not already exist, the server will not start. Keep in mind that this path constraint does not replace file permissions of your operating system.

## Requirements
- Needs: Python and uv (commands run via uvx)
- Environment variables: `FILES_COM_API_KEY`, `FILES_COM_LOCAL_ROOT` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add --env FILES_COM_API_KEY=<FILES_COM_API_KEY> --env FILES_COM_LOCAL_ROOT=<FILES_COM_LOCAL_ROOT> --transport stdio python-mcp -- uvx files-com-mcp
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from files-com-mcp <command>

### Codex

**Platform CLI**
```bash
codex mcp add python-mcp --env FILES_COM_API_KEY=<FILES_COM_API_KEY> --env FILES_COM_LOCAL_ROOT=<FILES_COM_LOCAL_ROOT> -- uvx files-com-mcp
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from files-com-mcp <command>

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "python-mcp": {
            "command": "uvx",
            "args": [
                "files-com-mcp"
            ],
            "env": {
                "FILES_COM_API_KEY": "<FILES_COM_API_KEY>",
                "FILES_COM_LOCAL_ROOT": "<FILES_COM_LOCAL_ROOT>"
            }
        }
    }
}
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from files-com-mcp <command>

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "python-mcp": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "files-com-mcp"
            ],
            "env": {
                "FILES_COM_API_KEY": "<FILES_COM_API_KEY>",
                "FILES_COM_LOCAL_ROOT": "<FILES_COM_LOCAL_ROOT>"
            }
        }
    }
}
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from files-com-mcp <command>

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add -e FILES_COM_API_KEY=<FILES_COM_API_KEY> -e FILES_COM_LOCAL_ROOT=<FILES_COM_LOCAL_ROOT> python-mcp uvx files-com-mcp
```
Replace <…> with your own values. uvx runs the command named after the package; if the README names another one, use uvx --from files-com-mcp <command>

## When to use it
- transfer files to and from Files.com without leaving the chat
- inspect remote directory listings and file metadata
- provision and manage user accounts on Files.com
- restrict agent file transfers to a specific local folder

## Example prompts
- List the contents of `/reports/2025` on Files.com and show file metadata
- Upload `export.csv` from my project into the `/incoming` remote folder
- Create a new user on Files.com with read access to `/partners`

## Similar
- [mcp-server](https://affpapa.org/en/nevibecode/mcp/mcp-server.md) — MCP server · ★ 43902
- [Coder](https://affpapa.org/en/nevibecode/mcp/coder.md) — MCP server · ★ 17191
- [firebase-mcp](https://affpapa.org/en/nevibecode/mcp/firebase-mcp.md) — MCP server · ★ 4482
- [Radar Kubernetes MCP Server](https://affpapa.org/en/nevibecode/mcp/radar-kubernetes-mcp-server.md) — MCP server · ★ 3918
- [Supabase](https://affpapa.org/en/nevibecode/mcp/supabase.md) — MCP server · ★ 2974
- [Microsoft Fabric MCP Server](https://affpapa.org/en/nevibecode/mcp/microsoft-fabric-mcp-server.md) — MCP server · ★ 3804

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
