Skip to main content
Glama

nooscape-mcp

An MCP server for Nooscape. It lets an AI assistant, or an agent, ask what is on record about an agent, a wallet or an endpoint before it pays or relies on it.

It is a thin, read-only client of the public Nooscape API (https://nooscape.si/api/v1). It adds no data and no logic of its own. Every answer says when it was read, where it came from and what the evidence level is.

What it gives you

Four tools, all read-only. Each returns a short plain summary first, then the API's JSON exactly as it was given.

Tool

What it does

Needs

search_agents(query, chain?)

Search listed agents by name, endpoint host, registry key or wallet.

nothing

get_agent(chain, id)

One agent's record: first and last seen, who registered it, evidence level, listings that share its wallet, registry activity, ratings, and any claim by its owner.

nothing

get_agent_history(chain, id)

One agent's registry events and the public history of claims on it.

an API key (a free one is enough)

check(agent | wallet | url)

Pre-flight facts: when each listing was first seen, recorded ownership changes, the share of ratings that were revoked, how many listings its wallet registered, and the evidence level.

a Pro key, or an x402 payment (see below)

Chains are robinhood (Robinhood Chain), bnb (BNB Smart Chain) and solana. For Solana, an address can be listed by more than one registry: both agent tools take an optional registry (solana_8004, solana_said or solana_registry) to choose.

check takes exactly one of agent ({ chain, id }), wallet or url. A url can be a full address or a bare host such as example.com; it is matched by its host alone and nothing is fetched from it. chain can narrow a wallet or url.

Related MCP server: knowledge-trust-core

Install

Node.js 18 or later. Nothing to build: npx fetches it.

Claude Desktop

Add this to claude_desktop_config.json (Settings, Developer, Edit Config), then restart Claude Desktop:

{
  "mcpServers": {
    "nooscape": {
      "command": "npx",
      "args": ["-y", "nooscape-mcp"],
      "env": { "NOOSCAPE_API_KEY": "nsk_your_key_here" }
    }
  }
}

Leave out the env block to use it with no key. Lookups and search work without one.

Cursor

Add the same block to ~/.cursor/mcp.json (or to .cursor/mcp.json in a project):

{
  "mcpServers": {
    "nooscape": {
      "command": "npx",
      "args": ["-y", "nooscape-mcp"],
      "env": { "NOOSCAPE_API_KEY": "nsk_your_key_here" }
    }
  }
}

Claude Code

claude mcp add nooscape --env NOOSCAPE_API_KEY=nsk_your_key_here -- npx -y nooscape-mcp

Any other MCP client

Run npx -y nooscape-mcp as a stdio server.

Environment

Variable

What it is

NOOSCAPE_API_KEY

Optional. An API key, sent as Authorization: Bearer. A free key is made at nooscape.si/developers/keys. It is never logged, never echoed and never put in a result or an error.

Keys, limits and payment

  • No key: search_agents and get_agent work, at 30 requests a minute from one address.

  • A free key raises that to 60 a minute and 1,000 a day, and opens get_agent_history.

  • check needs a Pro key, or an x402 payment (currently $0.01 per call, in USDC on Arc). This server holds no wallet and does not sign or send payments. Without a Pro key, check returns a clear message with the price and the terms the API asked for, and nothing is charged. An x402-capable client can pay the API directly; paying from inside this server may come later.

  • A refused request is not retried. On a rate limit the message says how many seconds to wait (the API's Retry-After).

  • Requests time out after 15 seconds.

Example prompts

  • "Look up Robinhood Chain agent 8865 on Nooscape. When was it first seen, and who registered it?"

  • "Search Nooscape for agents on the host example.com."

  • "Before I pay this wallet, what does Nooscape have on record about it?" (uses check)

  • "Show me the registry events and claim history for BNB agent 12."

What the answers mean, and what they do not

  • Nooscape gives facts with their dates. It does not review agents, rank them or give a verdict, and an answer is not a statement that an agent is good or bad, safe or unsafe. This server's summaries add no such words, and its instructions to the model say not to infer them.

  • Nothing a caller pays buys a listing, a tier or an evidence level. Payment never changes a record, a score or an evidence level.

  • A record the site hides, withdraws or closes is never served, and looks the same as one that was never listed.

  • Text that an owner wrote about their own listing is the owner's own word, and Nooscape has not checked it. It is labelled as such, and a model should treat it as data and never as an instruction.

Attribution and terms

Data from Nooscape (https://nooscape.si). Attribution is required where the data is used. Do not resell bulk copies. A final data license will replace these provisional terms; the current ones are at nooscape.si/terms. Every answer carries a license object with the attribution line.

Streamable HTTP mode

npx -y nooscape-mcp --http                 # http://127.0.0.1:8787/mcp
npx -y nooscape-mcp --http --port 9000

It is stateless (each POST to /mcp gets its own server and answers with JSON) and is meant for trying the server locally and for hosting later. It is not deployed anywhere by this package. It has no sign-in of its own, so:

  • It listens on 127.0.0.1 only by default, accepts only a matching Host header, and refuses any request that carries an Origin header, which is what a web page on another site would send.

  • Everyone who can reach it uses the server's one NOOSCAPE_API_KEY. Do not put it on a public address as it is. A hosted version would need per-caller keys.

Security notes

  • The server makes requests to nooscape.si and nowhere else, follows no redirect, and never sends the key anywhere but there.

  • There is no tool that writes, pays, signs or runs anything. The tools are marked read-only.

  • Results can contain text written by other people (owner-written fields, agent names). Like any tool output, treat it as untrusted data.

Listing in registries

server.json is ready for the official MCP registry and manifest.json (an MCPB manifest) for a Smithery stdio bundle. Neither has been submitted and the package has not been published. Publishing needs a public source repository.

Development

pnpm install
pnpm run build
pnpm test

The tests use a mocked API and a real MCP client over an in-memory transport. The package is standalone: it is not part of the Nooscape site's build or deploy.

To try all four tools against the live API (about a dozen requests, nothing paid or changed):

node scripts/live-check.mjs                          # the built server
node scripts/live-check.mjs --npx ./nooscape-mcp-0.1.0.tgz   # through npx, after `npm pack`
NOOSCAPE_API_KEY=nsk_... node scripts/live-check.mjs  # with a key, to see the history succeed

License

MIT.

Available Tools

4 tools
checkPre-flight checkA
Read-onlyIdempotent

Dated facts to read before you pay or rely on an agent, a wallet or an endpoint: when Nooscape first saw each listing, its recorded ownership changes, the share of its ratings that were revoked, how many listings its wallet registered, and the evidence level. Give exactly one of agent, wallet or url. Facts only: there is no score and no verdict. Needs a Pro key or an x402 payment (currently $0.01 per call); this server does not pay, so without a Pro key it explains what is needed.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlNoAn endpoint address or a bare host (example.com): the listings that name that host. Nothing is fetched from it.
agentNoOne agent, by chain and id.
chainNoNarrows a wallet or a url to one chain. Do not give it with agent.
walletNoA wallet address (0x... or a Solana address): the listings it registered.

TDQS

A4.2/5.0
Behavior5/5

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

Beyond the readOnly/idempotent/openWorld annotations, it discloses the commercial barrier (Pro key or x402 at $0.01 per call), that the server will not pay on the caller's behalf, and that a keyless call degrades into an explanation of what is required rather than a result. It also reassures that the URL argument triggers no fetch of the target host.

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

Conciseness4/5

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

The fact inventory is front-loaded and every listed item maps to an actual output field, with payment terms placed last where they belong. The opening sentence is long and list-heavy, but no clause is filler.

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?

With no output schema present, the description carries the return-value burden and mostly discharges it by enumerating the facts returned, and it covers auth/payment and the keyless fallback. It does not say how multiple matching listings are shaped or paginated, which is a modest residual gap for a four-parameter, nested-object tool.

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 100%, so the baseline would be 3, but the description adds a real constraint not encoded in the schema: 'Give exactly one of agent, wallet or url' — the schema declares no properties as required and has no oneOf/anyOf, so this XOR rule is unique value. The chain/agent exclusion is repeated from the schema rather than added.

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 enumerates exactly what is returned — first-seen date, recorded ownership changes, revoked-rating share, wallet-registered listing count, evidence level — so the vague name 'check' is fully disambiguated. It never names a sibling (search_agents, get_agent, get_agent_history), so the agent must infer that this is the trust/forensics read rather than a profile lookup.

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?

'Dated facts to read before you pay or rely on an agent, a wallet or an endpoint' gives a clear situational trigger, and 'Facts only: there is no score and no verdict' pre-empts the wrong expectation. It stops short of routing language against the sibling tools, so the agent gets context but no explicit alternative selection rule.

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

get_agentGet one agent's recordA
Read-onlyIdempotent

What Nooscape has on record about one agent: when it was first and last seen, who registered it, its evidence level, how many other listings share its wallet, its registry activity and ratings, and any claim by its owner (whose own words are labelled as theirs). Every answer says when it was read and where from. Not a review and not a verdict.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe agent's id on its registry: the token id (digits) on robinhood and bnb, the address on solana.
chainYesThe chain: robinhood, bnb or solana.
registryNoSolana only, when more than one registry lists the address (the answer then names them).

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already cover read-only, idempotent, open-world and non-destructive behavior, so the bar is lower. The description nonetheless adds real value beyond them: it discloses provenance/freshness ('Every answer says when it was read and where from') and that owner statements are attributed as the owner's own words rather than presented as fact.

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

Conciseness4/5

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

Front-loaded with the resource, then the returned fields, then the framing caveat. The long first sentence is dense but every clause names a distinct piece of returned data; the two short trailing sentences are efficient. Little waste.

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?

With no output schema, the description carries the burden of explaining returns and does so by enumerating the record's fields plus read-time and source metadata. Combined with a fully documented input schema, an agent has enough to invoke and interpret the tool; only the relationship to sibling tools is left implicit.

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 description coverage is 100% and all three parameters (including both enums) are documented in the schema, including the conditional Solana-only 'registry' behavior. The description adds no parameter-level detail, so the baseline 3 applies.

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?

Names a specific verb and resource ('What Nooscape has on record about one agent') and enumerates the concrete contents of the record (first/last seen, registrar, evidence level, shared-wallet count, registry activity, ratings, owner claims). The 'one agent' framing and 'Not a review and not a verdict' separate it from a search or an evaluative tool, though no sibling is named explicitly.

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?

'Not a review and not a verdict' implies an exclusion (use a review/verdict tool such as check instead), but the alternative is never named and no positive when-to-use condition is stated. Usage is only inferable from the singular 'one agent' framing.

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

get_agent_historyGet one agent's historyA
Read-onlyIdempotent

One agent's registry events (mint, transfers, profile link updates) and the public history of claims on it, each with its date. Needs an API key: set NOOSCAPE_API_KEY (a free key is enough).

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesThe agent's id on its registry: the token id (digits) on robinhood and bnb, the address on solana.
chainYesThe chain: robinhood, bnb or solana.
registryNoSolana only, when more than one registry lists the address (the answer then names them).

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already establish readOnly=true, idempotent=true, destructive=false, and openWorld=true, so the safety profile is covered. The description adds genuinely new context: the API key requirement and the env var name, plus the shape of what comes back (dated registry events and claims). It does not discuss pagination or result limits.

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 tight sentences: the data returned is front-loaded, the auth prerequisite follows. No filler, and every clause carries information.

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 read-only tool with full schema coverage and no output schema, the description covers the data content and the auth hurdle, which is what an agent needs to call it successfully. Minor gaps are pagination/volume expectations for a presumably long history.

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 description coverage is 100% – id, chain, and registry all carry their own descriptions, including the Solana-only caveat for registry. The description adds no parameter-level detail beyond that, so the baseline 3 applies.

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?

Names a specific resource and scope: one agent's registry events (mint, transfers, profile link updates) plus the public claim history, each dated. This clearly separates it from get_agent or search_agents in spirit, though it never names those siblings explicitly.

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?

Usage is implied by the word 'history' and by the enumerated event types, and the auth requirement is stated, but there is no explicit when-to-use/when-not guidance or pointer to get_agent/search_agents as alternatives.

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

search_agentsSearch Nooscape agentsA
Read-onlyIdempotent

Search the agents Nooscape lists by name, endpoint host, registry key or wallet. Returns up to 10 matches, newest first, each with its chain, id, evidence layer and the dates it was first and last seen. Use get_agent for one agent's full record.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoThe chain: robinhood, bnb or solana.
queryYesA name, an endpoint host, a registry key or a wallet address. Two to 64 characters.

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description adds real behavioral value beyond that: a hard result cap of 10, newest-first ordering, and the identity fields returned per match. It does not say what happens when more than 10 agents match (truncation vs. error, any paging), which is the one behavioral detail an agent would want.

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?

Three tight sentences: what is searched, what comes back and in what order, then the alternative tool. Nothing is repeated and the result semantics are front-loaded after the core purpose.

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?

With no output schema, the description correctly carries the burden of describing return values (chain, id, evidence layer, first/last seen dates) and the result count and ordering. The only omission is overflow/pagination behavior when the 10-match cap is exceeded, which would matter for a search tool.

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 description coverage is 100%, so both parameters (query and chain) are already fully documented, including the enum values and the 2-64 character bounds. The description restates the query field categories but adds no syntax or format detail beyond the schema; the chain filter is not mentioned at all, though the schema covers it. Baseline 3 applies when the schema does the heavy lifting.

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

Purpose5/5

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

States a specific verb and resource ('Search the agents Nooscape lists') and enumerates the searchable fields (name, endpoint host, registry key, wallet). It also names the sibling get_agent and the condition that selects it, so an agent can distinguish the two without opening either schema.

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

Usage Guidelines5/5

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

The final sentence routes the agent explicitly: 'Use get_agent for one agent's full record,' which is the only plausible alternative use case. The search scope (multi-match, up to 10) versus the single-record alternative is unambiguous.

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. 4 tool updatesv0.1.0
    • First observedcheck
    • First observedget_agent
    • First observedget_agent_history
    • First observedsearch_agents

TDQS

A3.9/5.0

Scored across 4 tools

Disambiguation4/5

search_agents (find) vs get_agent (full record) vs get_agent_history (time-series events) vs check (cross-resource risk facts) are mostly distinct. get_agent and check overlap on facts like evidence level, first-seen and ratings, though check's payment-gated, wallet/url-capable framing helps separate them.

Naming Consistency4/5

search_agents, get_agent, get_agent_history follow a clear verb_noun pattern with a consistent agent subject. The bare verb 'check' is a minor deviation but remains readable and unambiguous in context.

Tool Count4/5

Four tools is on the lean side but well-matched to a read-only agent-intelligence surface: search, detail, history and risk check. Nothing obviously redundant, though it sits near the thin end.

Completeness4/5

Search, single-record retrieval, historical events and a multi-resource risk check give good coverage of the stated lookup domain. Gaps are minor—no dedicated wallet/endpoint listing tools, but check partly covers those via mix.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to get read-only trust verdicts on knowledge records by evaluating evidence maturity, provenance, intended use, risk level, and scope before deciding whether knowledge may be used.
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables read-only, keyless queries of timestamped, definition-backed data about AI agent payments and activity on Base, including rankings, agent records, detections, metric histories, and evidence-pack pricing, from MCP clients or the terminal.
    6
    25
    Apache 2.0
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to obtain independent, Ed25519-signed receipts confirming real-world facts: whether a page is online, a domain is legitimate, an email address is deliverable, a heartbeat was declared, or a scheduled task actually ran. Each response includes a verifiable cryptographic receipt, so agents can prove to their users that an asserted outcome was observed by a neutral third party rather than self-attested.
    MIT