Skip to main content
Glama
cithukyaw

mcp-csv-forwarder

by cithukyaw
README.md
# mcp-csv-forwarder

A simple MCP server that sends CSV data to a configured API endpoint.

### Build & Inspect

```shell
npm run build
npm run inspect
```
or
```shell
npx tsc
npx @modelcontextprotoc/inspector node build/server.js
```

### Example mcp.json:

```json
{
    "mcpServers": {
        "mcp-csv-forwarder": {
            "command": "node",
            "args": ["/path/to/mcp-csv-forwarder/build/server.js"],
            "env": {
                "API_URL": "https://example.com/api/csv", // required
                "API_KEY": "your_api_key_here", // required
                "CSV_COL_COUNT": 5 // optional: default to 5
            }
        }
    }
}
```

### Example prompt
```
Hey mcp-csv-forwarder, send a group of CSV data:
r1c1,r1c2,r1c3,r1c4,r1c5
r2c1,r2c2,r2c3,r2c4,r2c5
2025-12-17
r1c1,r1c2,r1c3,r1c4,r1c5
r2c1,r2c2,r2c3,r2c4,r2c5
2025-12-16
r1c1,r1c2,r1c3,r1c4,r1c5
r2c1,r2c2,r2c3,r2c4,r2c5
```

It will send data to the server in the format below:
```json
[
  {
    "csvLines": "r1c1,r1c2,r1c3,r1c4,r1c5\nr2c1,r2c2,r2c3,r2c4,r2c5
  },
  {
    "date": "2025-12-17",
    "csvLines": "r1c1,r1c2,r1c3,r1c4,r1c5\nr2c1,r2c2,r2c3,r2c4,r2c5
  },
  {
    "date": "2025-12-16",
    "csvLines": "r1c1,r1c2,r1c3,r1c4,r1c5\nr2c1,r2c2,r2c3,r2c4,r2c5
  },
]
```

#### Notes:
- You can implement your API endpoint to process this incoming data.
- You can also adjust the column count in the MCP config `CSV_COL_COUNT`.