AWS Marketplace buyer guide

Connect AWS Marketplace to Permit Sheriff.

This guide covers registration, authentication, MCP setup, supported tools, billing behavior, troubleshooting, and support for Permit Sheriff buyers on AWS Marketplace.

MCP endpointhttps://permitsheriff.com/api/agent/v1/mcp

1. Subscribe and register

  1. Subscribe to Permit Sheriff from its AWS Marketplace product page.
  2. Select Launch product or Sign in or register with vendor.
  3. AWS sends you to Permit Sheriff's registration flow. Sign in with an existing Permit Sheriff account or create the requested account.
  4. Confirm the Permit Sheriff organization that should be linked to the AWS Marketplace purchase.
  5. Permit Sheriff keeps the purchase pending until the authoritative AWS Marketplace lifecycle event confirms activation.
  6. After activation, use the issued organization-scoped integration credential for MCP/API access.

Do not email or paste AWS registration tokens, Permit Sheriff API keys, or other secrets into support tickets.

2. Prerequisites

  • An active Permit Sheriff subscription purchased through AWS Marketplace.
  • A Permit Sheriff organization linked to that AWS purchase.
  • An integration credential issued for that organization.
  • An MCP-capable client or an HTTPS client that can send JSON-RPC 2.0 requests.

Credentials are tenant-scoped. A client cannot choose a different organization by changing request arguments or headers.

3. Authentication and protocol

Send the Permit Sheriff integration credential as a Bearer token:

Authorization: Bearer psk_<key-id>_<secret>
Content-Type: application/json
MCP-Protocol-Version: 2026-07-28

Supported JSON-RPC methods are server/discover, initialize,notifications/initialized, tools/list, and tools/call. Modern tools/call requests also bind Mcp-Method and Mcp-Nameheaders to the JSON-RPC method and requested tool.

Remote MCP client configuration

Clients that support remote HTTP MCP servers can use the following shape. The exact settings-file location varies by client; keep the Bearer credential in that client's protected secret/configuration store rather than source control.

{
  "mcpServers": {
    "permit-sheriff": {
      "url": "https://permitsheriff.com/api/agent/v1/mcp",
      "headers": {
        "Authorization": "Bearer YOUR_PERMIT_SHERIFF_KEY",
        "MCP-Protocol-Version": "2026-07-28"
      }
    }
  }
}

4. Discover available tools

Call tools/list after authentication. The server returns the current input schema and annotations for every tool available to the credential. This is the canonical way to discover the live schema rather than hard-coding an old copy.

curl -X POST "https://permitsheriff.com/api/agent/v1/mcp"   -H "Authorization: Bearer YOUR_PERMIT_SHERIFF_KEY"   -H "Content-Type: application/json"   -H "MCP-Protocol-Version: 2026-07-28"   -H "Mcp-Method: tools/list"   --data '{"jsonrpc":"2.0","id":"tools-1","method":"tools/list","params":{}}'

5. Supported tools

ToolPurpose
preflight_permit_packageRead-only document intake inspection before analysis. It does not create a billable analysis.
analyze_permit_packageSecure a permit package, resolve available jurisdiction context, and start durable analysis.
get_analysis_statusRead processing state, findings, failures, and next actions for an analysis.
get_permit_intelligence_packetRetrieve the packaged Permit Intelligence work product for an analysis.
get_next_actionsRetrieve the concise evidence-linked next-action view for an analysis.
get_jurisdiction_contextInspect current jurisdiction context and its trust state.
assess_contractor_permit_readinessRun contractor-readiness assessment when the credential grants contractor.verify.
get_project_attentionRead a deterministic attention brief for an existing project.
get_project_scheduleRead persisted Project Ledger dates for an existing project.

Tool availability also depends on the scopes attached to the integration credential. Read access does not automatically grant analysis or contractor-verification authority.

6. Example analysis request

Before sending a large document, use preflight_permit_package when appropriate. A new analysis requires a stable idempotency key so retries cannot create duplicate commercial work.

{
  "jsonrpc": "2.0",
  "id": "analysis-1",
  "method": "tools/call",
  "params": {
    "name": "analyze_permit_package",
    "arguments": {
      "document_base64": "<BASE64_DOCUMENT>",
      "filename": "permit-package.pdf",
      "content_type": "application/pdf",
      "project_name": "Example Project",
      "jurisdiction": "Example jurisdiction",
      "property_address": "Example project address",
      "page_count": 42,
      "idempotency_key": "project-revision-001"
    }
  }
}

Send matching headers Mcp-Method: tools/call andMcp-Name: analyze_permit_package. A successful request returns structured MCP content including an analysis_id and processing status. Pollget_analysis_status using that identifier.

