Skip to main content
Glama
ceadigital-mcp-tools

ceadigital-mcp-tools

Official
by ceadigital

building_permits_code_violations_scraper

Monitor municipal Socrata and ArcGIS building permits and code violations, resolving LLC owners to wireless phone contacts for targeted outreach.

Instructions

Monitor municipal Socrata/ArcGIS building permits and code violations with automatic LLC owner wireless phone resolution. (Free 1-row preview automatic when CEA_API_KEY is unset; Apify: cea_digital/building-permits-code-violations-scraper)

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

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

Input Schema

NameRequiredDescriptionDefault
queryYesPrimary target query, domain, URL, or identifier (default: "Charleston, SC 29403")Charleston, SC 29403
secondaryNoOptional secondary filter (address, condition, permit type, role keyword, or language).commercial_ti

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations, so the description carries the full burden. It does disclose two useful behaviors: a free 1-row preview when CEA_API_KEY is unset, and the backing source systems (Socrata/ArcGIS). It omits whether the operation is read-only, how much data is returned, pagination, and whether phone resolution is always applied or optional.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences, front-loaded with the core capability and followed by the auth/preview note. The Apify slug parenthetical is marginal but not distracting.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With no annotations and no output schema, the description should say more about the returned record shape (permit fields, violation fields, owner phone fields) and volume/cost behavior. It covers sources and the preview limitation, which is a reasonable partial disclosure.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the schema documents both parameters including defaults. The description adds no meaning about what 'query' or 'secondary' accept (e.g. whether secondary is a permit-type filter), so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource: monitoring municipal Socrata/ArcGIS building permits and code violations, plus LLC owner phone resolution. An agent can distinguish it from transcript/email-verifier siblings, though 'monitor' is slightly imprecise for a scrape-and-return tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to choose this over siblings like skip_trace_owner_phone_finder or the other scrapers, and no exclusions or prerequisites beyond the API-key note. The free 1-row preview is operational context, not usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.