# find_modern_equivalent

Use when the agent suspects the code it's about to write uses a deprecated API — e.g. tokio::Runtime::new() (now tokio::runtime::Runtime::new()), chrono::DateTime::from_str (now feature-gated), or any path that points to a yanked or RustSec-advisory'd crate version. The substrate returns the current canonical alternative with a behavior summary if probed, and surfaces yank-status / advisory rows verbatim. For TypeScript/Next.js pass language='ts' with a deprecated Next.js API — e.g. next/router (now next/navigation), getServerSideProps (now an async Server Component), @next/font (now next/font), next/legacy/image (now next/image) — and the substrate returns the modern equivalent with the official upgrade-guide citation and how prevalent the deprecated vs modern form is across the live Next.js corpus.

Agent View of the PolicyLayer registry record for `find_modern_equivalent`. HTML page: https://policylayer.com/tools/dev-codeitall-codeitall/find-modern-equivalent

## Facts

- Tool: `find_modern_equivalent`
- Server: Codeitall (`https://api.codeitall.dev/mcp`) — https://policylayer.com/tools/dev-codeitall-codeitall.md
- Homepage: https://github.com/codeitalldev/codeitall
- Risk category: Read (Low risk)
- Registry record: grade B, identity unverified
- Server rate-limited: no
- Parameters: 2 (1 required)
- Recommended policy verdict: Allowed

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `language` | string | no |  |
| `deprecated_call` | string | yes |  |

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_modern_equivalent",
    "arguments": {
      "deprecated_call": "<deprecated_call>"
    }
  }
}
```

## Why find_modern_equivalent is rated Low

This tool queries a behavioral oracle database to find alternative APIs and deprecation information. It retrieves and presents data (canonical alternatives, yank status, advisory information) without side effects. No code execution, data modification, deletion, or financial impact occurs. The 'if probed' phrasing indicates conditional information retrieval, not action execution.

From the tool's own definition: "Tool performs lookup and retrieval operations: 'returns the current canonical alternative with a behavior summary if probed, and surfaces yank-status / advisory rows verbatim.' It searches for deprecated APIs and returns information about their modern…"

## Use case

AI agents call find_modern_equivalent to retrieve information from Codeitall 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 Codeitall:

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

## Other tools on Codeitall (7)

- `answer_api_question` — Read — https://policylayer.com/tools/dev-codeitall-codeitall/answer-api-question.md
- `behavior_lookup` — Read — https://policylayer.com/tools/dev-codeitall-codeitall/behavior-lookup.md
- `compare_implementations` — Read — https://policylayer.com/tools/dev-codeitall-codeitall/compare-implementations.md
- `list_families` — Read — https://policylayer.com/tools/dev-codeitall-codeitall/list-families.md
- `package_trust` — Read — https://policylayer.com/tools/dev-codeitall-codeitall/package-trust.md
- `pattern_consensus` — Read — https://policylayer.com/tools/dev-codeitall-codeitall/pattern-consensus.md
- `signature_search` — Read — https://policylayer.com/tools/dev-codeitall-codeitall/signature-search.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-codeitall-codeitall · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/dev-codeitall-codeitall
