everyrow-mcp 0.1.10__tar.gz → 0.2.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {everyrow_mcp-0.1.10 → everyrow_mcp-0.2.0}/.gitignore +3 -0
- {everyrow_mcp-0.1.10 → everyrow_mcp-0.2.0}/PKG-INFO +12 -4
- {everyrow_mcp-0.1.10 → everyrow_mcp-0.2.0}/README.md +11 -3
- {everyrow_mcp-0.1.10 → everyrow_mcp-0.2.0}/manifest.json +1 -1
- {everyrow_mcp-0.1.10 → everyrow_mcp-0.2.0}/pyproject.toml +1 -1
- {everyrow_mcp-0.1.10 → everyrow_mcp-0.2.0}/server.json +2 -2
- {everyrow_mcp-0.1.10 → everyrow_mcp-0.2.0}/src/everyrow_mcp/server.py +6 -1
- {everyrow_mcp-0.1.10 → everyrow_mcp-0.2.0}/.mcpbignore +0 -0
- {everyrow_mcp-0.1.10 → everyrow_mcp-0.2.0}/src/everyrow_mcp/__init__.py +0 -0
- {everyrow_mcp-0.1.10 → everyrow_mcp-0.2.0}/src/everyrow_mcp/utils.py +0 -0
- {everyrow_mcp-0.1.10 → everyrow_mcp-0.2.0}/tests/__init__.py +0 -0
- {everyrow_mcp-0.1.10 → everyrow_mcp-0.2.0}/tests/conftest.py +0 -0
- {everyrow_mcp-0.1.10 → everyrow_mcp-0.2.0}/tests/test_integration.py +0 -0
- {everyrow_mcp-0.1.10 → everyrow_mcp-0.2.0}/tests/test_server.py +0 -0
- {everyrow_mcp-0.1.10 → everyrow_mcp-0.2.0}/tests/test_utils.py +0 -0
- {everyrow_mcp-0.1.10 → everyrow_mcp-0.2.0}/uv.lock +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: everyrow-mcp
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.2.0
|
|
4
4
|
Summary: MCP server for everyrow: agent ops at spreadsheet scale
|
|
5
5
|
Requires-Python: >=3.12
|
|
6
6
|
Requires-Dist: everyrow>=0.1.5
|
|
@@ -19,17 +19,25 @@ This server exposes everyrow's 5 core operations as MCP tools, allowing LLM appl
|
|
|
19
19
|
|
|
20
20
|
## Installation
|
|
21
21
|
|
|
22
|
+
The server requires an everyrow API key. Get one at [everyrow.io/api-key](https://everyrow.io/api-key) ($20 free credit).
|
|
23
|
+
|
|
22
24
|
### Claude Desktop
|
|
23
25
|
|
|
24
26
|
Download the latest `.mcpb` bundle from the [GitHub Releases](https://github.com/futuresearch/everyrow-sdk/releases) page and double-click to install in Claude Desktop. You'll be prompted to enter your everyrow API key during setup.
|
|
25
27
|
|
|
26
28
|
> **Note:** The MCPB bundle works in Claude Desktop's **Chat** mode. Due to a [known limitation](https://github.com/anthropics/claude-code/issues/20377), local MCP servers are not currently exposed in Cowork mode.
|
|
27
29
|
|
|
28
|
-
###
|
|
30
|
+
### Cursor
|
|
31
|
+
Set the environment variable in your terminal shell before opening cursor. You may need to re-open cursor from your shell after this. Alternatively, hardcode the api key within cursor settings instead of the hard-coded `${env:EVERYROW_API_KEY}`
|
|
32
|
+
```bash
|
|
33
|
+
export EVERYROW_API_KEY=your_key_here
|
|
34
|
+
```
|
|
29
35
|
|
|
30
|
-
|
|
36
|
+
[](cursor://anysphere.cursor-deeplink/mcp/install?name=everyrow&config=eyJlbnYiOnsiRVZFUllST1dfQVBJX0tFWSI6IiR7ZW52OkVWRVJZUk9XX0FQSV9LRVl9In0sImNvbW1hbmQiOiJ1dnggZXZlcnlyb3ctbWNwIn0%3D)
|
|
37
|
+
|
|
38
|
+
### Manual Config
|
|
31
39
|
|
|
32
|
-
Either set the API key in your shell environment, or hardcode it directly in the config below.
|
|
40
|
+
Either set the API key in your shell environment as mentioned above, or hardcode it directly in the config below. Environment variable interpolation may differ between MCP clients.
|
|
33
41
|
|
|
34
42
|
```bash
|
|
35
43
|
export EVERYROW_API_KEY=your_key_here
|
|
@@ -8,17 +8,25 @@ This server exposes everyrow's 5 core operations as MCP tools, allowing LLM appl
|
|
|
8
8
|
|
|
9
9
|
## Installation
|
|
10
10
|
|
|
11
|
+
The server requires an everyrow API key. Get one at [everyrow.io/api-key](https://everyrow.io/api-key) ($20 free credit).
|
|
12
|
+
|
|
11
13
|
### Claude Desktop
|
|
12
14
|
|
|
13
15
|
Download the latest `.mcpb` bundle from the [GitHub Releases](https://github.com/futuresearch/everyrow-sdk/releases) page and double-click to install in Claude Desktop. You'll be prompted to enter your everyrow API key during setup.
|
|
14
16
|
|
|
15
17
|
> **Note:** The MCPB bundle works in Claude Desktop's **Chat** mode. Due to a [known limitation](https://github.com/anthropics/claude-code/issues/20377), local MCP servers are not currently exposed in Cowork mode.
|
|
16
18
|
|
|
17
|
-
###
|
|
19
|
+
### Cursor
|
|
20
|
+
Set the environment variable in your terminal shell before opening cursor. You may need to re-open cursor from your shell after this. Alternatively, hardcode the api key within cursor settings instead of the hard-coded `${env:EVERYROW_API_KEY}`
|
|
21
|
+
```bash
|
|
22
|
+
export EVERYROW_API_KEY=your_key_here
|
|
23
|
+
```
|
|
18
24
|
|
|
19
|
-
|
|
25
|
+
[](cursor://anysphere.cursor-deeplink/mcp/install?name=everyrow&config=eyJlbnYiOnsiRVZFUllST1dfQVBJX0tFWSI6IiR7ZW52OkVWRVJZUk9XX0FQSV9LRVl9In0sImNvbW1hbmQiOiJ1dnggZXZlcnlyb3ctbWNwIn0%3D)
|
|
26
|
+
|
|
27
|
+
### Manual Config
|
|
20
28
|
|
|
21
|
-
Either set the API key in your shell environment, or hardcode it directly in the config below.
|
|
29
|
+
Either set the API key in your shell environment as mentioned above, or hardcode it directly in the config below. Environment variable interpolation may differ between MCP clients.
|
|
22
30
|
|
|
23
31
|
```bash
|
|
24
32
|
export EVERYROW_API_KEY=your_key_here
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"manifest_version": "0.4",
|
|
3
3
|
"name": "everyrow-mcp",
|
|
4
4
|
"display_name": "Everyrow MCP Server",
|
|
5
|
-
"version": "0.
|
|
5
|
+
"version": "0.2.0",
|
|
6
6
|
"description": "AI-powered dataframe ops: transform, dedupe, merge, rank, and screen with natural language",
|
|
7
7
|
"long_description": "MCP 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.",
|
|
8
8
|
"author": {
|
|
@@ -9,13 +9,13 @@
|
|
|
9
9
|
"subfolder": "everyrow-mcp"
|
|
10
10
|
},
|
|
11
11
|
"websiteUrl": "https://github.com/futuresearch/everyrow-sdk/tree/main/everyrow-mcp",
|
|
12
|
-
"version": "0.
|
|
12
|
+
"version": "0.2.0",
|
|
13
13
|
"packages": [
|
|
14
14
|
{
|
|
15
15
|
"registryType": "pypi",
|
|
16
16
|
"registryBaseUrl": "https://pypi.org",
|
|
17
17
|
"identifier": "everyrow-mcp",
|
|
18
|
-
"version": "0.
|
|
18
|
+
"version": "0.2.0",
|
|
19
19
|
"runtimeHint": "uvx",
|
|
20
20
|
"transport": {
|
|
21
21
|
"type": "stdio"
|
|
@@ -5,7 +5,7 @@ import logging
|
|
|
5
5
|
import os
|
|
6
6
|
import sys
|
|
7
7
|
from contextlib import asynccontextmanager
|
|
8
|
-
from typing import Any
|
|
8
|
+
from typing import Any, Literal
|
|
9
9
|
|
|
10
10
|
import pandas as pd
|
|
11
11
|
from everyrow.api_utils import create_client
|
|
@@ -354,6 +354,10 @@ class MergeInput(BaseModel):
|
|
|
354
354
|
description="Optional column name in the right table to use as the merge key. "
|
|
355
355
|
"If not provided, the LLM will determine the best matching strategy.",
|
|
356
356
|
)
|
|
357
|
+
use_web_search: Literal["auto", "yes", "no"] | None = Field(
|
|
358
|
+
default=None,
|
|
359
|
+
description='Optional. Control web search behavior: "auto" tries LLM merge first then conditionally searches, "no" skips web search entirely, "yes" forces web search on every row. Defaults to "auto" if not provided.',
|
|
360
|
+
)
|
|
357
361
|
|
|
358
362
|
@field_validator("left_csv", "right_csv")
|
|
359
363
|
@classmethod
|
|
@@ -395,6 +399,7 @@ async def everyrow_merge(params: MergeInput) -> str:
|
|
|
395
399
|
right_table=right_df,
|
|
396
400
|
merge_on_left=params.merge_on_left,
|
|
397
401
|
merge_on_right=params.merge_on_right,
|
|
402
|
+
use_web_search=params.use_web_search,
|
|
398
403
|
)
|
|
399
404
|
|
|
400
405
|
output_file = resolve_output_path(params.output_path, params.left_csv, "merged")
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|