
Scope (Legal)
Connects AI assistants directly to Scope.bid's legal vendor marketplace. Dispatch court reporters, expert witnesses, e-discovery, translation, trial graphics, and foreign counsel through tools like scope_dispatch_matter and get live bids back in under ten minutes. Includes roster management, spend analytics, credential alerts, and a full Scope Work Protocol negotiation layer (propose, bid, counter, accept, reject). Available as stdio via npm or direct HTTP at scope.bid/api/mcp/legal. Requires SCOPE_API_TOKEN for write operations but works read-only for demos. Part of a three-server family covering legal, insurance claims, and AEC verticals. Reach for this when you're building litigation workflows that need to pull in credentialed third-party services without leaving the AI context.
- GitHub stars
- 1
- tools
- 30
- auth
- Secret needed
- transport
- STDIO, HTTP
- env vars
- 3
- last updated
- Nov 3, 2026
Install
From registry metadata$ npx add-mcp https://scope.bid/api/mcp/legal --name legalRun in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.
Review the command, arguments and environment values before installing. MCP servers run with your local permissions.
Other ways
Claude Code
$ claude mcp add --transport http legal https://scope.bid/api/mcp/legalRun in your terminal. Add --scope user to make it available in every project.
Tools
Verified live · 30 toolsVerified live against the running server on Jun 10, 2026.
scope_list_categoriesList the legal-services categories Scope can dispatch matters to. Each category has a slug, human label, and an indicator of whether vendors expose REST APIs (api_native) or are reached through Scope's ops-backed adapters (ops_backed).
List the legal-services categories Scope can dispatch matters to. Each category has a slug, human label, and an indicator of whether vendors expose REST APIs (api_native) or are reached through Scope's ops-backed adapters (ops_backed).
No parameters. Call it with no arguments.
scope_list_vendorsList Scope-verified vendors available for hire. Use this tool when the user wants to see, browse, or compare vendors they could hire for legal work. Specifically: court reporters, process servers, records firms, IMEs, expert witnesses, and every other legal-services category....4 params
List Scope-verified vendors available for hire. Use this tool when the user wants to see, browse, or compare vendors they could hire for legal work. Specifically: court reporters, process servers, records firms, IMEs, expert witnesses, and every other legal-services category....
category_slugstringformatstringenvelope · legacydefault: envelopejurisdictionstringlimitintegerscope_dispatch_matterHire any human vendor for legal work, from inside the user's AI. Use this tool whenever the user needs to hire, find, book, get, or dispatch a legal-services vendor. Specifically: process servers, court reporters, records retrieval firms, IMEs, expert witnesses, e-discovery ve...15 params
Hire any human vendor for legal work, from inside the user's AI. Use this tool whenever the user needs to hire, find, book, get, or dispatch a legal-services vendor. Specifically: process servers, court reporters, records retrieval firms, IMEs, expert witnesses, e-discovery ve...
adverse_partiesarraybid_window_minutesintegerbudget_maxnumberbudget_max_centsintegerbudget_minnumberdescription*stringdispatch_modestringopen · roster_first · roster_onlydefault: openformatstringenvelope · legacydefault: envelopejurisdictionsarraymatter_specific_approval_requiredbooleanmatter_type*stringmust_havesarrayservice_category*stringtarget_kickoffstringtitle*stringscope_get_matterLook up a matter by its display id (e.g. SC-2041) or UUID. Returns scope details, instant rate-card quotes (rate_card model) or bids (legacy bid model), award status, deliverables, and the conflict_check + approval state. For anonymized matters, vendor names are redacted in re...2 params
Look up a matter by its display id (e.g. SC-2041) or UUID. Returns scope details, instant rate-card quotes (rate_card model) or bids (legacy bid model), award status, deliverables, and the conflict_check + approval state. For anonymized matters, vendor names are redacted in re...
formatstringenvelope · legacydefault: envelopematter_id*stringscope_list_mattersList the firm's matters and their dispatch status. Use this tool when the user asks about active or historical matters, dispatches, or pipeline. Specifically: open matters, awarded matters, in-progress work, completed matters, or matters for a given client. Triggers include: '...3 params
List the firm's matters and their dispatch status. Use this tool when the user asks about active or historical matters, dispatches, or pipeline. Specifically: open matters, awarded matters, in-progress work, completed matters, or matters for a given client. Triggers include: '...
formatstringenvelope · legacydefault: envelopelimitintegerstatusstringopen · awarded · in_progress · completed · alldefault: allscope_list_rosterList the calling buyer org's vendor roster. Returns each vendor with their tier (primary | backup | excluded), optional category scoping, notes, and lock window. Use to answer questions like 'who's on my roster for court reporting?' or 'what vendors do we currently exclude?' b...
List the calling buyer org's vendor roster. Returns each vendor with their tier (primary | backup | excluded), optional category scoping, notes, and lock window. Use to answer questions like 'who's on my roster for court reporting?' or 'what vendors do we currently exclude?' b...
No parameters. Call it with no arguments.
scope_set_vendor_tierAdd or update a vendor on the buyer's roster. Use to set a vendor as primary, backup, or excluded - optionally scoped to a single service category. Examples: 'mark Capitol Reporters as primary for court reporting,' 'add MES Solutions to my IME roster as backup,' 'exclude this...6 params
Add or update a vendor on the buyer's roster. Use to set a vendor as primary, backup, or excluded - optionally scoped to a single service category. Examples: 'mark Capitol Reporters as primary for court reporting,' 'add MES Solutions to my IME roster as backup,' 'exclude this...
category_slugstringformatstringenvelope · legacydefault: envelopelocked_untilstringnotesstringtier*stringprimary · backup · excludedvendor_org_id*stringscope_remove_from_rosterRemove a vendor from the buyer's roster entirely. Use when the relationship has changed and you want to revert the vendor to neutral marketplace status (no priority routing, no exclusion). Requires authentication.2 params
Remove a vendor from the buyer's roster entirely. Use when the relationship has changed and you want to revert the vendor to neutral marketplace status (no priority routing, no exclusion). Requires authentication.
entry_id*stringformatstringenvelope · legacydefault: envelopescope_award_matterAward a dispatched matter to a chosen vendor. Locks the booking, notifies the vendor (push + email), and schedules a Stripe Connect invoice that fires when the matter completes (buyer review auto-accepts at 5 days). Returns a confirmation payload with actions taken and accurat...5 params
Award a dispatched matter to a chosen vendor. Locks the booking, notifies the vendor (push + email), and schedules a Stripe Connect invoice that fires when the matter completes (buyer review auto-accepts at 5 days). Returns a confirmation payload with actions taken and accurat...
confirmed_slotstringmatter_id*stringoverride_tentativebooleanreporter_namestringvendor_name*stringscope_reschedule_projectReschedule an already-awarded project to a new date. Use only when the project is in an active engagement state (post-award, pre-delivery). Returns the confirmed new slot and whether the vendor was notified. Disallowed source states return a typed error (project_already_delive...4 params
Reschedule an already-awarded project to a new date. Use only when the project is in an active engagement state (post-award, pre-delivery). Returns the confirmed new slot and whether the vendor was notified. Disallowed source states return a typed error (project_already_delive...
new_date*stringnew_duration_minutesintegerproject_id*stringreasonstringscope_briefingGive the user a status briefing on their Scope vendor activity. Use this tool when the user asks what is happening, what changed, or wants a status update on their dispatches. Triggers include: 'what is happening on Scope', 'give me a briefing', 'what changed this week', 'rece...2 params
Give the user a status briefing on their Scope vendor activity. Use this tool when the user asks what is happening, what changed, or wants a status update on their dispatches. Triggers include: 'what is happening on Scope', 'give me a briefing', 'what changed this week', 'rece...
formatstringenvelope · legacydefault: envelopehorizon_daysintegerscope_roster_auditComplete activity log for a single scope. Returns the append-only event chain: dispatched, quotes received, awarded, accepted, calendar set, work completed, invoice paid. Useful for compliance review or matter-record export.2 params
Complete activity log for a single scope. Returns the append-only event chain: dispatched, quotes received, awarded, accepted, calendar set, work completed, invoice paid. Useful for compliance review or matter-record export.
limitintegerscope_id*stringscope_spend_rollupShow the firm's vendor spend, sliced by dimension. Use this tool when the user asks how much the firm has spent on vendors. Specifically: spend by vendor, by service category, by matter type, by jurisdiction, by client, by matter, or over a time window. Triggers include: 'show...4 params
Show the firm's vendor spend, sliced by dimension. Use this tool when the user asks how much the firm has spent on vendors. Specifically: spend by vendor, by service category, by matter type, by jurisdiction, by client, by matter, or over a time window. Triggers include: 'show...
client_idstringdaysintegerformatstringenvelope · legacydefault: envelopegroup_bystringvendor · category · matter_type · jurisdiction · scope · clientdefault: vendorscope_vendor_healthPer-vendor credential, insurance, and on-time status across your roster. Returns COI / W-9 / insurance expiry, BAA status, 90-day on-time percentage, total awarded engagements, and an alerts list per vendor.2 params
Per-vendor credential, insurance, and on-time status across your roster. Returns COI / W-9 / insurance expiry, BAA status, 90-day on-time percentage, total awarded engagements, and an alerts list per vendor.
days_aheadintegerformatstringenvelope · legacydefault: envelopescope_credential_alertsVendors with expiring or expired credentials. Filtered version of scope_vendor_health. Use for compliance review or for the morning briefing's 'what needs attention' list.2 params
Vendors with expiring or expired credentials. Filtered version of scope_vendor_health. Use for compliance review or for the morning briefing's 'what needs attention' list.
days_aheadintegerformatstringenvelope · legacydefault: envelopescope_conflict_logSearch the buyer org's structured conflict-party log across every scope. Use for an OCG / Rule 1.7 prior-representation check before dispatching new work. Filter by party name (case-insensitive substring), optional party_type, and optional lookback window. Returns the scopes w...4 params
Search the buyer org's structured conflict-party log across every scope. Use for an OCG / Rule 1.7 prior-representation check before dispatching new work. Filter by party name (case-insensitive substring), optional party_type, and optional lookback window. Returns the scopes w...
formatstringenvelope · legacydefault: envelopeparty_name*stringparty_typestringplaintiff · defendant · counsel · witness · third-partysince_daysintegerscope_get_dispatch_routing_stateRead-only view of the roster auto-routing state machine for one scope. Returns the current state (pending_primary, awaiting_primary_response, primary_accepted, primary_declined, primary_timed_out, opened_to_network, awarded, completed), the Primary vendor for the dispatch (whe...2 params
Read-only view of the roster auto-routing state machine for one scope. Returns the current state (pending_primary, awaiting_primary_response, primary_accepted, primary_declined, primary_timed_out, opened_to_network, awarded, completed), the Primary vendor for the dispatch (whe...
formatstringenvelope · legacydefault: envelopescope_id*stringscope_market_rate_compareShow typical market pricing for a legal-services vendor category. Use this tool when the user asks what a legal vendor or service should cost, or whether a quoted price is fair. Specifically: process serving, court reporting, records retrieval, IMEs, expert witnesses, e-discov...4 params
Show typical market pricing for a legal-services vendor category. Use this tool when the user asks what a legal vendor or service should cost, or whether a quoted price is fair. Specifically: process serving, court reporting, records retrieval, IMEs, expert witnesses, e-discov...
category*stringformatstringenvelope · legacydefault: envelopejurisdictionstringsample_sizeintegerscope_list_deliverables_for_scopeList vendor-uploaded deliverables for a scope. Returns each deliverable with type, vendor name, upload date, file size, notes, version, secure-link URL (works without login, expires in 7 days), and a short-lived signed download URL (1 hour TTL). Caller must own the scope (buye...2 params
List vendor-uploaded deliverables for a scope. Returns each deliverable with type, vendor name, upload date, file size, notes, version, secure-link URL (works without login, expires in 7 days), and a short-lived signed download URL (1 hour TTL). Caller must own the scope (buye...
formatstringenvelope · legacydefault: envelopescope_id*stringscope_get_deliverableFetch a single vendor-uploaded deliverable by id. Returns metadata + a short-lived signed download URL (1 hour TTL). The buyer's AI can hand the URL to a downstream analysis tool (transcript review, exhibit extraction, etc.) - Scope is the delivery layer, not the analysis layer.2 params
Fetch a single vendor-uploaded deliverable by id. Returns metadata + a short-lived signed download URL (1 hour TTL). The buyer's AI can hand the URL to a downstream analysis tool (transcript review, exhibit extraction, etc.) - Scope is the delivery layer, not the analysis layer.
deliverable_id*stringformatstringenvelope · legacydefault: envelopescope_search_deliverablesSearch the buyer org's deliverables by free-text query. v1 uses SQL ILIKE on notes + deliverable_type fields; full-text search (tsvector + GIN) is a follow-up. Optional scope_id narrows to a single scope; optional deliverable_type narrows to one type (e.g., 'Transcript', 'COI'...4 params
Search the buyer org's deliverables by free-text query. v1 uses SQL ILIKE on notes + deliverable_type fields; full-text search (tsvector + GIN) is a follow-up. Optional scope_id narrows to a single scope; optional deliverable_type narrows to one type (e.g., 'Transcript', 'COI'...
deliverable_typestringformatstringenvelope · legacydefault: envelopequery*stringscope_idstringscope_send_deliverableAd-hoc re-send of an existing deliverable to additional recipients across one or more channels. Use when a lead attorney wants to forward a transcript, or to push a report to a CMS matter id, or to re-fan-out after fixing a typo in the email recipient list. Buyer org members o...4 params
Ad-hoc re-send of an existing deliverable to additional recipients across one or more channels. Use when a lead attorney wants to forward a transcript, or to push a report to a CMS matter id, or to re-fan-out after fixing a typo in the email recipient list. Buyer org members o...
channels*arraydeliverable_id*stringformatstringenvelope · legacydefault: enveloperecipients*arrayswp_proposeSubmit an initial scope of work to a legal vendor for negotiation. Use when a user wants to engage a vendor for specific legal work but the spec may need vendor input to finalize.6 params
Submit an initial scope of work to a legal vendor for negotiation. Use when a user wants to engage a vendor for specific legal work but the spec may need vendor input to finalize.
budget_ceilingobjectdeadline*stringsession_id*stringvendor_org_id*stringvertical*stringlegalwork_spec*objectswp_clarifyVendor asks the buyer clarifying questions about a proposed scope. Use when the work spec is ambiguous or missing details a bid would depend on.2 params
Vendor asks the buyer clarifying questions about a proposed scope. Use when the work spec is ambiguous or missing details a bid would depend on.
clarification_questions*arraysession_id*stringswp_refineBuyer answers vendor clarifying questions and submits an updated work spec.3 params
Buyer answers vendor clarifying questions and submits an updated work spec.
answers*arraysession_id*stringupdated_work_spec*objectswp_bidVendor submits a bid against a proposed scope. Response envelope includes a gate descriptor when a human approval is required before the bid can be accepted.5 params
Vendor submits a bid against a proposed scope. Response envelope includes a gate descriptor when a human approval is required before the bid can be accepted.
bid_amount*objectbid_terms*stringrequest_price_commit_gatebooleansession_id*stringvalidity_window*stringswp_counterBuyer counters a vendor bid with a new amount and updated terms. Vendor must re-bid with scope_bid for the session to advance.3 params
Buyer counters a vendor bid with a new amount and updated terms. Vendor must re-bid with scope_bid for the session to advance.
counter_amount*objectcounter_terms*stringsession_id*stringswp_acceptAccept the current bid and move the session to ACCEPTED. If a human gate has not cleared, returns gate_pending with an approval URL.1 params
Accept the current bid and move the session to ACCEPTED. If a human gate has not cleared, returns gate_pending with an approval URL.
session_id*stringswp_rejectReject the current session. Terminal. Either party can call. Reason is a structured enum.3 params
Reject the current session. Terminal. Either party can call. Reason is a structured enum.
notestringreason*stringout_of_scope · price · timeline · conflict · capacity · othersession_id*stringswp_session_statusRead-only. Returns current state, gate state, work spec, and current bid for a session. Caller must be a participant.1 params
Read-only. Returns current state, gate state, work spec, and current bid for a session. Caller must be a participant.
session_id*stringSponsors
Configuration
SCOPE_API_BASEdefault: https://scope.bidBase URL of the Scope API. Defaults to the hosted instance.
SCOPE_API_TOKENsecretBearer token from scope.bid/settings/api-tokens. Required for write tools.
SCOPE_ORG_SLUGPin reads/writes to a specific buyer organization.
Readme
@scope-bid/scope-mcp
Engage credentialed professionals from inside your AI.
Model Context Protocol servers for Scope.bid professional dispatch across legal, insurance claims, and AEC services.
scope.bid | MCP Registry | npm | Plugin marketplace
What this is
Model Context Protocol servers that let AI assistants dispatch requests to credentialed human professionals and get back each professional's price, computed from their own published rate card.
@scope-bid/scope-mcp- legal services (live)@scope-bid/scope-claims-mcp- insurance claims (preview)@scope-bid/scope-aec-mcp- AEC (preview)
The servers are listed on Anthropic's official Model Context Protocol Registry under the DNS-verified namespaces bid.scope/legal, bid.scope/claims and bid.scope/aec.
Scope.bid is not affiliated with scope-bid.com, an unrelated laboratory equipment auction platform.
Install
Details
- Repository
- github.com/scope-bid/scope-mcp
- Website
- scope.bid/mcp/legal
- Category
- Automation & Workflows
- Package
@scope-bid/scope-mcp- Transport
- STDIO, HTTP
- Auth
- Required
- Registry
- MCP registry, active
- Tools verified
- Jun 10, 2026