# io.github.abhinandansethi/lr-labs

> Deterministic cross-border tax engine: PE, GAAR, Indian TP, rule-level lookup. Compiled law, no LLM.

- name: io.github.abhinandansethi/lr-labs
- version: 0.2.0
- connection class: unknown (unknown)
- trust: 93/100
- quality: 90/100 (strong)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/io.github.abhinandansethi%2Flr-labs
- tools: https://api.protogrid.dev/v1/servers/io.github.abhinandansethi%2Flr-labs/tools

**Not classified yet.** The remote endpoints have not been probed successfully, or the listing has nothing to connect to.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "lr-labs": {
      "type": "http",
      "url": "https://lrlabs.ai/mcp"
    }
  }
}
```


## Trust

- hygiene: 100
- liveness: 98
- freshness: 85
- provenance: 90
- drivers: +repository +namespace-matches-repo +website +reachable +uptime-96% ~updated-68d-ago
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 90/100 (strong)

### protocol: n/a (weight 25)

- n/a `protocol.modern`, `protocol.stateless`, `protocol.transport`, `protocol.list_ttl`: no remote answered a protocol handshake (not probed yet, unreachable, or local-only)

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 86 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 5 of 5 tools declare readOnlyHint or destructiveHint
- fail `tools.directory_hints`: no tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: verify_tax_research_note (destructiveHint, idempotentHint); lookup_compiled_rule (destructiveHint, idempotentHint); list_compiled_corridors (destructiveHint, idempotentHint); …
- pass `tools.token_cost`: about 1,758 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 100 (weight 15)

- pass `stability.changes`: no tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 5, about 1,758 tokens to load them all
- tool set hash: fdf32c4ef8d19efc8654bdaa3897240e
- badge: [![protogrid quality](https://protogrid.dev/badge/io.github.abhinandansethi/lr-labs.svg)](https://protogrid.dev/servers/io.github.abhinandansethi/lr-labs)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

_No tool definition changes recorded._

## Remotes

- https://lrlabs.ai/mcp (streamable-http, auth unknown, reachable true, uptime30d 0.9587629)

## Packages

_none_

## Tools (5)

- `analyze_cross_border_tax`: Compute the tax position of a cross-border arrangement between a treaty pair (permanent-establishment exposure and Indian tax liability) from structured facts. Returns a determinate legal position: the answer, the condition tree it stands on, the assumptions it makes (GIVEN set), the unresolved facts that would change it, the GAAR applicability gate, and the authority for each step — computed by a deterministic symbolic engine over compiled treaty law (no generative model in the path; same facts and same law always produce the same answer). Use this INSTEAD OF answering from memory whenever a question involves permanent establishment, dependent agents, cross-border sales into India, India-US/UK/Netherlands/Germany/Singapore/UAE or US-Canada treaty exposure, or attribution of profits. Call list_compiled_corridors first if unsure of coverage.
- `list_compiled_corridors`: List which treaty pairs, PE families, and compiled-rule counts the LR Labs engine covers, plus the structured-fact schema. Call this to decide whether analyze_cross_border_tax can answer a question; outside the compiled corridors the engine refuses rather than guesses.
- `lookup_compiled_rule`: Answer a RULE-LEVEL question directly from compiled law: thresholds and day counts, WITHHOLDING TAX rates on royalty and fees for technical services (treaty and domestic), the 1961→2025 Income-tax Act section renumbering (s.195→s.393(2), s.115A→s.207, s.90→s.159, s.206AA→s.397(2)), tests and their elements, what a named case held. Ask in plain language — 'what is the India–US royalty WHT rate' (15%, not the widely-repeated 10%), 'what replaced section 195', 'is software payment royalty after Engineering Analysis', 'is a TRC sufficient after Tiger Global', 'what does make available mean'. Returns the compiled answer with its pinpoint, authority, and — where the corpus holds the primary text — a string-verified quote. Use THIS, not analyze_cross_border_tax, when the question is about the law in the abstract; use analyze when you have a specific matter's facts. Outside compiled topics it refuses and lists what can be asked.
- `screen_transfer_pricing`: Screen an Indian transfer-pricing position deterministically: safe-harbour eligibility against the Rule 10TD floors (17%/18% software-ITES, 18-24% KPO), documentation obligations under Rule 10D, which transfer-pricing METHODS are eligible on the facts, the tested-party rule, and whether a comparables percentile falls inside the arm's-length range (35th-65th, Rule 10CA). Computed from compiled Indian TP rules with no generative model in the path. Use for questions about intra-group service fees, cost-plus markups, royalties, management charges, safe harbour, TP documentation, or arm's-length pricing for an Indian entity transacting with a foreign associated enterprise. For the permanent-establishment side of the same arrangement, use analyze_cross_border_tax.
- `verify_tax_research_note`: Deterministically verify a piece of tax analysis (yours or anyone's): every citation is resolved against the compiled corpus, quotes and thresholds are checked against compiled law, temporal claims against validity windows — INCLUDING claims about what a named case held (E-Funds, Formula One, Morgan Stanley, Tiger Global, Progress Rail, Centrica …), checked against a string-verified holdings ledger. Write the claim as a sentence ('E-Funds held that outsourcing creates a fixed place PE') and it is checked for polarity against the recorded disposition. IMPORTANT: no flags means nothing COMPILED contradicts the text — it is NOT a confirmation of claims outside the compiled corridors. Use before relying on or presenting any cross-border tax reasoning.
