Skip to main content
Glama
mcp-harbor-search

mcp-harbor-search

mcp-harbor-search

Listed on mcpservers.org

A public, remote MCP server that lets AI agents search the MCP Harbor directory of 1,400+ MCP servers and AI-agent tools.

Endpoint: https://mcpharbor.app/mcp (Streamable HTTP, no auth, read-only)

Tools

Tool

Arguments

Returns

search_tools

query (string), category? (slug), limit? (1-50, default 10)

Ranked matches: slug, name, description, category, stars, URL, listing link

get_tool

slug (string)

Full listing for one tool

Categories: search-web, ai-agent-frameworks, cloud-infra, browser-automation, databases, memory-knowledge, productivity, developer-tools, finance-crypto, media-design, other.

Related MCP server: MCPfinder

Connect

Any client that supports remote MCP servers:

{ "mcpServers": { "mcp-harbor": { "url": "https://mcpharbor.app/mcp" } } }

For stdio-only clients, use a bridge such as mcp-remote: {"command":"npx","args":["mcp-remote","https://mcpharbor.app/mcp"]}.

Try it with curl

curl -s https://mcpharbor.app/mcp -H 'Content-Type: application/json' -H 'Accept: application/json, text/event-stream' \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"search_tools","arguments":{"query":"postgres"}}}'

Self-host

No dependencies and no build step. src/mcp.js is the protocol and search logic. src/worker.js is a Cloudflare Worker entry point that loads the directory dataset from DATA_URL.

npx wrangler deploy

License

MIT, see LICENSE.

Development

npm ci && npm run check runs ESLint, a strict TypeScript check of the JSDoc-typed JavaScript (tsc, checkJs), and the node:test suite (fixtures only, no network). GitHub Actions runs the same on every push and pull request.

Available Tools

2 tools
get_toolGet MCP Harbor listingA
Read-only
Inspect

Get the full MCP Harbor listing for one tool by its slug (as returned by search_tools).

NameRequiredDescriptionDefault
slugYes

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description adds that the result is the 'full' listing (versus the summary surfaced by search_tools), but says nothing about response shape or size, and there is no output schema to compensate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence, front-loaded with the action and resource, with the parameter qualification in parentheses. Nothing is wasted.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a single-parameter read tool with no output schema, the definition is nearly sufficient: identity, input source, and safety profile are all covered. It would be stronger with a hint about what the 'full listing' contains.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so the description must carry the load, and it does explain the single parameter's meaning: a slug that identifies one tool and originates from search_tools. That is meaningfully more than the schema's bare 'type: string', though no format or example is given.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (Get) and resource (full MCP Harbor listing for one tool) and names the identifier that selects it (slug). It is clearly distinguishable from search_tools, though the contrast is conveyed indirectly via 'as returned by search_tools' rather than stated outright.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'by its slug (as returned by search_tools)' establishes the intended workflow: search first, then fetch details for one result. It gives clear usage context with no explicit exclusions, which fits a 4 rather than a full 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

search_toolsSearch MCP HarborA
Read-only
Inspect

Search the MCP Harbor directory of MCP servers, clients and SDKs by keyword, optionally filtered by category. Returns the best matches ranked by relevance and GitHub stars.

NameRequiredDescriptionDefault
limitNo
queryYesKeywords, e.g. "postgres", "browser automation", "slack"
categoryNoOptional category slug: search-web, ai-agent-frameworks, cloud-infra, browser-automation, databases, memory-knowledge, productivity, developer-tools, finance-crypto, media-design, mcp-clients, other

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered and consistent with a read-only registry query. The description adds genuinely new behavioral context by disclosing the ranking method ('best matches ranked by relevance and GitHub stars'), which the annotations and schema do not provide.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tightly written sentences with zero filler; the core action is front-loaded and the optional filter and return behavior follow in a logical order.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, and the description only partly compensates by mentioning ranking; it does not describe the shape of a result (name, URL, description, stars) or how limit affects the response. Combined with annotations that already cover safety, the definition is adequate but leaves a real gap for result interpretation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 67% (query and category are described, limit is only bounded by defaults/min/max). The description's 'by keyword, optionally filtered by category' essentially restates the documented parameters and adds no format, syntax, or limit-scoping detail beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: 'Search the MCP Harbor directory of MCP servers, clients and SDKs'. It clearly conveys the target corpus, but it never mentions the sibling get_tool, so the agent must infer that this is the discovery path versus the direct-lookup path.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Keyword search with an optional category filter implies the discovery use case, and the phrase 'optionally filtered by category' gives some context, but there is no explicit when-to-use or when-not-to-use guidance and no reference to the sibling get_tool as the alternative for known-name lookups.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 2 tool updatesv0.1.0
    • First observedget_tool
    • First observedsearch_tools

TDQS

A4/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have clearly distinct purposes: search_tools finds listings by keyword/category, while get_tool retrieves a specific listing by slug. There is no realistic overlap or ambiguity in selection.

Naming Consistency5/5

Both names follow the same snake_case verb_noun pattern, search_tools and get_tool. Singular/plural use is natural and predictable.

Tool Count4/5

A two-tool search-and-detail surface is minimal but well matched to a directory lookup server. The count is slightly thin under the general 3-15 guideline, but each tool earns its place.

Completeness4/5

The core lifecycle of searching the directory and fetching a specific listing is covered. Minor gaps could include browsing all entries or listing categories, but agents can work around these via search.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    A general-purpose MCP server providing web search, persistent memory storage, and secure code execution capabilities. It enables AI agents to search the web, store and retrieve data, and run Python/JavaScript code in sandboxed environments.
    8
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    AI-first MCP server discovery tool that enables agents to search, inspect, and install MCP servers from multiple registries.
    13
    AGPL 3.0
  • A
    license
    Not graded
    quality
    D
    maintenance
    MCP tool server that gives any AI agent the ability to search, scrape, and analyze content across the internet.
    42
    MIT
  • A
    license
    A
    quality
    F
    maintenance
    Enables AI agents to search a directory of 13,870+ MCP servers, 4,384+ agent skills, and plugins from Remote OpenClaw, returning install commands directly.
    3
    49 npm
    6
    MIT