Priya Gautam MCP Server
Click 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., "@Priya Gautam MCP ServerWhat are Priya's technical skills?"
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.
Priya Gautam MCP Server
An MCP (Model Context Protocol) server that exposes Priya Gautam's professional profile through tools, resources, prompts, and Dynamic Context Retrieval (DCR).
Screenshots
MCP Inspector v1.0.0

MCP Inspector v1.0.0

About ME


Related MCP server: personal-context
Source vs compiled code
src/*.ts= editable TypeScript source code.dist/*.js= compiled JavaScript generated from the TypeScript source.distis included in this ZIP so Node/Claude can run the server immediately after dependencies are installed.Do not edit files inside
distmanually. Changesrc/*.tsand runnpm run buildagain.
Requirements
Node.js 20+
npm
Install
npm installVerify TypeScript
npm run checkBuild TypeScript -> JavaScript
npm run buildThis generates:
dist/
├── dcr.js
├── index.js
├── profile.js
└── server.jsRun locally (recommended)
Run the compiled server for local MCP clients (STDIO):
npm startnpm start runs node dist/index.js.
For development (watch mode):
npm run devStart with the MCP Inspector (two terminals)
Open two terminals to run the server and the MCP Inspector.
Terminal 1 — run the server (HTTP mode):
MCP_TRANSPORT=http npm run devTerminal 2 — run the Inspector UI:
npx @modelcontextprotocol/inspectorClaude Desktop configuration
Use the example in claude_desktop_config.example.json and replace the placeholder with the absolute path to this project's dist/index.js:
{
"mcpServers": {
"priya-gautam-mcp": {
"command": "node",
"args": [
"/ABSOLUTE/PATH/TO/MOJO/dist/index.js"
],
"env": {}
}
}
}Do not point node directly at src/index.ts. Node runs the compiled dist/index.js.
Development mode
For development only:
npm run devThis uses tsx watch src/index.ts.
HTTP mode
Run:
MCP_TRANSPORT=http npm run devThe server exposes:
http://localhost:3000/health
http://localhost:3000/mcpThe /health endpoint is for a simple browser check. /mcp is an MCP protocol endpoint and should be tested using an MCP client or MCP Inspector, not by opening it as a normal webpage.
MCP tools
get-profileget-skillsget-projectsget-educationget-experiencelist-sectionssearch-priya-profile— primary DCR toolsearch-profile— backward-compatible aliasexplain-dcr
DCR
search-priya-profile ranks profile sections against the user's question and returns the most relevant context instead of returning the complete profile every time.
Example questions:
What are Priya's technical skills?
Tell me about Priya's WoodenScale experience.
What projects has Priya built?
What is Priya's educational background?
Important
Do not run npm run dev as the Claude Desktop production/local MCP command. Use npm start, which runs the compiled JavaScript entry point.
Available Tools
9 toolsexplain-dcrC
Explain how this server applies Dynamic Context Retrieval to Priya Gautam's profile.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It gives no indication of whether this tool performs side effects, requires prior setup, produces a cached vs. live explanation, or has any cost/rate behaviors. The description is silent on all behavioral characteristics.
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 a single efficient sentence with no wasted words. It's appropriately short for a tool that takes no parameters and performs a conceptually simple 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?
For a zero-parameter tool with no output schema and no annotations, the description must explain what the tool returns or produces. It simply states the action without describing the output format, whether it's textual, and what DCR specifically means in this server context. Compared to sibling tools that are clearly profile-data getters, this one's role is underspecified.
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 zero parameters, so there are no parameters requiring semantic explanation. The baseline of 4 for a zero-param tool applies, and the description doesn't need to add parameter details since none exist.
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 ('Explain how this server applies Dynamic Context Retrieval') but it's unclear what the actual output would be — is this a static explanation, a live trace, or a diagnostic? The verb 'explain' is vague about the deliverable. It references a specific profile (Priya Gautam) which gives some specificity, but the tool's real function remains ambiguous.
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?
No guidance on when to use this tool versus its siblings like search-priya-profile or get-profile. It doesn't clarify whether this is a diagnostic/metadata tool, an education tool, or something to call during reasoning. The context where this would be useful is entirely unstated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-educationB
Get Priya Gautam's education details.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. The description reveals nothing about return format, whether data might be missing/absent, authentication requirements, or any other behavioral characteristics beyond the obvious getter nature.
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 short, clear sentence that communicates the essential purpose with zero wasted words. This is appropriately sized for a no-parameter tool.
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 zero-parameter getter with siblings, the description is minimally adequate but lacks the distinguishing detail that would help an agent choose it over search-priya-profile or get-profile. It doesn't clarify what specific fields/format the education data takes or any limitations.
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 has zero parameters, and with 100% schema coverage (there is nothing to document), the schema is complete. The baseline of 4 for zero-parameter tools applies—there is no parameter ambiguity to resolve.
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 the verb 'Get' and the resource 'Priya Gautam's education details,' which clearly identifies what the tool returns. However, it does not differentiate from siblings like get-profile or get-experience beyond the obvious resource distinction, which is inherent in the name itself.
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?
There is no guidance on when to use this tool versus alternatives like get-profile, get-skills, or search-priya-profile. The description provides no context about scenarios where education details are sought or how this differs from broader profile retrieval.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-experienceB
Get Priya Gautam's professional experience.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of behavioral disclosure. However, the description is a simple read operation ('Get...') with no parameters, and there are no side effects to disclose. For a zero-parameter getter, there is little behavioral context needed beyond what the verb implies. A moderate score is appropriate since it's a read operation with no caveats needed.
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 a single, short sentence with no wasted words. It hits the essential purpose with minimal overhead. However, it is under-specified relative to its sibling context, slightly conflating conciseness with brevity.
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 zero parameters, no output schema, and no annotations, the description is all there is. For a simple getter, 'Get Priya Gautam's professional experience' covers the essentials, but given the existence of siblings like search-priya-profile and search-profile, the description could clarify what is included/excluded in 'professional experience' versus what skills/projects/education tools cover. There's ambiguity about the scope of the returned content.
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 has 0 parameters and schema description coverage is 100%, so there are no parameters that require documentation. Per the rubric, 0 parameters = baseline 4. The description extracts 'Priya Gautam's' specific experience, which adds the only contextual meaning possible for a parameterless tool.
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 verb 'Get' plus resource 'Priya Gautam's professional experience' clearly states what the tool does. However, among siblings like get-skills, get-projects, and get-education, it's implied that this returns the experience section specifically, but the description does not explicitly differentiate what 'professional experience' encompasses versus what siblings return.
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 provides no guidance on when to use this tool versus alternatives. Among siblings like get-profile, search-priya-profile, and search-profile, there is no indication of when a user should pick get-experience, search tools, or other getters. No when/when-not guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-profileA
Get a compact overview of Priya Gautam's profile, skills, experience, projects, and MCP compatibility.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It discloses the scope of what's returned (profile, skills, experience, projects, MCP compatibility) which is helpful behavioral context. However, it doesn't indicate whether the data is read-only, real-time vs cached, or whether any authentication is needed. 'Compact' hints at truncated output but doesn't specify limits or pagination.
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?
Single sentence, zero wasted words. Front-loads the primary purpose ('Get a compact overview of Priya Gautam's profile') and then enumerates the covered content types. Perfectly concise for a zero-parameter tool.
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 zero-parameter tool with no output schema, the description covers the key aspects: who (Priya Gautam), what kind (compact overview), and what domains (profile, skills, experience, projects, MCP compatibility). The 'compact' qualifier is useful but could benefit from a note about what 'MCP compatibility' means in this context. Given the tool's low complexity, this is largely complete.
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?
There are 0 parameters and 100% schema coverage (the schema is trivially empty). With 0 params, the baseline is 4. The description doesn't need to add parameter semantics since none exist. It correctly describes what the tool does with no inputs.
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?
Clear verb+resource: 'Get a compact overview' of a specific person's profile covering skills, experience, projects, and MCP compatibility. The scope is specific and well-defined. It distinguishes from siblings like get-skills and get-projects by noting it's a 'compact overview' rather than a section-specific fetch.
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 signals this is the broad aggregate view versus the section-specific sibling tools (get-skills, get-projects, etc.). While it doesn't explicitly say 'use this instead of the section tools for a full picture', the 'compact overview' language plus siblings implicitly establishes usage context. Missing explicit when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-projectsA
Get Priya Gautam's major software projects and their technologies.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the disclosure burden. It's a read-only retrieval described as 'Get' which implies safe read behavior, but it doesn't describe what the return format looks like, whether results are ordered, or how many projects are returned. Adequate but minimal for a no-annotation tool.
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 clean, front-loaded sentence. Every word earns its place: the subject (Priya Gautam), the resource (projects), and the detail (with technologies). Zero waste.
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 zero-parameter read tool with no output schema, the description is appropriately complete. It names the resource and its key detail (technologies). Given the simplicity of the tool, little more is needed, though it could note the specific number/scope of projects returned.
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?
There are zero parameters, so there's nothing for the description to add beyond the schema. The baseline for 0 params is 4, and the description correctly requires no inputs. No compensation needed.
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 the verb (Get) and specific resource (Priya Gautam's major software projects and their technologies). It distinguishes from siblings like get-education and get-experience, and the proper noun clarifies whose projects are returned.
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 this is used when you need Priya Gautam's projects, but doesn't explicitly contrast with similar sibling tools like search-priya-profile or search-profile, which could also surface project info. No exclusions or alternative-recommendations provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get-skillsB
Get Priya Gautam's technical skills and technology stack.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It doesn't state whether information is always available, whether it could return empty results, whether the data reflects a specific snapshot, or how comprehensive the skill list is. For a read-only retrieval with zero annotation coverage, this is a thin disclosure.
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, efficient sentence that states the action and target clearly. Zero wasted words, perfectly front-loaded with the verb and resource.
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?
This is a simple 0-parameter retrieval tool with no output schema and no annotations. The description communicates the core purpose but doesn't mention return format, granularity, or potential for empty results. Given the low complexity, the description is adequate but could benefit from noting what the output looks like.
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 there are 0 parameters, so there is nothing for the description to add beyond what the schema already conveys. Per the rubric, 0 params sets a baseline of 4, which is appropriate here since no parameter documentation is needed.
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 the verb ('Get') and resource ('Priya Gautam's technical skills and technology stack'). It distinguishes from siblings by specifying both the content type (skills/tech stack) and subject (Priya Gautam), differentiating it from get-projects, get-education, etc. The only minor gap is not explicitly contrasting against search tools or list-sections.
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?
No guidance on when to use this tool versus alternatives. While sibling tool names imply differentiation (get-projects, get-education), the description doesn't explicitly state when this should be preferred over search-priya-profile or list-sections, nor does it mention any prerequisites or limitations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list-sectionsB
List the profile sections that the DCR engine can retrieve.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, but this is a simple list/read operation with no parameters, so the behavioral burden is low. The description conveys it's a non-mutating enumeration operation. It doesn't describe output format, but with no output schema and a simple listing purpose, the risk window is minimal.
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 single sentence with zero waste. Every word earns its place, and it fully conveys the purpose in minimal text.
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 zero-parameter, no-annotation discovery/enumeration tool, the description is mostly adequate. However, it doesn't mention what the output looks like (list of section names?) or how an agent might use the result (e.g., to decide which section getter to call next), which would strengthen its utility for an agent orchestrating across the sibling tools.
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 has zero parameters (schema coverage 100% trivially), so for a 0-param tool the baseline is 4. No parameter semantics are needed since there are no parameters to describe.
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 the tool lists profile sections retrievable by the DCR engine. The verb 'List' plus the resource 'profile sections' and the scoping 'that the DCR engine can retrieve' is specific. It distinguishes from siblings like get-skills/get-projects which retrieve actual section content, whereas this returns the section list.
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?
No explicit when-to-use or when-not-to-use guidance is provided. There's no mention of how this differs from the sibling tools beyond implicit context. The description implies it's useful for discovering available sections, but doesn't state that explicitly or suggest it as a discovery/preflight step before calling section-specific getters.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search-priya-profileB
Search Priya Gautam's professional profile using Dynamic Context Retrieval (DCR). Use this tool whenever the user asks about Priya Gautam's education, skills, experience, projects, technologies, certifications, achievements, or professional background.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of relevant profile sections to return | |
| query | Yes | The user's question about Priya Gautam |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. The description references DCR (Dynamic Context Retrieval) but doesn't explain what that means behaviorally—rate limits, whether it performs external lookups, latency, or whether it mutates any state. It appears to be a read-only retrieval tool, but nothing states that or describes what gets returned beyond 'relevant profile sections.'
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 a single focused sentence that establishes the purpose and usage trigger, followed by a short list of covered content areas. It is front-loaded and efficient with no wasted words. Could arguably combine more seamlessly, but it's appropriately concise for a tool of this simplicity.
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 retrieval tool with 2 parameters fully documented in the schema, the description covers the essential scope. However, it does not specify return shape or behavior (given no output schema), and the mention of DCR without explanation leaves some ambiguity about expected behavior. Adequate but not rich; a mention of what 'relevant profile sections' maps to (i.e., the list of siblings like get-skills, get-projects) would improve it.
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 both parameters ('query' as the user's question, 'limit' as max relevant sections). The description adds the semantic detail that queries relate to Priya Gautam's background, which maps to the query parameter. However, this is minimal value-add since the schema and tool title already convey this. Baseline 3 is appropriate given full 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 uses a specific verb ('Search') plus a specific resource ('Priya Gautam's professional profile') and enumerates the covered topics (education, skills, experience, projects, technologies). It clearly distinguishes itself from generic search tools by being person-specific. However, it doesn't explicitly differentiate from the sibling 'search-profile' beyond the Priya-specific scope, which is evident from the name itself.
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 when-to-use guidance ('Use this tool whenever the user asks about Priya Gautam's education, skills, experience, projects, technologies, certifications, achievements, or professional background'). It clearly scopes the tool to Priya-specific queries, which implicitly distinguishes it from the generic 'search-profile' sibling. However, it doesn't state when NOT to use it (e.g., it does not mention what other tools handle non-Priya queries), leaving some ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search-profileB
Search Priya Gautam's profile using Dynamic Context Retrieval (DCR). Use it for questions about her education, skills, experience, projects, technologies, certifications, or background.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of sections to return | |
| query | Yes | What the client wants to know about the assistant |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden of disclosure. It mentions using DCR (Dynamic Context Retrieval) which hints at a dynamic/retrieval-based search mechanism, but it doesn't clarify what this means behaviorally—whether results are ranked, how the 'limit' affects scope, what sections get returned, or how this differs from a straightforward get-profile lookup. For a search tool that appears to overlap with several specialized getters, more behavioral detail is needed.
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, front-loads the purpose, and efficiently enumerates covered topics. No wasted words. Could arguably be slightly more complete on behavioral detail, but the current length is appropriate for what it communicates.
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 has no output schema, no annotations, 2 params fully documented, and overlaps significantly with 7 siblings including a near-duplicate search-priya-profile. Given this complexity and overlap, the description should do more to clarify the tool's unique role, return behavior, and relationship to siblings. It's adequate but leaves gaps around how DCR results differ from the getter tools and what the limit parameter actually limits.
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% with both parameters (query, limit) having descriptions. The description adds context about what query should contain ('what the client wants to know') and the mechanics of DCR, but the schema already documents semantics for both parameters. The description doesn't add meaningful detail beyond what the schema provides, so 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?
The description clearly states what the tool does: search Priya Gautam's profile using DCR. It enumerates the covered topics (education, skills, experience, projects, technologies, certifications, background), which is specific and useful. However, it doesn't explicitly distinguish itself from the sibling tool 'search-priya-profile' which seems to serve a nearly identical purpose, and siblings like get-skills/get-projects overlap in topic coverage.
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: 'Use it for questions about her education, skills, experience, projects, technologies, certifications, or background.' This provides clear context for when to use the tool. However, it doesn't explicitly state when NOT to use it or suggest alternatives like get-profile, get-skills, or the near-duplicate search-priya-profile, which could cause an agent to pick the wrong sibling.
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.
9 tool updates
v1.0.0- First observed
explain-dcr - First observed
get-education - First observed
get-experience - First observed
get-profile - First observed
get-projects - First observed
get-skills - First observed
list-sections - First observed
search-priya-profile - First observed
search-profile
TDQS
Scored across 9 tools
There is significant overlap: get-profile, get-skills, get-projects, get-education, and get-experience provide section-specific data, but search-priya-profile and search-profile are near-duplicates both using DCR to search the entire profile. Agents could easily misselect between search-priya-profile and search-profile, and between the individual getters and search tools when a broad query comes in.
Most tools follow a clear get-<section> pattern (get-profile, get-skills, get-projects, get-education, get-experience) and list-sections, but search-priya-profile breaks the pattern by embedding the person's name instead of using a consistent 'search-<target>' prefix like search-profile does. The inconsistency between the two search tool names is the main deviation.
9 tools is a reasonable count for a profile server, but the surface feels padded: search-priya-profile and search-profile appear to be redundant duplicates serving the same purpose, and explain-dcr is more documentation than a functional tool. The effective distinct tool count is closer to 6-7.
The server covers profile sections well (skills, projects, education, experience, plus a compact overview). Minor gaps exist, such as no dedicated tools for certifications or achievements despite those being mentioned in search descriptions, but the search tool can still surface that data.
Maintenance
Related MCP Connectors
Public portfolio MCP for resume, services, availability, project evidence, and introductions.
Live public demo: query one person's learning and work history as a knowledge graph via MCP.
Personal context for AI, written by you and never scraped: your profile and files, any MCP client.
LinkedIn API as MCP tools to retrieve profile data and publish content. Powered by HAPI MCP.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceExposes a person's structured professional profile as MCP tools, enabling Claude and other MCP clients to answer questions about that person based on real data.3 npm1MIT
- AlicenseNot gradedqualityCmaintenanceAggregates your digital footprint (GitHub, blogs, resume) into a single AI-readable profile and exposes it via MCP tools so AI agents can query your context live.1MIT
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol (MCP) server that provides unified access to one's professional profile, including experience, publications, career timeline, and social media presence.1Apache 2.0
- FlicenseAqualityBmaintenanceEnables MCP-compatible AI clients to retrieve a professional profile as callable tools, including projects, work experience, skills, and live GitHub activity.5-