UseMyContext
Server Details
The personal context layer for AI: your profile and files, read by any MCP client over OAuth.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- usemycontext/claude-code-plugin
- GitHub Stars
- 1
- Server Listing
- UseMyContext
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.6/5 across 13 of 13 tools scored.
Several tools have explicit aliases (fetch/get_file, search/search_files) that perform identical functions, creating confusion. Additionally, tools like list_files and search_files have overlapping functionality, though descriptions help differentiate. Overall, the set has notable ambiguity.
Naming is a mix of single verbs (fetch, search, account, info), verb_noun (get_file, list_files, list_profiles, query_table, search_files, shared_context, suggest_update, ask_docs), and nouns (profile). While all use lowercase with underscores, the verb forms are inconsistent (imperative vs. descriptive).
13 tools cover the read-only personal context domain well. Each tool serves a distinct purpose (account, document search, file retrieval, table query, profile, shared context, suggestions), and the count feels well-scoped without excess.
The tool surface provides comprehensive read access to user context: account info, file listing/search/reading, semantic search, exact table queries, profile, and shared contexts. The only minor gap is the lack of a tool to list saved shared context names without prior knowledge, but the design is intentionally read-only.
Available Tools
13 toolsaccountYour plan and usageARead-onlyInspect
Report the user's current plan and usage: their tier (Free or Premium), how many projects and how much storage they are using against their limits, their subscription status if any, and where they manage their plan. Use this when the user asks what plan they are on, how much storage or how many projects they have used, or whether they are near a limit. Metadata only - no files, facts, or profile content. This is READ-ONLY: you cannot change the plan or start a purchase; plan and billing changes are done by the user themselves at usemycontext.ai. Always allowed; read-only.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| tier | Yes | The user's effective plan. |
| usage | Yes | |
| limits | Yes | |
| upgradeUrl | Yes | Where the user manages their plan and billing. |
| currentPeriodEnd | No | The current billing-period end (ms epoch), when known. |
| subscriptionStatus | No | The Stripe subscription status, when the user has a subscription. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already show readOnlyHint=true and destructiveHint=false. Description adds 'READ-ONLY: you cannot change the plan', and explains billing changes happen at usemycontext.ai. Provides valuable behavioral context beyond 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 a single concise paragraph covering purpose, usage, limitations, and read-only nature. It is front-loaded with the main action. Could be slightly more structured with bullet points but is efficient.
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?
No parameters, annotations present, output schema exists (so return values are documented). Description is complete: specifies what is reported, what is excluded, and where to manage plans. Covers all necessary context for an agent.
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?
No parameters (0), so baseline 4 applies. Description does not need to add parameter details as there are none.
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 reports the user's current plan and usage details (tier, projects, storage, limits, subscription, management location). It distinguishes itself from sibling tools by focusing on plan/usage metadata, not files, facts, or profile content.
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?
Explicitly states when to use: when user asks about plan, storage/project usage, or nearing limits. Implicitly excludes file/profile queries via 'Metadata only' and 'read-only'. Does not list alternatives but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ask_docsAsk your documentsARead-onlyInspect
Search the user's connected documents by MEANING and return the most relevant passages (the actual text), each cited with its source file, for you to read and quote. Use this to ANSWER a question from the user's documents - it returns grounded source content, not a file link, not a filename list, and not a pre-written answer (you do the reasoning). Always allowed; read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| k | No | How many passages to return (default 12, max 50). | |
| query | Yes | What to find in the user's documents (a question or topic). | |
| handle | No | Optional: name one of the user's OWN profiles by its public @handle (with or without the leading @), as listed by list_profiles - an alternative to projectId, and it takes precedence if both are given. Honored only for an account-wide connection; a single-project connection is already scoped and ignores it. A handle that is not one of the user's own profiles is refused outright, never quietly swapped for another profile. To read context someone ELSE shared with the user or published, use shared_context instead. | |
| projectId | No | Optional: which of the user's projects to search - a projectId from list_profiles. Honored only for an account-wide connection; a single-project connection is already scoped and ignores this. |
Output Schema
| Name | Required | Description |
|---|---|---|
| passages | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and destructiveHint. The description adds that it returns actual text with citations, the agent does the reasoning, and it is always allowed. This provides useful behavioral transparency beyond the 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 two sentences with no wasted words. The first sentence front-loads the main purpose and output, making it efficient and easy to parse.
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 presence of an output schema, the description adequately covers all essential aspects: semantic search, passage citation, read-only nature, and usage context. It is complete for an agent to use correctly.
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%, so baseline is 3. The description does not add significant meaning beyond what the schema already provides for parameters like query, k, handle, and projectId.
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 searches documents by meaning, returns relevant passages with source citations, and contrasts with other tools like search or search_files by specifying it returns actual text, not file links or pre-written answers.
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 says to use this tool to answer questions from the user's documents, and contrasts what it does not do (file link, filename list, pre-written answer). It also mentions it is always allowed and read-only. However, it does not explicitly differentiate from all sibling tools like shared_context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
fetchFetch a document (deep research)ARead-onlyInspect
Fetch one document's full extracted text by id (a file id from search / search_files / list_files), in the deep-research result shape. ALIAS: this is the SAME read as get_file (same data, same permissions, same audit, same size guard - large files are truncated) - use it when your client requires the id/title/text/url fetch contract (ChatGPT deep research); otherwise prefer get_file, which also serves download links and inline images. Read-only; audited.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | The document id - a file id from search, search_files, or list_files. | |
| handle | No | Optional: name one of the user's OWN profiles by its public @handle (with or without the leading @), as listed by list_profiles - an alternative to projectId, and it takes precedence if both are given. Honored only for an account-wide connection; a single-project connection is already scoped and ignores it. A handle that is not one of the user's own profiles is refused outright, never quietly swapped for another profile. To read context someone ELSE shared with the user or published, use shared_context instead. | |
| projectId | No | Optional: which of the user's projects holds the file. Honored only for an account-wide connection; a single-project connection is already scoped and ignores this. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | The requested file id. |
| url | Yes | Where the user manages this file (the usemycontext.ai Storage page). |
| text | Yes | The file's full extracted text (truncated at the same size guard as get_file). |
| title | Yes | The file's name. |
| metadata | No |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already include readOnlyHint=true and destructiveHint=false. The description adds valuable behavioral context: it states the tool is read-only, audited, and that large files are truncated. It also notes that permissions and audit are the same as get_file, fully leveraging the annotations while adding critical details.
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 well-structured and front-loaded with the core purpose. It is slightly lengthy due to thorough comparisons and edge-case explanations, but every sentence adds value. A perfect 5 would be more succinct while retaining clarity.
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 complexity (3 params, 100% schema coverage, output schema present, and annotations), the description is remarkably complete. It covers the tool's behavior, limitations (truncation), relationship to sibling, and usage context. No gaps remain.
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 baseline is 3. The description adds meaningful nuance beyond the schema: it explains the handle parameter's behavior (honored only for account-wide connections, precedence over projectId) and the conditionality of projectId. This extra context justifies a score of 4.
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 fetches one document's full extracted text by id, specifically for the deep-research result shape. It distinguishes itself from the sibling get_file by noting it is the same read but with a different output contract, making the purpose unambiguous.
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 explicit guidance on when to use this tool vs. the alternative: use fetch when the client requires the id/title/text/url fetch contract (ChatGPT deep research); otherwise prefer get_file. It also notes the alias relationship, giving clear context for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_fileOpen a fileARead-onlyInspect
Get the full text content of one file by id (large files are truncated; use ask_docs for targeted passages). Binary files (images etc.) return a short-lived download link instead. Audited.
| Name | Required | Description | Default |
|---|---|---|---|
| fileId | Yes | The id of the file to fetch. | |
| handle | No | Optional: name one of the user's OWN profiles by its public @handle (with or without the leading @), as listed by list_profiles - an alternative to projectId, and it takes precedence if both are given. Honored only for an account-wide connection; a single-project connection is already scoped and ignores it. A handle that is not one of the user's own profiles is refused outright, never quietly swapped for another profile. To read context someone ELSE shared with the user or published, use shared_context instead. | |
| projectId | No | Optional: which of the user's projects holds the file. Honored only for an account-wide connection; a single-project connection is already scoped and ignores this. |
Output Schema
| Name | Required | Description |
|---|---|---|
| name | Yes | |
| content | No | The file's extracted text. Absent for a binary or image file. |
| truncated | No | True when the text was truncated at the size guard. |
| contentType | Yes | |
| downloadUrl | No | A short-lived download link (valid about 5 minutes). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses truncation for large files, download links for binary files, and auditing. Adds meaningful context beyond annotations (readOnlyHint, destructiveHint), with no contradictions.
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 core purpose, no wasted words. Each sentence adds distinct value.
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?
Covers return types, truncation, binary file handling, and auditing. Given output schema exists and annotations are rich, description is fully complete for this 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 coverage is 100%, so description does not need to add much. It only briefly mentions fileId usage without additional syntax or format details. Adequate but not enriching.
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?
Clearly states the tool gets full text content of a file by ID, distinguishes from sibling 'ask_docs' for targeted passages. Also specifies behavior for binary files and audits.
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?
Explicitly tells when to use (get full content) vs ask_docs (targeted passages), notes truncation for large files, and mentions auditing. Provides clear context for alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
infoAbout UseMyContextARead-onlyInspect
Explain what UseMyContext is, what this connection can and cannot do, and where the user goes to manage their account. Call this when the user asks what UseMyContext is, what you (the AI) can do with this connection, or where to find pricing, plans, billing, teams, or settings. IMPORTANT: this connection is READ-ONLY - you cannot create/rename/delete a profile, change privacy, manage the plan or billing, set up a team, invite teammates, or connect Google Drive/Notion/kDrive; those are done by the user at usemycontext.ai, so point them to the returned links rather than attempting them or telling them to search. Returns static public information only (no user data). Always allowed; read-only.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| docs | Yes | Live links to pricing, docs, and account settings to hand the user. |
| llmsTxt | Yes | The public llms.txt feed for UseMyContext (marketing content, not user data). |
| product | Yes | A one-line description of UseMyContext. |
| capabilities | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=true and destructiveHint=false, and the description reinforces this by listing specific read-only behaviors (cannot create/delete profiles, manage billing, etc.) and stating 'Returns static public information only.' No contradictions.
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 front-loaded with the core purpose, then provides detailed usage guidance and limitations. It is efficient for the complexity, though slightly long due to the list of cannot-dos.
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 zero parameters, rich annotations, and an output schema (implied), the description covers all necessary aspects: what the tool does, when to use it, its limitations, and what it returns. No gaps.
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 schema coverage is 100%, so per guidelines baseline is 4. The description adds value by describing what the tool returns (static public info, no user data) rather than needing to explain parameters.
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 starts with 'Explain what UseMyContext is...' providing a specific verb and resource. It clearly distinguishes this info tool from sibling tools like account or fetch by describing its scope (service overview, capabilities, settings).
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 lists when to call ('user asks what UseMyContext is, what you can do, where to find pricing...') and includes a detailed 'IMPORTANT' section with what the tool cannot do, directing users to external links.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_filesList your filesARead-onlyInspect
List the user's files (metadata only: id, name, size, content-type, modified, status). Each file's status shows its readiness: 'available' means get_file can read it right now, and a just-processed file can take up to about a minute more to become searchable via ask_docs (queueEtaSeconds, when present, estimates the remaining wait). Always allowed.
| Name | Required | Description | Default |
|---|---|---|---|
| handle | No | Optional: name one of the user's OWN profiles by its public @handle (with or without the leading @), as listed by list_profiles - an alternative to projectId, and it takes precedence if both are given. Honored only for an account-wide connection; a single-project connection is already scoped and ignores it. A handle that is not one of the user's own profiles is refused outright, never quietly swapped for another profile. To read context someone ELSE shared with the user or published, use shared_context instead. | |
| projectId | No | Optional: which of the user's projects to list files from - a projectId from list_profiles. Honored only for an account-wide connection; a single-project connection is already scoped and ignores this. |
Output Schema
| Name | Required | Description |
|---|---|---|
| files | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds behavioral context beyond readOnlyHint: explains metadata-only listing and status field implications (queueEtaSeconds for ask_docs). No contradiction with 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?
Short, front-loaded, every sentence adds value. No wasted words.
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?
Output schema exists so return values not needed. Covers status field and implications well. Could mention pagination or limits but fine for a list 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 coverage is 100% so parameters are already documented. Description adds no parameter-specific value beyond 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?
Clearly states it lists user's files with metadata only. Differentiates from get_file and search_files by specifying scope and purpose.
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?
States 'Always allowed' and explains status field relevance to ask_docs. Lacks explicit when-not-to-use or alternatives, but context is clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_profilesList your profilesARead-onlyInspect
List the user's own profiles (their projects) so you can tell them what profiles they have. Returns metadata only for each profile: its name, its public @handle, its privacy status (private, shared, network, public, or org), and whether it is the one THIS connection reads by default. Use this when the user asks how many profiles they have, what their profiles are called, or which profile you are connected to. No file content, no facts, no compiled context - just the list. Always allowed; read-only.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| profiles | Yes | |
| activeProjectId | Yes | The projectId this connection reads by default (matches the active profile). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds context beyond annotations by stating 'Always allowed; read-only.' and detailing the exact return fields. Annotations already indicate readOnlyHint=true, so no contradiction. The description effectively communicates the tool's safety and non-destructive 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?
The description is concise and well-structured: it opens with the core purpose, lists return fields, provides usage guidance, notes what is excluded, and ends with a safety assurance. Every sentence adds value.
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 has no parameters and an output schema exists, the description covers all necessary context: purpose, return values, usage scenarios, and constraints. It is complete for an agent to understand when and how to use 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?
There are no parameters, so the baseline is 4 per guidelines. The description does not need to add parameter info, and the schema coverage is 100%.
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 that the tool lists the user's own profiles (their projects) and specifies the exact metadata returned (name, handle, privacy status, default connection). It distinguishes from siblings like 'profile' by focusing on listing multiple profiles.
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?
Explicit usage guidance is provided: 'Use this when the user asks how many profiles they have, what their profiles are called, or which profile you are connected to.' It also clarifies what the tool does not do (no file content, no facts, no compiled context).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
profileYour profileARead-onlyInspect
Return the user's compiled personal context - a compact structured summary of who they are, synthesized from their accepted facts. No file content. Always allowed. Also reports the profile's privacy status (private, shared, network, public, or org) so you can describe it correctly.
| Name | Required | Description | Default |
|---|---|---|---|
| handle | No | Optional: name one of the user's OWN profiles by its public @handle (with or without the leading @), as listed by list_profiles - an alternative to projectId, and it takes precedence if both are given. Honored only for an account-wide connection; a single-project connection is already scoped and ignores it. A handle that is not one of the user's own profiles is refused outright, never quietly swapped for another profile. To read context someone ELSE shared with the user or published, use shared_context instead. | |
| projectId | No | Optional: which of the user's profiles (projects) to read - a projectId from list_profiles. Honored only for an account-wide connection; a single-project connection is already scoped and ignores this. |
Output Schema
| Name | Required | Description |
|---|---|---|
| context | Yes | The user's compiled personal context. When no current compilation exists, their raw accepted facts serialized as JSON. |
| privacy | No | A short human-readable explanation of who can read this profile, matching the visibility value. |
| visibility | No | The privacy status of this project's profile. Report it as-is; do not assume a profile is public. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true and destructiveHint=false. The description adds value by stating no file content, that it reports privacy status, and details parameter handling (e.g., handle refused for non-own profiles).
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 but quite dense with information. While every sentence adds value, it could be slightly more concise. However, structure is good with main action first.
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 presence of an output schema, the description doesn't need to detail return values. It covers parameter behavior thoroughly, mentions privacy status, and addresses edge cases like single-project connections. No gaps.
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%, but the description significantly enriches understanding: explains that handle is an alternative to projectId, takes precedence, refused if not user's own, and that both are ignored for single-project connections.
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's purpose: returning the user's compiled personal context synthesized from accepted facts. It distinguishes from sibling tools like shared_context for reading shared context, and mentions no file content.
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?
Explicit guidance: 'Always allowed.' Differentiates when to use handle vs projectId, notes that handle takes precedence and is only for account-wide connections, and directs to shared_context for others' context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
query_tableQuery a table exactlyARead-onlyInspect
Run an EXACT, deterministic query over ONE tabular file (a CSV, or the first table of a spreadsheet/PDF/Word document). Use this instead of ask_docs whenever the question needs COUNTING, SUMMING, AVERAGING, MIN/MAX, FILTERING, or exact row lookups over structured data ('how many rows...', 'total amount by region', 'list orders where status is failed') - semantic search undercounts tables, while this executes over EVERY row and returns exact numbers. Use ask_docs for prose/meaning questions and get_file to read a whole document. The query argument is a JSON object: { select?: [column names to return as raw rows], where?: [{col, op, value}, ...] filters combined with AND - ops eq | neq | contains compare text case-insensitively, gt | gte | lt | lte compare numerically (rows whose cell is not a number are skipped and counted in skippedNonNumeric), groupBy?: 'column' gives one result row per distinct value, aggregates?: [{fn, col}] with fn count | sum | avg | min | max ('col' required except for count), limit?: max raw rows (default 50, max 200) }. Column names match the file's header row case-insensitively. Examples: {"where":[{"col":"status","op":"eq","value":"failed"}],"aggregates":[{"fn":"count"}]} counts failed rows; {"groupBy":"region","aggregates":[{"fn":"sum","col":"amount"}]} totals amount per region; {"select":["name","email"],"where":[{"col":"country","op":"eq","value":"FR"}]} returns the matching rows. If you name a column that does not exist, the error lists the file's real columns - retry with one of those. Read-only; always allowed.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | The constrained query object (grammar in the tool description): select?, where?, groupBy?, aggregates?, limit?. | |
| fileId | Yes | The id of the file to query (from list_files / search_files - the same id get_file takes). | |
| handle | No | Optional: name one of the user's OWN profiles by its public @handle (with or without the leading @), as listed by list_profiles - an alternative to projectId, and it takes precedence if both are given. Honored only for an account-wide connection; a single-project connection is already scoped and ignores it. A handle that is not one of the user's own profiles is refused outright, never quietly swapped for another profile. To read context someone ELSE shared with the user or published, use shared_context instead. | |
| projectId | No | Optional: which of the user's projects holds the file. Honored only for an account-wide connection; a single-project connection is already scoped and ignores this. |
Output Schema
| Name | Required | Description |
|---|---|---|
| rows | No | Raw matching rows (select mode). Either rows or groups is present, never both. |
| groups | No | Aggregate rows (aggregate / groupBy mode). |
| columns | Yes | |
| truncated | Yes | True when rows/groups were clipped by a cap. |
| tableSource | Yes | Whether the rows came from a native CSV parse or an extracted document table. |
| rowCountTotal | Yes | Total data rows in the table. |
| rowCountMatched | Yes | Rows that passed the where filter. |
| skippedNonNumeric | No | Cells skipped as non-numeric during a numeric comparison or aggregate (present only when > 0). |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, and the description confirms 'Read-only; always allowed.' Adds crucial behavior details: exact row execution, handling of non-numeric cells for numeric ops (skippedNonNumeric counted), and error response listing real columns.
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?
Every sentence earns its place: purpose, guidelines, parameter details, examples, error handling, and read-only assurance. Front-loaded with the main action and key constraint. No fluff.
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 complexity (4 params, nested query object) and presence of output schema, the description is fully adequate: covers usage scenarios, parameter semantics with examples, error recovery, and behavioral traits. Leaves no significant 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 coverage is 100%, but the description adds extensive meaning beyond schema by fully documenting the query grammar, providing multiple JSON examples, and explaining how column names match case-insensitively. The description compensates for the nested schema complexity.
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 specifies a clear verb ('Run an EXACT, deterministic query'), a specific resource ('ONE tabular file'), and distinguishes itself from siblings like ask_docs and get_file by stating what it does differently (exact vs semantic, tabular vs prose).
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?
Explicitly tells when to use this tool (counting, summing, averaging, filtering, exact lookups) and when to use alternatives (ask_docs for prose, get_file for whole document). Includes examples of questions that warrant its use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
searchSearch (deep research)ARead-onlyInspect
Search the user's files by filename and return matching documents in the deep-research result shape. ALIAS: this is the SAME search as search_files (same data, same permissions) - use it when your client requires the id/title/url search contract (ChatGPT deep research); otherwise prefer search_files for richer file metadata. Each result's id can be passed to fetch (or get_file) to read that document. Read-only; always allowed.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Filename query to match. | |
| handle | No | Optional: name one of the user's OWN profiles by its public @handle (with or without the leading @), as listed by list_profiles - an alternative to projectId, and it takes precedence if both are given. Honored only for an account-wide connection; a single-project connection is already scoped and ignores it. A handle that is not one of the user's own profiles is refused outright, never quietly swapped for another profile. To read context someone ELSE shared with the user or published, use shared_context instead. | |
| projectId | No | Optional: which of the user's projects to search - a projectId from list_profiles. Honored only for an account-wide connection; a single-project connection is already scoped and ignores this. |
Output Schema
| Name | Required | Description |
|---|---|---|
| results | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnlyHint true), the description adds behavioral context: same data/permissions as search_files, the specific result shape, and 'Read-only; always allowed.' No contradictions; it enriches transparency.
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 concise despite containing multiple pieces of critical information. It front-loads the primary function, then covers alias, usage guidance, and result usage in a logical flow with no superfluous words.
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 description covers alias relationship, permission model, result shape, parameter nuances, and post-search actions. Given the presence of an output schema, it fully equips the agent to select and invoke the tool correctly.
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 descriptions cover 100% of parameters, so baseline is 3. The description adds value beyond schema by explaining that handle and projectId are honored only for account-wide connections, and handle takes precedence over projectId. This enriches semantic understanding.
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 searches files by filename and returns results in a 'deep-research result shape'. It distinguishes from sibling search_files by noting they are the same search but with different output contracts, making the purpose specific and unambiguous.
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?
Explicitly advises when to use this tool vs search_files: use when client requires the 'id/title/url search contract (ChatGPT deep research)', otherwise prefer search_files for richer metadata. Also explains how result ids can be used with fetch/get_file, providing clear usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_filesSearch your filesARead-onlyInspect
Search the user's files by filename. Returns matching file metadata (including each file's processing status), ranked by name match. Always allowed.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Filename query to match. | |
| handle | No | Optional: name one of the user's OWN profiles by its public @handle (with or without the leading @), as listed by list_profiles - an alternative to projectId, and it takes precedence if both are given. Honored only for an account-wide connection; a single-project connection is already scoped and ignores it. A handle that is not one of the user's own profiles is refused outright, never quietly swapped for another profile. To read context someone ELSE shared with the user or published, use shared_context instead. | |
| projectId | No | Optional: which of the user's projects to search - a projectId from list_profiles. Honored only for an account-wide connection; a single-project connection is already scoped and ignores this. |
Output Schema
| Name | Required | Description |
|---|---|---|
| files | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint, openWorldHint, destructiveHint. The description adds behavioral details: returns processing status, ranking by name match, and always-allowed access. No contradictions.
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 core action and resource, and a second sentence adding output and access context. No wasted words.
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 an output schema (implied), the description covers input, behavior, and access. It lacks details on pagination, sorting, or error handling, but is sufficient for a straightforward search 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?
With 100% schema coverage, the description adds little beyond mentioning 'by filename,' which maps to the query parameter. The parameter descriptions in the schema are already detailed, so the description does not significantly enhance 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?
The description clearly states the tool searches user files by filename, returns metadata with processing status ranked by name match. This distinguishes it from sibling tools like list_files (list all) and search (general search), providing specific verb and resource.
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 says 'Always allowed,' addressing authorization, but lacks guidance on when to use this tool over alternatives like search or list_files. However, the filename-scoped purpose is clear enough for typical use.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
suggest_updateSuggest a profile updateAInspect
Suggest an update to the user's saved context (something you learned about them). It is saved as a PENDING suggestion for the user to review and accept or ignore - it does NOT directly change their profile, and nothing is ever written to their files.
| Name | Required | Description | Default |
|---|---|---|---|
| handle | No | Optional: name one of the user's OWN profiles by its public @handle (with or without the leading @), as listed by list_profiles - an alternative to projectId, and it takes precedence if both are given. Honored only for an account-wide connection; a single-project connection is already scoped and ignores it. A handle that is not one of the user's own profiles is refused outright, never quietly swapped for another profile. To read context someone ELSE shared with the user or published, use shared_context instead. | |
| projectId | No | Which of the user's profiles the suggestion belongs to - a projectId from list_profiles. Optional: on an account-wide connection, omitting it files the suggestion into the user's active profile (the result names it); pass a projectId to target a different profile. A single-project connection is already scoped and ignores this. | |
| suggestion | Yes | The proposed fact or update about the user, in one short sentence. |
Output Schema
| Name | Required | Description |
|---|---|---|
| id | Yes | The pending suggestion's id. |
| status | Yes | Always pending: the suggestion awaits the user's review. |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description transparently discloses that the suggestion is pending, does not directly change the profile, and nothing is written to files. This adds significant behavioral context beyond the annotations which only indicate non-read-only and non-destructive.
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 concise with two front-loaded sentences: first stating the action, second explaining the behavioral implication. Every sentence adds value 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 existence of an output schema and the tool's complexity, the description adequately covers the nature of the suggestion and its scoping via handle/projectId. It could be slightly enhanced by mentioning how the user reviews the suggestion.
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% coverage with detailed parameter descriptions. The main description does not add additional semantic value beyond the schema, earning a baseline score of 3.
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 suggests an update to user context, and distinguishes it from direct modifications by noting it saves as a pending suggestion. However, it does not explicitly differentiate from sibling tools like 'profile' or 'shared_context'.
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 context that the suggestion is pending and not directly applied, but it lacks explicit guidance on when to use this tool over alternatives like 'profile' for direct updates or 'shared_context' for reading others' context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- AlicenseAqualityDmaintenanceProvides persistent personal context (identity, projects, decisions, knowledge) to MCP-compatible AI tools, eliminating the need to re-explain yourself across sessions.2451MIT
- AlicenseAqualityBmaintenanceStores personal context as markdown files and exposes them via MCP for AI assistants to retrieve user preferences, skills, and background.61MIT
- Flicense-qualityDmaintenanceA local MCP server that maintains and serves personal identity context to LLMs.
- Alicense-qualityBmaintenanceSelf-hosted personal context layer that gives AI agents shared memory via MCP.MIT
Your Connectors
Sign in to create a connector for this server.