Sourcey MCP Server
OfficialClick on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Sourcey MCP Serverfind current startup credits and deals for AI companies"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Sourcey MCP Server
Find evidence-backed startup credits and deals, inspect Agent Readiness report cards, and prepare canonical service declarations from an agent client.
Sourcey is already a hosted Streamable HTTP MCP server:
https://mcp.sourcey.com/mcpUse that URL directly when your client supports remote MCP. This package is the thin stdio bridge for clients that require a local command:
npx -y @sourcey/mcp-server{
"mcpServers": {
"sourcey": {
"command": "npx",
"args": ["-y", "@sourcey/mcp-server"]
}
}
}The bridge downloads no Catalog and contains no tool implementations. At startup it negotiates with the live Sourcey server, reads the current tool definitions once, and relays tool calls. A Catalog or tool-description update therefore needs no package release.
What agents can do
search and compare current startup credits, discounts, free tiers, programs, perks, and deals;
inspect exact evidence, freshness, eligibility unknowns, and the signed change feed;
search and inspect Agent Readiness report cards, including visible grades, five-stage findings, blockers, remediations, methods, coverage, and freshness;
prepare canonical Agent Readiness declaration YAML without assigning a grade; and
discover Sourcey's paid HTTP services and x402 endpoint without paying inside MCP.
Call tools/list for the exact live schemas and descriptions. Sourcey's full agent guide is at
sourcey.com/SKILL.md, its OpenAPI contract is at
api.sourcey.com/openapi.yml, and x402 discovery is at
api.sourcey.com/.well-known/x402.
Related MCP server: io.github.readyagentsdev/readyagents
Boundary
This package performs only two actions: MCP over local stdio and MCP over the configured hosted HTTP endpoint. It has no wallet, payment signer, credentials, telemetry, browser, background daemon, mutable plugin, Catalog data, Agent Readiness executor, or submission authority. Paid work remains on Sourcey's canonical HTTP API.
SOURCEY_MCP_URL may select another HTTPS Sourcey endpoint. Plain HTTP is accepted only for a
loopback test server. URLs containing credentials or fragments are refused.
Development
npm ci
npm run verify
docker build -t sourcey-mcp .The verification path builds from clean output, checks all generated metadata, tests the real HTTP-to-stdio boundary, creates an SBOM, installs the exact packed tarball into a blank project, and repeats protocol introspection from those installed bytes.
MIT. See SECURITY.md and SUPPORT.md for reporting paths.
Available Tools
8 toolscompare_offersCompare offersARead-onlyIdempotentInspect
Compare two to ten startup credit or deal offers side by side, including value, access requirements, eligibility, freshness, and evidence. Unknown eligibility and unsupported stacking remain explicit.
| Name | Required | Description | Default |
|---|---|---|---|
| facts | Yes | Known typed company facts used only for explicit eligibility evaluation; omit unknown facts. | |
| offers | Yes | Two to ten exact startup credit or deal offers to compare in this order. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| stacking | Yes | |
| release_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnly, idempotent, non-destructive, so safety is covered. The description adds meaningful behavior beyond that: it discloses that unknown eligibility and unsupported stacking are surfaced explicitly rather than silently resolved, which tells the agent how to interpret results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence with no filler, front-loading the verb and resource followed by the compared dimensions. Slightly overstuffed but every clause contributes.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists and annotations cover the safety profile, so return values need not be described. The description covers scope, compared dimensions, and the explicit-unknowns behavior, leaving little an agent needs missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both the offers array and the facts object are documented in the schema itself. The description's 'two to ten' restates minItems/maxItems and adds no syntax or format detail beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (compare) and resource (two to ten startup credit or deal offers) side by side, and enumerates the dimensions compared (value, access requirements, eligibility, freshness, evidence). This clearly separates it from the sibling search_offers, which retrieves rather than compares.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The comparison framing implies when to use it, but there is no explicit when-to-use/when-not guidance or named alternative (e.g., search_offers for lookups). Usage must be inferred from the tool name and verb.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_changesGet changesARead-onlyIdempotentInspect
Track added, changed, withdrawn, and removed startup credits, discounts, free tiers, perks, and deals through Sourcey's signed change feed after an optional cursor.
| Name | Required | Description | Default |
|---|---|---|---|
| cursor | No | Opaque signed cursor returned by the previous change-feed page. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| release_id | Yes | |
| diff_digest | Yes | |
| next_cursor | Yes | |
| snapshot_id | Yes | |
| feed_contract | Yes | |
| retained_from_release_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds that the feed is 'signed' (an authenticity/trust property not visible in annotations) and that the cursor is optional, but it does not describe ordering, page size, or how the feed terminates.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One dense sentence with the action and scope front-loaded; the enumerated resource list is long but conveys what is tracked. No redundant or filler content.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With annotations covering the safety profile and an output schema describing return values, the description only needs to establish the change-feed purpose and cursor mechanics, which it does. Missing minor operational details (ordering, pagination termination) keeps it from a 5.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single parameter is fully documented in the schema as an opaque signed cursor. The description only echoes that the cursor is optional, adding no syntax or format detail beyond the schema, so the baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete verb (track) and resource (added/changed/withdrawn/removed offers in Sourcey's signed change feed), which is clearly distinct from sibling search_offers and compare_offers. It does not explicitly name which sibling to use instead, but the change-feed framing is unambiguous enough for selection.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'after an optional cursor' implies the pagination workflow (call, then feed the returned cursor back in for the next page), which is useful implied usage. However, there is no explicit statement of when to use this versus the sibling search tools or any preconditions for the first call.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_readinessGet an Agent Readiness report cardBRead-onlyIdempotentInspect
Get one exact published Agent Readiness report card with its visible A+ to F grade, five service-use stages, individual findings, blockers, remediations, tested surfaces, methods, evidence state, coverage, freshness, policy identity, provenance, and canonical URL. Resolve by immutable profile ID or by one Entity plus exact product and funnel.
| Name | Required | Description | Default |
|---|---|---|---|
| entity | No | Current Sourcey Entity slug or immutable Entity ID. | |
| funnel | No | ||
| product | No | ||
| profile_id | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| release_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds that the artifact is 'published' and includes policy identity, provenance, and canonical URL, which is mild extra context but does not disclose auth needs, rate limits, or failure behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
It is a single dense sentence, but a long tail enumerates returned fields (findings, blockers, remediations, tested surfaces, evidence state, coverage, freshness) that an output schema already covers. That list crowds out the resolution logic the sentence should emphasize.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present, the return-value enumeration is unnecessary, and the low param coverage is only partially offset. The essentials for correct invocation (one key vs entity+product+funnel) are present, but nothing tells the agent when this tool beats its siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is only 25%, so the schema leaves funnel and product essentially undocumented. The description compensates by explaining the two mutually exclusive resolution modes — profile ID alone, or Entity with exact product and funnel — which meaningfully constrains how the four parameters combine.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource — 'Get one exact published Agent Readiness report card' — and scopes it to a single record, which implicitly separates it from the sibling search_readiness. It never names the sibling, so the differentiation must be inferred rather than read.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The second sentence gives the two resolution paths (immutable profile ID, or Entity plus exact product and funnel), which is useful invocation guidance. However, it offers no explicit when-to-use/when-not framing versus search_readiness or inspect_evidence, leaving the choice to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_servicesGet Sourcey paid servicesARead-onlyIdempotentInspect
Discover Sourcey's enabled paid agent services and canonical HTTP resources, including exact request and response contracts, price floor, policy links, and x402 discovery. Payment and durable job status remain on the product HTTP API; this read-only MCP tool never signs, settles, or interprets a payment.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| release_id | Yes | |
| openapi_url | Yes | |
| x402_discovery_url | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only, idempotent, non-destructive behavior, and the description adds meaningful context beyond them: it never signs, settles, or interprets a payment, and payment/job-status concerns are handled elsewhere. Return-format detail is deferred to the output schema, which is reasonable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two dense sentences, front-loaded with the primary purpose and followed by the scope boundary. No filler or redundant restatement of the name.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present (so return values need not be described) and annotations covering safety, the description supplies exactly the missing pieces: what is discovered, what the payload contains, and the payment-handling boundary.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4 and there is nothing for the description to clarify or compensate for.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb+resource ('Discover Sourcey's enabled paid agent services and canonical HTTP resources') and enumerates the payload contents (contracts, price floor, policy links, x402 discovery). It is clearly a discovery/listing tool, though it does not explicitly contrast itself with siblings like search_offers or compare_offers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It establishes scope and boundaries: payment and durable job status live on the product HTTP API, not here. That tells the agent what this tool is not for, but it never states when to prefer it over the sibling discovery/search tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inspect_evidenceInspect evidenceARead-onlyIdempotentInspect
Inspect the provenance behind startup credits and deals. Resolve one to ten exact revisions to supporting events and observations, including freshness and dispute status.
| Name | Required | Description | Default |
|---|---|---|---|
| revision_digests | Yes | Exact offer revision digests returned by Sourcey search or comparison. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| release_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, and closed-world behavior, so the safety profile is covered. The description adds modest context by noting it surfaces freshness and dispute status, but says nothing about cost, limits, or failure modes beyond what the structured fields provide.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two front-loaded sentences with no filler; the purpose lands first and the resolution scope follows. Slightly dense but every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter, read-only tool with rich annotations and an output schema, the description is essentially complete: it establishes what is inspected and what the results contain. Only cross-tool routing guidance is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With a single parameter at 100% schema coverage, the schema fully documents the sha256-prefixed revision digests. The description's 'one to ten exact revisions' restates the min/max items bounds without adding format or sourcing detail beyond what the schema already says.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb (inspect) and resource (provenance behind startup credits and deals) and clarifies the mechanism of resolving revisions to supporting events and observations. It is distinguishable from read siblings like search_offers and compare_offers, though it does not explicitly name them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the schema notes digests come from 'Sourcey search or comparison,' which hints the tool follows search_offers/compare_offers, but the description itself offers no explicit when-to-use or when-not guidance against the seven siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
prepare_declarationPrepare an Agent Readiness declarationBRead-onlyIdempotentInspect
Prepare the canonical declaration for an independent Agent Readiness assessment of one vendor product, API, SaaS service, authentication path, payment path, provisioning flow, operating interface, recovery flow, and exact agent standard, ready to submit through POST /v1/submissions as product agent_readiness. Resolves only exact Sourcey Entity identity, never assigns a grade or treats startup credits and deals as service readiness, and returns precise missing fields when the service graph is incomplete.
| Name | Required | Description | Default |
|---|---|---|---|
| scope | No | ||
| subject | No | ||
| endpoints | Yes | ||
| relations | Yes | ||
| resources | Yes | ||
| interfaces | Yes | ||
| declared_at | No | ||
| participants | Yes | ||
| subject_roles | Yes | ||
| offer_relations | Yes | ||
| authority_intent | No | ||
| command_contract | Yes | ||
| scope_source_uris | Yes | ||
| assessment_targets | Yes | ||
| surface_exclusions | Yes | ||
| base_authoring_file | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| release_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safety profile is covered. The description adds valuable non-obvious behavior: it resolves only exact Sourcey Entity identity, never assigns a grade, never treats startup credits/deals as service readiness, and returns precise missing fields when the service graph is incomplete. That is genuine context beyond annotations. It does not, however, describe idempotency or auth requirements independently.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The single sentence is overloaded, packed with a run-on enumeration ('one vendor product, API, SaaS service, authentication path, payment path, provisioning flow, operating interface, recovery flow, and exact agent standard') and multiple negatives before the core purpose is reachable. It is not front-loaded and not skim-friendly.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, and annotations cover read-only/idempotent/non-destructive behavior. However, for a 16-param, 11-required, deeply nested declaration tool with 0% schema description coverage, the description leaves major gaps about parameter meaning and validation rules that an agent would need.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate — but it names no actual parameters. It does allude to key concepts (identity resolution, participants, endpoints, interfaces, relations, offer_relations, source URIs) that map loosely to the 16-param schema, giving partial orientation, but it adds little concrete semantic detail for any specific field.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb (Prepare) and resource (the canonical declaration for an Agent Readiness assessment), and enumerates the surface types covered. But it does not distinguish itself from siblings like get_readiness, search_readiness, or compare_offers — an agent cannot tell from the text alone why it should call this instead of another readiness tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage via 'ready to submit through POST /v1/submissions as product agent_readiness' and lists what the declaration covers, but never states when to use this tool versus get_readiness/search_readiness/compare_offers. No explicit exclusions or alternative-tool routing is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_offersSearch credits and dealsARead-onlyIdempotentInspect
Search current startup credits and deals, including cloud credits, SaaS discounts, free tiers, grants, perks, and partner offers. Filter by query, vendor, or category and evaluate eligibility from typed company facts; unknowns remain explicit.
| Name | Required | Description | Default |
|---|---|---|---|
| facts | Yes | Known typed company facts used only for explicit eligibility evaluation; omit unknown facts. | |
| limit | No | Maximum results to return; defaults to 10. | |
| query | No | Natural-language search for a startup need, technology, credit, discount, free tier, perk, grant, or deal. | |
| entities | No | Current Entity slugs or immutable Entity IDs to include. | |
| categories | No | Catalog categories to include, such as hosting, databases, or observability. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| total | Yes | |
| truncated | Yes | |
| release_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world. The description adds real behavioral context beyond that: eligibility is evaluated only from typed company facts and 'unknowns remain explicit', which warns the agent not to expect inferred or fabricated eligibility verdicts. It stops short of describing result shape or ranking, though the output schema covers returns.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the resource and scope, with the filtering/eligibility behavior second. The mid-sentence enumeration of deal types is slightly list-heavy but each item is a distinct searchable category, so it earns its space.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With a full output schema and annotated safety profile, the description need not explain return values, and it covers the core selection signals: what is searched, how it is filtered, and how eligibility is judged. Only the relationship to compare_offers is left unaddressed.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents facts, limit, query, entities and categories. The description reinforces which filters exist and adds the 'omit unknown facts' guidance, but adds little syntactic or semantic detail beyond the schema baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('Search current startup credits and deals') and enumerates the resource subtypes (cloud credits, SaaS discounts, free tiers, grants, perks, partner offers). It does not differentiate itself from the adjacent sibling compare_offers, which is the one name an agent could plausibly confuse it with.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It implies usage ('Filter by query, vendor, or category and evaluate eligibility from typed company facts'), which tells the agent what inputs drive the search, but it gives no explicit when-to-use vs compare_offers or the readiness/search_readiness siblings, and no prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_readinessSearch Agent ReadinessARead-onlyIdempotentInspect
Search published Agent Readiness report cards for APIs, SaaS products, authentication, payments, provisioning, operations, and recovery. Returns the overall A+ to F grade, five-stage outcomes, evidence coverage, freshness, primary blocker, remediation context, and canonical report URL without conflating service readiness with startup-credit eligibility.
| Name | Required | Description | Default |
|---|---|---|---|
| grade | No | Exact published report-card grade. | |
| limit | No | Maximum results to return; defaults to 10. | |
| query | No | Vendor, service, API, product, capability, blocker, or readiness need. | |
| entity | No | Current Sourcey Entity slug or immutable Entity ID. | |
| funnel | No | Exact Agent Readiness service-use funnel key. | |
| product | No | Exact Agent Readiness product key. |
Output Schema
| Name | Required | Description |
|---|---|---|
| data | Yes | |
| total | Yes | |
| truncated | Yes | |
| release_id | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, non-open-world behavior, so safety is covered; the description adds the useful caveat about not conflating service readiness with startup-credit eligibility and enumerates the returned fields. It does not discuss rate limits, pagination, or failure modes, keeping it below a 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two front-loaded clauses: the search scope first, then the payload and the disambiguation caveat. Dense but every clause carries information; the only slight drag is the long enumeration of domains and return fields.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
An output schema exists, so return values need not be explained, yet the description still summarizes the payload (grade, five-stage outcomes, coverage, freshness, blocker, URL), which is more than required. Combined with full annotation coverage, an agent has enough to call this correctly; guidance on sibling routing is the only real gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all six parameters including the grade enum and limit bounds, which sets the baseline at 3. The description adds only a broad domain list (authentication, payments, provisioning, etc.) beyond the schema's 'vendor, service, API, product, capability, blocker' query text, so it contributes marginal extra meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (search) and resource (published Agent Readiness report cards) and enumerates the domain it covers. It is distinguishable from sibling reads, but it never names a sibling such as get_readiness or search_offers to sharpen the boundary between a broad search and a targeted lookup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the scope ('search published report cards' over a broad set of domains), and the closing caveat about not conflating service readiness with startup-credit eligibility hints at where other tools belong. However, it never states when to prefer this over get_readiness or search_offers, so the agent must infer the routing.
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.
8 tool updates
v1.0.0- First observed
compare_offers - First observed
get_changes - First observed
get_readiness - First observed
get_services - First observed
inspect_evidence - First observed
prepare_declaration - First observed
search_offers - First observed
search_readiness
TDQS
Scored across 8 tools
The set splits into two clear domains (startup offers vs. Agent Readiness) with search/get/compare/inspect patterns that read as distinct actions. Within each domain the verbs are reasonably unambiguous, though the verbose, jargon-heavy descriptions for prepare_declaration, search_readiness, and search_offers create some risk of overlap confusion around eligibility vs. readiness.
All eight tools use a consistent snake_case verb_noun pattern (compare_offers, search_offers, get_readiness, get_services, etc.). Verb choices map predictably to intent (search_ for collections, get_ for a single exact record, prepare_ for submissions). No camelCase or stylistic mixing.
Eight tools is well-scoped for a read-mostly discovery/assessment server. Two coherent sub-domains (offers and readiness) are each covered with a small, focused tool set plus one meta-discovery tool, with no redundant entries.
The surface covers search, comparison, change tracking, provenance inspection, and single-record retrieval across both domains, plus service discovery and a submission-preparation path. Minor gaps remain, e.g. no dedicated get_offer for a single offer and no explicit listing of entities/subjects, though agents can work around via search.
Maintenance
Related MCP Connectors
Search GitHub, npm, PyPI, StackOverflow, ArXiv from one MCP — built for coding agents.
Turn a GitHub repo or docs site into agent-ready context: pack it or search it, over MCP.
AgencyAI's public MCP for service discovery and AI-readiness assessment.
Agent-driven search: build, import, tune, search, and score result quality — all over MCP.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides a stdio MCP bridge for coding agents to query and record engineering knowledge locally, preserving debugging history, failed attempts, and verified solutions.0MIT
- AlicenseNot gradedqualityAmaintenanceExposes ReadyAgents' local workflow engine and built-in tools over MCP stdio, enabling MCP clients to define, run, inspect, and approve YAML/JSON agent workflows.230 PyPIApache 2.0

yotta-dev-mcpofficial
AlicenseNot gradedqualityBmaintenanceProvides deterministic local development tools over stdio MCP, including repository mapping, code review, secret and dependency scanning, release checks, whitelisted checks, scaffolding, and workflow state tracking.185 npmMIT- AlicenseNot gradedqualityBmaintenanceEnables stdio-only MCP clients to reach an agent-native venue where autonomous agents chat in rooms, post and team up on problems, create and claim bounties (first claim wins), search all content, and pull deterministic digests, with an optional API key unlocking mutating tools and free read-only access otherwise.MIT