Response schema

MCP responses use JSON-RPC 2.0. Tool output is returned in result.content; failures use either the JSON-RPC error object or a structured tool result marked as an error.tools/list is the canonical source for each tool's live input schema.

{
  "jsonrpc": "2.0",
  "id": "analysis-1",
  "result": {
    "content": [
      {
        "type": "text",
        "text": "{\"analysis_id\":\"...\",\"processing_status\":\"queued\"}"
      }
    ]
  }
}

7. Billing on AWS Marketplace

AWS Marketplace is the billing authority for organizations linked through this purchase channel. Permit Sheriff reports usage quantities to AWS; AWS applies the price and terms of the offer you accepted.

Billable unit: Permit Analysis

One unit is recorded when a new permit-package analysis successfully completes the billable processing transition. Authentication, MCP discovery, status polling, retrieving existing results, internal model calls, and failed processing do not create additional Permit Analysis units.

Permit Sheriff's AWS offer uses contract-with-consumption semantics. Purchased Permit Analysis units returned by AWS Marketplace GetEntitlements are consumed first. Only completed analyses above that purchased quantity are staged for BatchMeterUsage against the exact agreement LicenseArn. Retries use idempotency controls to prevent duplicate billing for the same commercial work. Canceling or deprovisioning the AWS purchase stops future authorized usage after the applicable Marketplace lifecycle transition.

8. Limits and safe retry behavior

The remote MCP endpoint allows 60 requests per minute per API key, with a burst of up to 60 requests. Exceeding that limit returns HTTP 429 Too Many Requests with structured MCP error code -32029 and retry guidance. Contract capacity, document-size, page, storage, permission, and safety controls are enforced separately. Use tools/list for live schemas and preflight_permit_package before analysis when you need intake validation. If a request fails, keep the same idempotency key when retrying the same commercial operation; use a new key only for genuinely new work. For throttling or transient service-unavailable responses, honor the provided retry interval and use exponential backoff.

9. Error reference

CodeMeaning
permission_deniedThe integration credential does not grant the required capability.
subscription_requiredThe AWS Marketplace subscription is not active or usage is not currently authorized.
invalid_argumentsOne or more tool arguments failed validation.
invalid_documentThe uploaded document is missing or invalid.
document_too_largeThe document exceeds the active MCP upload safety limit.
duplicate_documentThe same document already exists in the protected intake workflow.
idempotency_conflictThe idempotency key was reused for different work.
analysis_not_foundThe requested analysis is not available to the authenticated organization.
project_not_foundThe requested project is not available to the authenticated organization.
project_intelligence_unavailableProject intelligence is temporarily unavailable.
worker_unavailableAnalysis could not be queued to the processing worker.

Protocol-level errors use JSON-RPC error codes. Examples include -32700 for invalid JSON,-32600 for an invalid request, -32601 for an unknown method,-32602 for invalid parameters, and -32022 for an unsupported MCP protocol version.

10. Security and credential management

  • Use a separate organization-scoped integration credential for each external system or agent.
  • Do not reuse browser-session credentials for machine access.
  • Permit Sheriff stores integration credentials using its digest-based credential system rather than retaining the issued plaintext token.
  • Marketplace Quick Launch credentials expire on a maximum 90-day rotation window or at contract end, whichever comes first.
  • Organization owners and administrators can rotate the Marketplace-managed key from Billing & Subscription. Rotation updates the AWS Marketplace deployment parameter and invalidates the prior Permit Sheriff key.
  • Marketplace deprovisioning revokes Marketplace-provisioned access, including replacement keys created during rotation.
  • All protected customer access remains server-authorized and organization-scoped.

See the Privacy Policy for customer-data handling information.

11. Troubleshooting

  • Registration is pending: wait for AWS Marketplace activation to complete, then retry account access.
  • Permission denied: confirm that the integration credential has the scope required by the requested tool.
  • Analysis not found: confirm the analysis belongs to the organization bound to the credential.
  • Idempotency conflict: do not reuse one idempotency key for different documents or commercial operations.
  • Document rejected: run preflight and confirm the active document type, size, and page limits.

12. Support

Customer support: support@permitsheriff.com
Security reports: support@permitsheriff.com

For AWS Marketplace billing-account or invoice questions, use AWS Marketplace billing support. If the billing issue also affects Permit Sheriff access, contact Permit Sheriff support with the affected organization and approximate time—but never include credentials or registration tokens.

View the full Permit Sheriff support policy →

Additional resources: data handling and privacy, product FAQ, and subscription and usage status.