# find_value

Find +EV value bets in a fixture — where a book's price beats the sharp fair line — in ONE call. Resolves the fixture, de-vigs the sharp book (Pinnacle) at each line to get the fair price, then flags every outcome whose best available price across books exceeds that fair price. DETECTION ONLY: this surfaces the edge and which book holds it; it does NOT size stakes or link out to bet. Args: query: natural-language fixture, e.g. "Netherlands vs Algeria" or a single team. markets: optional filter — any of "1x2", "asian_handicap", "totals" (default: all). period: optional — "full_time" or "half_time" (default: both). min_edge_pct: only report outcomes beating fair by at least this % (default 1.0). format: odds format — decimal | hk | malay | american | indonesian | probability. sport: optional filter — "football" or "basketball". date: optional UTC date "YYYY-MM-DD" to disambiguate same-name fixtures. On an ambiguous query, status is "ambiguous" and ask_user carries a prompt — do not guess. Needs the sharp book to de-vig; on the Free tier note flags that fair is approximate.

Agent View of the PolicyLayer registry record for `find_value`. HTML page: https://policylayer.com/tools/dev-infersports-infersports/find-value

## Facts

- Tool: `find_value`
- Server: Infersports (`https://api.infersports.dev/mcp`) — https://policylayer.com/tools/dev-infersports-infersports.md
- Homepage: https://github.com/https://api.infersports.dev/mcp
- Risk category: Read (Low risk)
- Registry record: grade C, identity unverified
- Server auth posture: open
- Server rate-limited: no
- Parameters: 7 (1 required)
- Recommended policy verdict: Allowed

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `date` | object | no |  |
| `query` | string | yes |  |
| `sport` | object | no |  |
| `format` | string | no |  |
| `period` | object | no |  |
| `markets` | object | no |  |
| `min_edge_pct` | number | no |  |

Parameters from the server's own tool schema.

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "find_value",
    "arguments": {
      "query": "<query>"
    }
  }
}
```

## Why find_value is rated Low

find_value retrieves odds data, performs mathematical analysis (de-vigging, comparing prices), and returns informational results about potential value. It explicitly does not execute bets, move money, or modify any data. This is pure data retrieval and analysis with no side effects, fitting the Read category.

From the tool's own definition: "Tool description explicitly states 'DETECTION ONLY: this surfaces the edge and which book holds it; it does NOT size stakes or link out to bet.' The tool 'Resolves the fixture, de-vigs the sharp book...then flags every outcome' — these are query and analysis…"

## Use case

AI agents call find_value to retrieve information from Infersports without modifying anything. It is typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.

## Recommended policy (PolicyLayer)

Verdict: **Allowed**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches Infersports:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "find_value": {}
  }
}
```

## Other tools on Infersports (16)

- `compare_lines` — Read — https://policylayer.com/tools/dev-infersports-infersports/compare-lines.md
- `compare_prob` — Read — https://policylayer.com/tools/dev-infersports-infersports/compare-prob.md
- `explain_handicap` — Read — https://policylayer.com/tools/dev-infersports-infersports/explain-handicap.md
- `find_arbitrage` — Read — https://policylayer.com/tools/dev-infersports-infersports/find-arbitrage.md
- `find_match` — Read — https://policylayer.com/tools/dev-infersports-infersports/find-match.md
- `get_match_odds` — Read — https://policylayer.com/tools/dev-infersports-infersports/get-match-odds.md
- `get_opening_line` — Read — https://policylayer.com/tools/dev-infersports-infersports/get-opening-line.md
- `get_result` — Read — https://policylayer.com/tools/dev-infersports-infersports/get-result.md
- `get_sharp_line` — Read — https://policylayer.com/tools/dev-infersports-infersports/get-sharp-line.md
- `list_bookmakers` — Read — https://policylayer.com/tools/dev-infersports-infersports/list-bookmakers.md
- `list_events` — Read — https://policylayer.com/tools/dev-infersports-infersports/list-events.md
- `list_results` — Read — https://policylayer.com/tools/dev-infersports-infersports/list-results.md
- `list_today_matches` — Read — https://policylayer.com/tools/dev-infersports-infersports/list-today-matches.md
- `match_info` — Read — https://policylayer.com/tools/dev-infersports-infersports/match-info.md
- `scan_slate` — Read — https://policylayer.com/tools/dev-infersports-infersports/scan-slate.md
- `score_prob` — Read — https://policylayer.com/tools/dev-infersports-infersports/score-prob.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=dev-infersports-infersports · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/dev-infersports-infersports
