Skip to main content
Glama

Muni-MCP

by leafsicle
getPermitRequirements.ts2.81 kB
import { z } from "zod"; import { experimental_PaidMcpAgent as PaidMcpAgent } from "@stripe/agent-toolkit/cloudflare"; export function getPermitRequirementsTool(agent: PaidMcpAgent<Env, any, any>) { const server = agent.server; // @ts-ignore server.tool( "get_permit_requirements", "Detailed permit requirements, fees, and processes. Include inspector scheduling and approval workflows. Calculate costs and timelines for professional projects.", { projectType: z.enum(["new-construction", "renovation", "addition", "electrical", "plumbing", "mechanical", "demolition", "sign", "special-event", "temporary"]).describe("Type of permit required"), jurisdiction: z.string().describe("Municipality, county, or state jurisdiction"), projectScope: z.string().describe("Detailed description of the work to be performed"), projectValue: z.number().optional().describe("Estimated project value for fee calculation"), projectArea: z.number().optional().describe("Project area in square feet"), includeFees: z.boolean().optional().describe("Include detailed fee breakdown"), includeTimeline: z.boolean().optional().describe("Include processing timeline and inspection schedule"), }, async ({ projectType, jurisdiction, projectScope, projectValue, projectArea, includeFees, includeTimeline }: { projectType: string; jurisdiction: string; projectScope: string; projectValue?: number; projectArea?: number; includeFees?: boolean; includeTimeline?: boolean; }) => { // This would integrate with municipal permit systems to retrieve requirements // For now, return a structured response indicating the permit request const permitParams = { projectType, jurisdiction, projectScope, projectValue: projectValue || "To be determined", projectArea: projectArea || "To be determined", includeFees: includeFees || true, includeTimeline: includeTimeline || true }; return { content: [ { type: "text", text: `Permit Requirements Request\n\nProject Type: ${permitParams.projectType}\nJurisdiction: ${permitParams.jurisdiction}\nProject Scope: ${permitParams.projectScope}\nProject Value: ${permitParams.projectValue}\nProject Area: ${permitParams.projectArea}\n\nThis tool would provide comprehensive permit information including:\n\n- Required permit types and applications\n- Fee calculations and payment methods\n- Required documentation and plans\n- Professional stamp requirements\n- Inspection requirements and scheduling\n- Approval workflow and timeline\n- Appeal processes\n- Code compliance prerequisites\n- Professional consultation requirements\n- Expedited processing options\n\nAlways verify current fee schedules and processing times with the jurisdiction.` } ] }; } ); }

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/leafsicle/muni-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server