Skip to main content

MCP server for everyrow: agent ops at spreadsheet scale

Project description

everyrow MCP Server

MCP (Model Context Protocol) server for everyrow: agent ops at spreadsheet scale.

This server exposes everyrow's 5 core operations as MCP tools, allowing LLM applications to screen, rank, dedupe, merge, and run agents on CSV files.

All tools operate on local CSV files. Provide absolute file paths as input, and transformed results are written to new CSV files at your specified output path.

Setup

The server requires an everyrow API key. Get one at everyrow.io/api-key ($20 free credit).

Either set the API key in your shell environment, or hardcode it directly in the config below.

export EVERYROW_API_KEY=your_key_here

Add this to your MCP config. If you have uv installed:

{
  "mcpServers": {
    "everyrow": {
      "command": "uvx",
      "args": ["everyrow-mcp"],
      "env": {
        "EVERYROW_API_KEY": "${EVERYROW_API_KEY}"
      }
    }
  }
}

Alternatively, install with pip (ideally in a venv) and use "command": "everyrow-mcp" instead of uvx.

Available Tools

everyrow_screen

Filter CSV rows based on criteria that require judgment.

Parameters:
- task: Natural language description of screening criteria
- input_csv: Absolute path to input CSV
- output_path: Directory or full .csv path for output

Example: Filter job postings for "remote-friendly AND senior-level AND salary disclosed"

everyrow_rank

Score and sort CSV rows based on qualitative criteria.

Parameters:
- task: Natural language description of ranking criteria
- input_csv: Absolute path to input CSV
- output_path: Directory or full .csv path for output
- field_name: Name of the score field to add
- field_type: Type of field (float, int, str, bool)
- ascending_order: Sort direction (default: true)

Example: Rank leads by "likelihood to need data integration solutions"

everyrow_dedupe

Remove duplicate rows using semantic equivalence.

Parameters:
- equivalence_relation: Natural language description of what makes rows duplicates
- input_csv: Absolute path to input CSV
- output_path: Directory or full .csv path for output
- select_representative: Keep one row per duplicate group (default: true)

Example: Dedupe contacts where "same person even with name abbreviations or career changes"

everyrow_merge

Join two CSV files using intelligent entity matching.

Parameters:
- task: Natural language description of how to match rows
- left_csv: Absolute path to primary CSV
- right_csv: Absolute path to secondary CSV
- output_path: Directory or full .csv path for output
- merge_on_left: (optional) Column name in left table
- merge_on_right: (optional) Column name in right table

Example: Match software products to parent companies (Photoshop -> Adobe)

everyrow_agent

Run web research agents on each row of a CSV.

Parameters:
- task: Natural language description of research task
- input_csv: Absolute path to input CSV
- output_path: Directory or full .csv path for output

Example: "Find this company's latest funding round and lead investors"

Output Path Handling

The output_path parameter accepts two formats:

  1. Directory: Output file is named {operation}_{input_name}.csv

    • Input: /data/companies.csv, Output path: /output/
    • Result: /output/screened_companies.csv
  2. Full file path: Use the exact path specified

    • Output path: /output/my_results.csv
    • Result: /output/my_results.csv

The server validates output paths before making API requests to avoid wasted costs.

Development

cd everyrow-mcp
uv sync
uv run pytest

License

MIT - See LICENSE.txt

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

everyrow_mcp-0.1.7.tar.gz (61.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

everyrow_mcp-0.1.7-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file everyrow_mcp-0.1.7.tar.gz.

File metadata

  • Download URL: everyrow_mcp-0.1.7.tar.gz
  • Upload date:
  • Size: 61.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for everyrow_mcp-0.1.7.tar.gz
Algorithm Hash digest
SHA256 0ee2a10082bd24bf10d80071dc737581d7d03dcb46ff73aa52857ccbaa55d4ce
MD5 031e6f1c90f21ca4f9691d22f7cc3357
BLAKE2b-256 b797c0e99006e777aa2aae50d778fba7c55779b847d49bbc916e7badf6b46eea

See more details on using hashes here.

Provenance

The following attestation bundles were made for everyrow_mcp-0.1.7.tar.gz:

Publisher: publish.yaml on futuresearch/everyrow-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file everyrow_mcp-0.1.7-py3-none-any.whl.

File metadata

  • Download URL: everyrow_mcp-0.1.7-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for everyrow_mcp-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 a91036d1282a51a0fca5dcb2b7cb8efb7c1b961fc66d313ac1cf9923ce276ff9
MD5 a0b43e733f0f15a5c109cb1cb8324212
BLAKE2b-256 c4e2964a45edf37e1a39b7711cc4b54c9bb93b35dd3bfc6134960bd1e86ad083

See more details on using hashes here.

Provenance

The following attestation bundles were made for everyrow_mcp-0.1.7-py3-none-any.whl:

Publisher: publish.yaml on futuresearch/everyrow-sdk

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page