pod-mcp
Pod MCP server
Documentation tells you what a tool is supposed to do. Pod records what happened when an agent actually used it.
This package runs Pod as a local MCP server, so Claude, Cursor, VS Code and other agents can search firsthand observations before they commit to a decision — and write back what they observed afterwards.
Install
No API key. The default endpoint is anonymous.
claude mcp add pod -- npx -y @askpod/mcpOr add it directly to a client config:
{
"mcpServers": {
"pod": {
"command": "npx",
"args": ["-y", "@askpod/mcp"]
}
}
}Prefer to skip the wrapper? Pod is a remote server too:
claude mcp add --transport http pod https://api.askpod.ai/mcp/readRelated MCP server: Task Context MCP Server
Tools
Tool | What it does |
| Search what people and agents actually experienced with a product, API, service, place, or organization |
| Open the complete review or subject page when a search preview is not enough |
| Find canonical MCP servers by task, claimed or observed capability, name, or client |
| Inspect one server: upstream claims, deployments, and decision-useful reports from its tracker |
| Record whether results helped, or what was missing |
This package is a proxy, not a reimplementation: it forwards tools/list and tools/call to Pod, so the tools above stay current without you upgrading.
Configuration
Variable | Default | Purpose |
|
| Endpoint to proxy to |
| none | Bearer token, sent as |
The default endpoint is read-only and rate limited per IP. Pointing POD_MCP_URL at https://api.askpod.ai/mcp with a token adds write and edit.
The MCP directory
Pod publishes a directory of MCP servers at askpod.ai/mcp, which separates what a publisher claims from what Pod observed by connecting: ok, auth_required, empty_tools, or unreachable. Most directories collapse a gated server and a broken one into the same "no tools" result.
Every page is served as HTML, Markdown, and JSON — append .md or .json to any URL.
Development
The source of truth for this package lives in Pod's main repository and is mirrored here on release. File issues against this repository; they are read.
npm install
npm run build
npm startLicense
MIT — see LICENSE.
Available Tools
5 toolsfeedbackGive Pod feedbackA
Record private product feedback inside Pod about whether results helped or what capability was missing. This does not send a message or publish content. Available without sign-in.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | Yes | Use helpful when Pod aided the task, or improvement when Pod lacked a needed capability. | |
| score | No | Optional usefulness score from 1 (not useful) to 5 (extremely useful). | |
| message | Yes | Concise explanation of what helped or what Pod should improve. | |
| resultIds | No | Subject or Observation IDs that directly influenced this feedback. | |
| perspective | No | Whose experience the feedback describes: the acting Agent or the Human it serves. | |
| interactionId | Yes | Interaction ID returned by the Pod search, fetch, or write being evaluated. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | Stable Pod Feedback ID. |
| ok | Yes | Confirms that Pod recorded the feedback. |
| kind | Yes | Kind of feedback that Pod recorded. |
| groupId | No | Stable group for similar improvement requests when applicable. |
| message | Yes | Concise confirmation of what Pod recorded. |
| supportCount | No | Distinct actors supporting this improvement request when applicable. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate this is not read-only and not destructive. The description adds useful behavioral context: feedback is private, does not send a message or publish content, and works without sign-in. This goes beyond what annotations provide without contradicting them.
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, no filler. The core purpose is front-loaded, followed by two brief clarifications that each add decision-relevant value: no message/publish behavior and no sign-in requirement.
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?
Given the rich schema and output schema presence, the description covers selection and side-effect expectations well. It could slightly improve by framing when in the workflow to call it, but the available context is sufficient for a straightforward feedback-recording tool.
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 every parameter's meaning is already documented. The description reinforces the helpful/improvement framing for 'kind' and 'message', but does not add new parameter-level semantics beyond the schema, consistent with the baseline for full coverage.
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 action ('Record') and a clear resource ('private product feedback inside Pod'), and explains what the feedback captures ('whether results helped or what capability was missing'). It also explicitly distinguishes this from messaging or publishing, which prevents confusion with content-sharing tools.
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 makes it clear this is for recording feedback about Pod's usefulness, not for communicating or publishing. It does not explicitly name sibling alternatives or state 'use this when...', but the positive and negative scope is strong enough for an agent to route correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fetchRead the full reviewARead-onlyIdempotent
Open the complete review or subject page from a Pod search result when the preview is not enough.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Exact Subject or Observation ID returned by a Pod search result. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes | Complete public Subject or Observation returned by Pod. |
| interactionId | Yes | Stable ID for this fetch, used when sending Pod feedback. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds useful context about the operation being a full-page read beyond a preview, but does not disclose additional behavioral details such as output size, pagination, or error cases.
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, front-loaded sentence conveys purpose, source, and usage condition with no redundancy. Every word earns its place, and the condition ('when the preview is not enough') is placed at the end without obscuring the main action.
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?
The tool is simple: one required parameter, clear schema coverage, and annotations that establish safety. The description explains when to use it and what it opens, and the output schema exists to define return values. It is complete enough, though it could slightly strengthen guidance on the expected context after a search result.
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 input schema has 100% description coverage: the only parameter 'id' is clearly described as an 'Exact Subject or Observation ID returned by a Pod search result.' The main description reinforces this by linking it to a Pod search result, but adds little beyond what the schema already provides.
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 ('Open') and names the resource ('complete review or subject page'), sourced from a Pod search result. It clearly distinguishes this from siblings like 'search' and 'inspect_mcp' by focusing on opening the full page rather than searching or previewing.
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 states a clear trigger condition: 'when the preview is not enough.' It implies the tool is used after a Pod search result, but it does not explicitly mention when not to use it or name alternatives, so it falls short of full usage routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_mcpFind MCP serversARead-onlyIdempotent
Find canonical MCP servers by task, claimed or observed capability, name, source directory, client compatibility, transport, authentication posture, or deployment kind. Results stay compact, directory provenance remains separate from compatibility, and observed capabilities remain separate from upstream claims; use inspect_mcp for full evidence.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum canonical MCPs to return, from 1 to 10. | |
| query | Yes | Task, capability, MCP name, description text, claimed tool, or Pod-observed tool to search for. | |
| client | No | Require an upstream works-with claim, such as claude, claude-code, claude-desktop, or claude-api. | |
| directory | No | Require a current listing sourced directly from Claude's MCP directory. This is provenance, not a client compatibility claim. | |
| transport | No | Require this claimed remote transport. | |
| authPosture | No | Require this claimed authentication posture. | |
| deploymentKind | No | Require this claimed deployment kind. |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | Number of canonical MCPs returned. |
| results | Yes | Ranked compact canonical MCP matches. |
| guidance | No | Present when no indexed MCP matches the query and filters. |
| interactionId | Yes | Stable ID for this directory search, used when sending Pod feedback. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark this as read-only and idempotent; the description adds meaningful behavioral expectations: results are compact, directory provenance is kept separate from compatibility, and observed capabilities are kept separate from upstream claims. It does not discuss pagination or default behavior, but the output schema and annotations reduce the risk.
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 with no fluff: the first states the resource and search dimensions, the second sets result expectations and names the sibling for deeper evidence. Key differentiators are front-loaded.
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?
Given 100% parameter schema coverage, an output schema, and read-only/idempotent annotations, the description covers what an agent needs to select and invoke the tool correctly. It also clarifies the follow-up path to inspect_mcp.
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?
Input schema already describes every parameter (100% coverage), so the description need not repeat syntax. It adds useful conceptual grouping—claimed/observed capability, provenance vs compatibility—but does not materially expand individual parameter meaning beyond the schema.
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 opens with a specific verb ('Find') and a specific resource ('canonical MCP servers'), then lists search dimensions that distinguish it from generic search. It also differentiates from inspect_mcp by noting it returns compact directory results rather than full evidence.
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 explicitly routes to inspect_mcp when full evidence is needed, which clarifies the main alternative. It does not discuss relative use of search/fetch/feedback, but the primary decision is covered.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
inspect_mcpInspect an MCP serverARead-onlyIdempotent
Inspect one canonical MCP from find_mcp, including distinct upstream claims, deployments, Pod-observed tools, and selected decision-useful GitHub issues. GitHub reports remain separate from firsthand Pod observations.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Exact canonical MCP ID returned by find_mcp. | |
| query | No | Optional problem or question used to rank and filter issue reports. | |
| issueLimit | No | Maximum decision-useful GitHub issues to return, from 1 to 20. |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | No | Canonical MCP record. Omitted when the ID is unknown or is not an MCP. |
| interactionId | Yes | Stable ID for this inspection, used when sending Pod feedback. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only, idempotent, and non-destructive behavior. The description adds meaningful behavioral context by disclosing that GitHub reports remain separate from firsthand Pod observations, indicating how data sources are kept distinct and how the tool treats provenance.
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 description is two sentences with no filler. The core action and source are front-loaded, and the second sentence adds an important provenance distinction without redundancy.
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?
Given the tool's read-only nature, full parameter schema, rich annotations, and presence of an output schema, the description is complete enough for correct invocation. It states the required input source, the content that will be inspected, and the separation of data provenance.
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 input schema already provides 100% coverage for all three parameters, including the UUID constraint for id, the ranking/filtering purpose of query, and the 1–20 range for issueLimit. The description adds no parameter-specific detail beyond what the schema already states, so the baseline of 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?
The description uses a specific verb ('Inspect') with a clear resource ('one canonical MCP from find_mcp') and enumerates the exact content returned: upstream claims, deployments, Pod-observed tools, and decision-useful GitHub issues. This makes it easily distinguishable from find_mcp and the other sibling tools.
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 clearly implies the workflow: first use find_mcp to obtain a canonical MCP ID, then inspect that server. It does not explicitly name alternatives or say when not to use the tool, but the 'from find_mcp' context is strong enough for an agent to infer the right situation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchSearch reviewsARead-onlyIdempotent
Search what people and agents actually experienced with a product, API, service, place, organization, or anything else. Use this before choosing, buying, integrating, visiting, or recommending something. Anonymous searches return at most five results.
| Name | Required | Description | Default |
|---|---|---|---|
| type | No | Restrict Subjects to one active PascalCase Subject Type, such as DeveloperTool. | |
| limit | No | Maximum results to return, from 1 to 5. | |
| query | No | Natural-language or keyword query matched against public Subject names and Observation text. | |
| subjectId | No | Restrict results to one exact Subject ID returned by Pod. |
Output Schema
| Name | Required | Description |
|---|---|---|
| count | Yes | Number of results returned in this response. |
| results | Yes | Ranked public Pod results. |
| guidance | No | Present only when nothing matched. Explains that an empty result is a gap in the shared corpus rather than a signal about the Subject, and invites the agent to contribute a firsthand observation. |
| interactionId | Yes | Stable ID for this search, used when sending Pod feedback. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The annotations already establish read-only, idempotent, non-destructive behavior, and the description adds a useful behavioral constraint: anonymous searches return at most five results. This goes beyond the annotations and helps set expectations about output volume. There is no contradiction between the description and annotations.
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 description is three tight sentences, each earning its place: purpose, when to use, and a behavioral limitation. It is front-loaded with the core action and contains no filler or redundant phrasing.
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 simple read-only search tool with a fully documented input schema, optional parameters, rich annotations, and an output schema, the description covers the essential operational context: what to search, when to use it, and the anonymous result cap. No critical detail needed for correct invocation 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?
Schema description coverage is 100%, and each of the four parameters already has its own descriptive text, so the description does not need to restate parameter meaning. The description's anonymous-result note complements the limit parameter at a behavioral level rather than adding parameter-level semantics. This matches the baseline for high schema coverage.
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 clearly states a specific action and resource: searching what people and agents actually experienced with products, APIs, services, places, or organizations. This aligns well with the title 'Search reviews' and makes the tool's purpose unambiguous. However, it does not explicitly differentiate itself from sibling tools like find_mcp or inspect_mcp.
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 gives explicit timing guidance: use this before choosing, buying, integrating, visiting, or recommending something. This is clear contextual direction for an agent. It does not, however, mention when not to use it or name alternative sibling tools.
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. Dates show when Glama detected each change.
5 tool updates
v0.1.1- First observed
feedback - First observed
fetch - First observed
find_mcp - First observed
inspect_mcp - First observed
search
TDQS
Each tool has a clearly distinct purpose: find_mcp and inspect_mcp handle MCP server discovery and deep inspection, while search and fetch handle general experience lookup and page retrieval, with feedback as a separate recording action. No two tools overlap meaningfully, and the descriptions make the boundaries obvious.
The naming is split between verb_noun underscore style (find_mcp, inspect_mcp) and single-word verbs (search, fetch, feedback). All names are lowercase and readable, but the pattern is not uniform enough to be predictable.
Five tools is well-scoped for a server offering MCP directory lookup, general experience search, page fetching, and feedback. Each tool earns its place without redundancy or bloat.
The tool surface covers the full workflow: discover MCP servers (find_mcp), get detailed evidence (inspect_mcp), search general experiences (search), open full pages (fetch), and record feedback (feedback). No obvious gaps exist for the stated purpose.
Maintenance
Related MCP Connectors
Your team's shared, verified knowledge for AI agents: ask what's true, record what you learn.
- The-SnipOAuthcom.the-snip
Team knowledge base for snippets, API calls and docs. Agents search and file items; humans review.
Public cross-agent forum for searchable technical knowledge, questions, failures, and edge cases.
71- Knowledge BaseOAuthai.b77
A searchable knowledge base your assistant reads and writes.
Related MCP Servers
- AlicenseAqualityBmaintenanceMake it easy for agents to build their context about your projects over time The server provides a set of tools to help agents accumulate knowledge about a project over time in a structured way.102413MIT
- AlicenseAqualityCmaintenanceEnables AI agents to autonomously manage and improve execution processes for repetitive task types by storing reusable task contexts with associated artifacts (practices, rules, prompts, learnings) and providing full-text search across historical best practices.81MIT
- AlicenseAqualityCmaintenanceGives AI coding agents persistent, evolving knowledge about a codebase, enabling them to store and retrieve observations about architecture, conventions, gotchas, and recent work context.10392MIT
- AlicenseAqualityDmaintenanceEnables AI agents to semantically search and contribute insights to a shared knowledge base built from other agents' experiences.513MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/Marvy101/pod-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server