GigNGo Local Services Marketplace
REMOTE · GIGNGO.ORG · SCANNED SEP 24
US local-services data: find locals by trade and city, browse open jobs, see which markets answer
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security80
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability68
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 2052 tokens (~205/item across 10 items; 10 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management57
- Stability observed for 17 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 10 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 11 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities60
- Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28. See how to fix → Fail
How do I install the GigNGo Local Services Marketplace MCP server?
GigNGo Local Services Marketplace is a hosted endpoint at https://gigngo.org/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · gigngo.org
claude mcp add --transport http org-gigngo-gigngo 'https://gigngo.org/mcp'
{
"mcpServers": {
"org-gigngo-gigngo": {
"url": "https://gigngo.org/mcp"
}
}
} {
"servers": {
"org-gigngo-gigngo": {
"type": "http",
"url": "https://gigngo.org/mcp"
}
}
} [mcp_servers.org-gigngo-gigngo] url = "https://gigngo.org/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"org-gigngo-gigngo": {
"type": "remote",
"url": "https://gigngo.org/mcp",
"enabled": true
}
}
} openclaw mcp add org-gigngo-gigngo --url 'https://gigngo.org/mcp' --transport streamable-http
mcp_servers:
org-gigngo-gigngo:
url: "https://gigngo.org/mcp" {
"McpServers": {
"org-gigngo-gigngo": {
"Transport": "http",
"Url": "https://gigngo.org/mcp"
}
}
} assistant mcp add org-gigngo-gigngo -t streamable-http -u 'https://gigngo.org/mcp'
{
"mcpServers": {
"org-gigngo-gigngo": {
"type": "http",
"url": "https://gigngo.org/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 24 Sept 26 +1
- “get_area_demand_density” reworded the description of “minJobs” cosmetic
1 cosmetic change on this day. Switch on “Show cosmetic changes” to see it.
- 23 Sept 26 0
- The server rewrote its instructions, which are the text every model session reads security
- Schema quality: 1804 → 2050 ▼ functional
- New tool “find_work_clips” functional
- 22 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 47 to 50. That category is still filling its 30-day observation window: 14 days of observed history at the previous scan, 15 at this one. The score rises as the window fills, whether or not the server changes.
- 20 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 40 to 43. That category is still filling its 30-day observation window: 12 days of observed history at the previous scan, 13 at this one. The score rises as the window fills, whether or not the server changes.
- 18 Sept 26 +1
- Schema quality: 1591 → 1804 ▼ functional
- New tool “draft_job_post” functional
- 17 Sept 26 +7
- Authorization: unverified → partial ▲ security
- The server rewrote its instructions, which are the text every model session reads security
- Tool “browse_open_tasks” rewrote its description, which is the text the model reads security
- Tool “check_service_availability” rewrote its description, which is the text the model reads security
- Tool “get_area_demand_density” rewrote its description, which is the text the model reads security
- Tool “get_platform_info” rewrote its description, which is the text the model reads security
- Tool “get_worker_profile” rewrote its description, which is the text the model reads security
- Tool “search_local_workers” rewrote its description, which is the text the model reads security
- Schema quality: 180 → 198 ▼ functional
- Server version: 1.0.0 → 1.1.0 functional
- New tool “get_work_record” functional
- “get_worker_profile” reworded the description of “slug” cosmetic
- “search_local_workers” reworded the description of “limit” cosmetic
- Tool “browse_open_tasks” changed its title: Browse open jobs cosmetic
- Tool “check_service_availability” changed its title: Check which services have locals cosmetic
- Tool “get_area_demand_density” changed its title: See where jobs get answered cosmetic
- Tool “get_platform_info” changed its title: About GigNGo cosmetic
- Tool “get_worker_profile” changed its title: Read a local's profile cosmetic
- Tool “list_service_categories” changed its title: List services cosmetic
- Tool “search_local_workers” changed its title: Find locals cosmetic
- 15 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.
- 12 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 24 Sept 2026 · Probed https://gigngo.org/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=gigngo.org | CN=WE1,O=Google Trust Services,C=US | 8 Sept 2026 | 7 Dec 2026 | ECDSA 256 | ECDSA-SHA256 | a0bc871abb04dbd7131105a256349641 |
| SANs: gigngo.org, *.gigngo.org | ||||||
| CN=WE1,O=Google Trust Services,C=US (CA) | CN=GTS Root R4,O=Google Trust Services LLC,C=US | 13 Dec 2023 | 20 Feb 2029 | ECDSA 256 | ECDSA-SHA384 | 7ff31977972c224a76155d13b6d685e3 |
| CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) | CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE | 15 Nov 2023 | 28 Jan 2028 | ECDSA 384 | SHA256-RSA | 7fe530bf331343bedd821610493d8a1b |
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of gigngo.org. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| org. | present | 26974 | 8 | Verified |
| gigngo.org. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000; includeSubDomains |
| x-content-type-options | nosniff |
| x-frame-options | SAMEORIGIN |
| referrer-policy | strict-origin-when-cross-origin |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://gigngo.org/mcp | Verified | 200 | |
| http (plaintext) | http://gigngo.org/mcp | HTTPS enforced | 301 | https://gigngo.org/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
browse_open_tasks Browse open jobs ~333
Browse open jobs homeowners have posted on GigNGo that locals can apply to. Each task includes title, description, `details` (the poster's Additional Details note, present on most jobs and usually the most specific part), category, budget, approximate location (coordinates are privacy-offset), when it was posted (postedAt, ageHours, ageDays, postedAgo), how many locals have applied (applicantCount, hasApplicants) and how fast the first one did (hoursToFirstApplicant), plus a link to apply. Filter by category, state, city, age or applicant count, and sort by newest, oldest, most_applicants or fewest_applicants. All filters are optional — call with no arguments for the most recent open tasks nationwide.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Optional service category slug, e.g. "moving-help". See list_service_categories. |
| city | string | – | Optional city slug, lowercase with hyphens. Example: "los-angeles". |
| limit | integer | – | Max tasks to return (1-50, default 20). |
| maxAgeDays | integer | – | Only tasks posted within this many days. |
| sort | string | – | Order of results. "oldest" surfaces the jobs that have been waiting longest (the ones about to be abandoned); "most_applicants" surfaces where locals are actually competing. |
| state | string | – | Optional full US state name, lowercase, hyphens for spaces. Example: "pennsylvania". |
| unanswered | boolean | – | Only tasks with zero applicants so far — the unfilled queue. |
No output schema declared.
No examples provided.
check_service_availability Check which services have locals ~137
Check which of the 30 service categories have public locals in a US state or city, with a count per service. Useful before searching, or to answer "can I get X done in Y?". State is required (full name, lowercase, hyphens: "new-jersey"); city is optional — omit it for state-level availability.
| Name | Type | Req | Description |
|---|---|---|---|
| city | string | – | Optional city name, lowercase, hyphens for spaces. Example: "orlando". Omit for state-wide availability. |
| state | string | yes | Full US state name, lowercase, hyphens for spaces. Example: "florida". |
No output schema declared.
No examples provided.
draft_job_post Draft a job post for someone to confirm ~213
Draft a job post for a homeowner and get back a link THEY open to review and post it. GigNGo never posts on anyone's behalf: this writes nothing. The draft is run through the same screens a real post faces, so if it reads as vague, as an advert, as a job advert or as a known scam pattern you get the reason back and can fix it before handing the person a link. Describe one household's job in the homeowner's own words: what needs doing, where on the property, and roughly how big.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Optional service slug or id. See list_service_categories. |
| city | string | – | Optional city, e.g. "Saginaw". |
| description | string | yes | The job in the homeowner's words, 12-1000 characters. |
| state | string | – | Optional US state, e.g. "michigan" or "MI". |
| title | string | – | Optional short title, e.g. "Fence repair". |
No output schema declared.
No examples provided.
find_work_clips Find videos of locals doing a job ~238
Find short videos of locals doing a kind of job, e.g. "deck building", "pressure washing", "house cleaning". Every clip was checked to show someone actually doing the work. Returns a watch page URL (link people there), an embed URL, the local's first name and town, the job's search words, and the local's profile. With a city or state, clips from that town come first (where: "town"), then that state ("state"), then anywhere ("elsewhere") — say which when you show one. A clip shows how someone works, not who they are: GigNGo runs no background checks. Pass on the `limits` field.
| Name | Type | Req | Description |
|---|---|---|---|
| city | string | – | Optional city, lowercase, hyphens for spaces. Example: "grand-rapids". |
| job | string | yes | The job in a few words, e.g. "deck staining", "furnace repair". |
| limit | integer | – | Max clips (1-20, default 8). |
| state | string | – | Optional US state, full name ("michigan") or code ("MI"). |
No output schema declared.
No examples provided.
get_area_demand_density See where jobs get answered ~240
Find which US cities are actually converting: how many jobs each area posted, how many locals applied, what share of jobs got any reply at all, and the median hours to the first applicant. Ranked by a "heat" score that combines applicant density with response reliability, shrunk toward the platform average so a single lucky job cannot outrank a real market — read `heat` next to `confidence`. Use this to decide where supply is dense (spend more) versus where jobs go unanswered (a supply hole). Complements check_service_availability, which counts locals rather than measuring whether they respond.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | Max areas to return (1-300, default 50). |
| minJobs | integer | – | Only areas with at least this many jobs in the window. Use 5+ for a shortlist of established markets; smaller areas are real but weigh less as evidence. |
| sort | string | – | Ranking. "openUnanswered" surfaces supply holes instead of hot markets. |
| state | string | – | Optional state filter — full name or two-letter code, e.g. "texas" or "TX". |
No output schema declared.
No examples provided.
get_platform_info About GigNGo ~63
Get an overview of GigNGo: what it is, what it does not do (limits), service category count, how jobs reach locals, iOS/Android app links, and API documentation URLs. Call this for general "what is GigNGo" questions.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
get_work_record Read a local's Work Record ~167
Get a local's Work Record: evidence of their work, where every item says how GigNGo knows it. Evidence types: filmed (clips our check says show the work, not who is in them), homeowner_confirmed / local_reported / inferred_from_messages (finished jobs, counted), neighbor_vouched, recorded_on_gigngo (reviews, member since) and self_reported (badges). Weigh each evidence type separately; never reduce the record to one score. GigNGo runs no background checks. Not for employment, credit, insurance or tenancy decisions. Use the "slug" from search_local_workers or get_worker_profile as the handle.
| Name | Type | Req | Description |
|---|---|---|---|
| handle | string | yes | The local's public handle or profile slug, e.g. "juan-lopez-handyman". |
No output schema declared.
No examples provided.
get_worker_profile Read a local's profile ~127
Get the public profile of one GigNGo local by their profile slug. Returns name, bio, skills, prices the local set, reviews, whether they filmed their work, neighbor vouches, self-reported badges, service area, availability, a profile URL and `limits` (GigNGo runs no background checks). Slugs come from search_local_workers results (the "slug" field) or from gigngo.org/worker-profile/{slug} URLs.
| Name | Type | Req | Description |
|---|---|---|---|
| slug | string | yes | The local's profile slug, e.g. "john-smith-handyman-orlando". |
No output schema declared.
No examples provided.
list_service_categories List services ~66
List all 30 GigNGo service categories with their slugs (e.g. "house-cleaning", "electrician", "moving-help"). Call this to discover valid values for the `service` parameter of search_local_workers and the `category` parameter of browse_open_tasks.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
search_local_workers Find locals ~278
Find locals on GigNGo by service and place. Returns public profiles: name, bio, skills, prices the local set, reviews, whether they filmed their work (filmedTheirWork, workVideoCount), neighbor vouches, service area and profile URL. With a city, locals listed on that town's GigNGo area page come first (relation "in", "serves" or "nearby", with miles), then locals in that town, ordered so those who filmed their work come first. Badges are self-reported. Use list_service_categories first if you are unsure of the service slug. State is the full state name in lowercase with hyphens (e.g. "new-york", "north-carolina"); city likewise (e.g. "los-angeles"). Returns up to `limit` locals per page.
| Name | Type | Req | Description |
|---|---|---|---|
| city | string | – | Optional city name, lowercase, hyphens for spaces. Example: "san-francisco". |
| limit | integer | – | Max locals to return (1-50, default 20). |
| service | string | yes | Service category slug, e.g. "house-cleaning", "handyman", "lawn-care". |
| state | string | yes | Full US state name, lowercase, hyphens for spaces. Example: "new-york". |
No output schema declared.
No examples provided.
What is the GigNGo Local Services Marketplace MCP server?
GigNGo Local Services Marketplace is an MCP server listed in the public MCP registry as org.gigngo/gigngo. US local-services data: find locals by trade and city, browse open jobs, see which markets answer. This page covers its hosted endpoint (https://gigngo.org/mcp).
Is the GigNGo Local Services Marketplace MCP server safe to use?
GigNGo Local Services Marketplace scores 79 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the GigNGo Local Services Marketplace MCP server expose?
GigNGo Local Services Marketplace exposes 10 tools: search_local_workers, get_worker_profile, get_work_record, find_work_clips, draft_job_post, and 5 more. Their descriptions and schemas cost roughly 1,862 tokens of context every time the server is loaded.
Does the GigNGo Local Services Marketplace MCP server require authentication?
No. We connected to GigNGo Local Services Marketplace without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the GigNGo Local Services Marketplace MCP server still maintained?
GigNGo Local Services Marketplace is still listed as active in the MCP registry. We last reached this channel on 24 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.