Agency Standings
Evidence-based agency rankings for Ecom, Legal, SaaS, Finance and Service, plus a work library.
Should I use this
Quality & Safety
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"agency-standings": {
"url": "https://agencystandings.com/mcp"
}
}
}Remote endpoints
https://agencystandings.com/mcpstreamable-httpWhat it can do
Tool inventory
Tools (7)
🟢get_started(user_request)
Start here. Ask whether the user is a brand looking for an agency or an agency that wants to join. Brand path uses the search tools. Agency path uses join_as_agency, then the private agency tools after the profile is claimed. Qualified briefs are not open yet.
Input Schema
{
"type": "object",
"properties": {
"user_request": {
"description": "A short paraphrase of what the user is looking for, in their words (no personal or sensitive info).",
"type": "string",
"maxLength": 300
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}⚪join_as_agency(agencyName, website, contactEmail, industries, services, ...)
Store a pending agency application. Collect the agency name, https website, contact email, industries, services, and a city or region. Do not collect a phone number or street address. We review the evidence before listing or ranking. No one can pay to be ranked. Rankings come only from evidence.
Input Schema
{
"type": "object",
"properties": {
"agencyName": {
"type": "string",
"minLength": 1,
"maxLength": 120,
"description": "Agency name."
},
"website": {
"type": "string",
"minLength": 1,
"maxLength": 300,
"description": "Agency website. https is added when the scheme is missing."
},
"contactEmail": {
"type": "string",
"minLength": 3,
"maxLength": 200,
"description": "Contact email for the application."
},
"industries": {
"minItems": 1,
"maxItems": 5,
"type": "array",
"items": {
"type": "string"
},
"description": "Industry labels or slugs: Ecom, SaaS, Legal, Finance, Service."
},
"services": {
"minItems": 1,
"maxItems": 12,
"type": "array",
"items": {
"type": "string"
},
"description": "Service labels or slugs, such as SEO or Web Design."
},
"location": {
"type": "string",
"minLength": 2,
"maxLength": 80,
"description": "City or region. Do not send a street address or phone number."
},
"user_request": {
"description": "A short paraphrase of what the user is looking for, in their words (no personal or sensitive info).",
"type": "string",
"maxLength": 300
}
},
"required": [
"agencyName",
"website",
"contactEmail",
"industries",
"services",
"location"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢search_agencies(industry, service, location, zip, query, ...)
Search Agency Standings. Each result includes its industry, services, evidence level, a one-line evidence summary, profile URL, and contact URL. A plain-language query drops filler words such as agency, firm, best, and top, maps words such as lawyer, Shopify, or software onto an industry, and ranks agencies that match any remaining word. If a location matches nobody, that location is left off and the response includes a note. Ecom, Legal, SaaS, Finance, and Service include rank numbers. Agencies without enough evidence stay unranked and have no rank number. A service, location, or zip filter numbers the matches from 1 in the existing industry order. get_agency keeps each agency's industry rank. Results do not include a numeric score.
Input Schema
{
"type": "object",
"properties": {
"industry": {
"description": "Industry slug or label, such as ecom or Legal.",
"type": "string"
},
"service": {
"description": "Service slug or label, such as seo or Web Design.",
"type": "string"
},
"location": {
"description": "City, state, or country. Matches state abbreviations and full names, cities, and country names against a sourced headquarters or other listed office.",
"type": "string"
},
"zip": {
"description": "Postal code matched against a stored headquarters string.",
"type": "string"
},
"query": {
"description": "Plain language or words matched against the name, services, and evidence summary. Filler words are ignored.",
"type": "string"
},
"limit": {
"description": "Maximum results to return. Defaults to 10.",
"type": "integer",
"minimum": 1,
"maximum": 25
},
"user_request": {
"description": "A short paraphrase of what the user is looking for, in their words (no personal or sensitive info).",
"type": "string",
"maxLength": 300
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢search_work(query, type, service, platform, industry, ...)
Returns credited examples of agency work, including the client link, image, agency, source, and contact link, plus dateShipped and featuredIn when the library has them, so you can show real examples of agency work, then offer to connect the user with the agency that built it.
Input Schema
{
"type": "object",
"properties": {
"query": {
"description": "Words matched against the client, agency, platform, and services.",
"type": "string"
},
"type": {
"description": "Work type: website, product page, ad creative, video, or branding.",
"type": "string"
},
"service": {
"description": "Service tag, such as Development or SEO.",
"type": "string"
},
"platform": {
"description": "Platform, such as Shopify or Shopify Plus.",
"type": "string"
},
"industry": {
"description": "Industry label, such as Ecom.",
"type": "string"
},
"limit": {
"description": "Maximum results to return. Defaults to 10.",
"type": "integer",
"minimum": 1,
"maximum": 25
},
"user_request": {
"description": "A short paraphrase of what the user is looking for, in their words (no personal or sensitive info).",
"type": "string",
"maxLength": 300
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_agency(slug, user_request)
Return the full evidence review for one agency slug: the industry rank or an unranked standing, services, signals with URLs and retrieval dates, profile URL, and contact URL. A filtered search can show a different position. No numeric score.
Input Schema
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"minLength": 1,
"description": "Agency slug, such as blend-commerce."
},
"user_request": {
"description": "A short paraphrase of what the user is looking for, in their words (no personal or sensitive info).",
"type": "string",
"maxLength": 300
}
},
"required": [
"slug"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢list_industries_and_services(user_request)
List industries and service types. Ecom, Legal, SaaS, Finance, and Service are ranked. An agency without enough evidence stays unranked and has no rank number.
Input Schema
{
"type": "object",
"properties": {
"user_request": {
"description": "A short paraphrase of what the user is looking for, in their words (no personal or sensitive info).",
"type": "string",
"maxLength": 300
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢get_methodology(user_request)
Explain how Agency Standings publishes ranks. Real rankings, earned through evidence: client results, testimonials and published work. Rank numbers are included. A numeric score is not.
Input Schema
{
"type": "object",
"properties": {
"user_request": {
"description": "A short paraphrase of what the user is looking for, in their words (no personal or sensitive info).",
"type": "string",
"maxLength": 300
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Community
Evidence