Pylon MCP Server
Click on "Install 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., "@Pylon MCP Servershow me all unresolved issues"
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.
Pylon MCP Server
An MCP (Model Context Protocol) server for integrating with the Pylon API.
Features
This MCP server provides 38 tools for comprehensive Pylon API integration:
User Management: Get current user, list and search team members
Contacts: List, search, and create contacts
Issues: Full CRUD, search, filter, snooze, and delete issues
Tags: Get, create, add, and remove tags on issues
External Issue Linking: Link/unlink Linear, Jira, GitHub, Asana issues
Issue Followers: Get, add, and remove followers on issues
Similar Issues: Find similar issues by requestor, account, or globally
Knowledge Base: List knowledge bases and create articles
Teams: List, get details, and create teams
Accounts: List and get account details
Attachments: Get metadata and create from URL
Ticket Forms: List available submission forms
Smart Caching: Automatic caching of GET requests with configurable TTL
Retry Logic: Exponential backoff for transient failures (429, 5xx, timeouts)
Related MCP server: MCP Help Scout
Setup
Environment Variables
Set the following environment variables:
PYLON_API_TOKEN: Your Pylon API token (required)PYLON_CACHE_TTL: Cache time-to-live in milliseconds (optional, default: 30000)Set to
0to disable cachingExample:
PYLON_CACHE_TTL=60000for 60-second cache
PYLON_RETRY_MAX: Maximum retry attempts for transient failures (optional, default: 3)Set to
0to disable retriesRetries on: 429 (rate limit), 5xx (server error), network timeouts
Only retries idempotent requests (GET, HEAD, OPTIONS, PUT, DELETE)
Uses exponential backoff with jitter
Respects
Retry-Afterheader (capped at 30 seconds)
PYLON_DEBUG: Set totrueto enable debug logging (optional)Logs request/response details and retry attempts to stderr
HTTP Request Timeout
All Pylon API requests have a 30-second timeout to prevent indefinite hanging. If a request takes longer than 30 seconds, it will fail with a timeout error. This helps identify:
Slow API responses
Network connectivity issues
API performance problems
If you encounter timeout errors, check:
Your network connection
Pylon API status
Whether the operation is legitimately slow (e.g., large data queries)
Retry Behavior
The client automatically retries transient API failures with exponential backoff:
Retried errors: HTTP 429 (rate limit), 5xx (server errors), network timeouts
Not retried: 4xx client errors (400, 401, 403, 404, 422), POST/PATCH requests
Backoff:
min(1000ms × 2^attempt + random jitter, 30s), respectsRetry-AfterheaderDefault: 3 retry attempts. Set
PYLON_RETRY_MAX=0to disable.
Caching Behavior
The server implements intelligent caching to reduce API calls:
Cached Operations: All GET requests (users, contacts, issues, teams, etc.)
Not Cached: POST, PATCH, DELETE operations (creates, updates, deletes)
Default TTL: 30 seconds
Cache Key: Based on endpoint URL and query parameters
Benefits: Reduces API rate limit usage, improves response times for repeated queries
Installation
Option 1: Install from npm (public)
This package is published publicly to npm:
# Run with npx (no auth required)
npx @customer-support-success/pylon-mcp-server
# Or install globally
npm install -g @customer-support-success/pylon-mcp-serverOption 2: Local Development
npm install
npm run buildPublishing Updates (for maintainers)
Preferred: tag and let GitHub Actions publish via npm Trusted Publishing (OIDC)
# Update version in package.json, then tag
git tag vX.Y.Z && git push origin vX.Y.ZCI (.github/workflows/release.yml) will build/test and publish to npmjs with --provenance via trusted publisher.
Manual (maintainers only, if ever needed):
npm run build
npm publish --access publicDevelopment
npm run devTesting
This project includes comprehensive unit tests for all functionality:
# Run tests once
npm test
# Run tests in watch mode
npm run test:watch
# Run tests with UI
npm run test:ui
# Run tests with coverage report
npm run test:coverageTest Coverage:
✅ Attachment API (create from URL, file upload)
✅ User Management (get user, search users)
✅ Issue Management (get, create, update, filter, delete)
✅ Contact Management (get, search, create)
✅ Message Management (get messages with attachments)
✅ External Issue Linking (link/unlink Linear, Jira, GitHub, Asana)
✅ Issue Followers (get, add, remove followers)
✅ Error Handling (404, network errors)
Available Tools
User Tools
pylon_get_me: Get current user informationpylon_get_users: Get all team members and support agentspylon_search_users: Search for team members by name, email, or department
Contact Tools
pylon_get_contacts: List contacts with optional search and limitpylon_search_contacts: Search for contacts by name, email, or companypylon_create_contact: Create a new contact
Issue Tools
pylon_get_issues: List issues within a time range (uses start_time/end_time parameters)pylon_search_issues: Search and filter issues by state, tags, assignee, account, and morepylon_search_issues_by_status: Search by status name (handles custom status mapping automatically)pylon_create_issue: Create a new issuepylon_get_issue: Get details of a specific issuepylon_get_issue_with_messages: Get a complete issue with all messages in one callpylon_get_issue_messages: Get conversation history for an issuepylon_update_issue: Update issue status, priority, assignee, or replace all tagspylon_add_tags: Incrementally add tags to an issue (preserves existing tags, deduplicates)pylon_remove_tags: Incrementally remove specific tags from an issue (leaves other tags intact)pylon_snooze_issue: Temporarily hide an issue until a future datepylon_delete_issue: Permanently delete an issue (⚠️ destructive operation)
External Issue Linking Tools
pylon_link_external_issue: Link an external issue (Linear, Jira, GitHub, Asana) to a Pylon issuepylon_unlink_external_issue: Unlink an external issue from a Pylon issue
Issue Followers Tools
pylon_get_issue_followers: Get the list of followers for an issuepylon_add_issue_followers: Add users and/or contacts as followers to an issuepylon_remove_issue_followers: Remove followers from an issue
Searching by Custom Status
Pylon represents custom statuses (like "Waiting on Eng Input") as a combination of state and tag. We provide two ways to search by status:
Option 1: Use pylon_search_issues_by_status (Recommended)
This tool automatically maps status names to the correct state + tag combination:
# Just use the status name directly:
pylon_search_issues_by_status with status: "Waiting on Eng Input"
# Built-in mappings include:
- "Waiting on Eng Input" → state: on_hold + tag: waiting on eng
- "Waiting on Product" → state: on_hold + tag: waiting on product
- "Escalated" → state: on_hold + tag: escalated
- "In Progress" → state: waiting_on_you + tag: in progress
- "Blocked" → state: on_hold + tag: blockedOption 2: Use pylon_search_issues with explicit state + tag
# Manually specify the combination:
pylon_search_issues with:
- state: "on_hold"
- tag: "waiting on eng"Available Built-in States:
new- New/unread issueswaiting_on_you- Waiting for your responsewaiting_on_customer- Waiting for customer responseon_hold- On hold (often used with custom status tags)closed- Closed/resolved issues
Note: The Pylon API does not support creating messages programmatically. Messages can only be created through the Pylon web UI or original channels (Slack, email, etc.).
Similar Issues Tools
pylon_find_similar_issues_for_requestor: Find similar issues from the same contactpylon_find_similar_issues_for_account: Find similar issues from the same account/companypylon_find_similar_issues_global: Find similar issues across all users and companies
Knowledge Base Tools
pylon_get_knowledge_bases: List all knowledge basespylon_create_knowledge_base_article: Create a new article in a knowledge base
Team Tools
pylon_get_teams: List all support teamspylon_get_team: Get details of a specific teampylon_create_team: Create a new support team
Account Tools
pylon_get_accounts: List all customer accountspylon_get_account: Get details of a specific account
Tag Tools
pylon_get_tags: Get all available tagspylon_create_tag: Create a new tag
Ticket Form Tools
pylon_get_ticket_forms: Get all ticket submission forms
Attachment Tools
pylon_get_attachment: Get attachment metadata (includes a downloadable URL)pylon_create_attachment_from_url: Create an attachment from a URL
Tip: You usually get
attachment_idfrom a message’sattachments[]returned bypylon_get_issue_messagesorpylon_get_issue_with_messages. To download the actual file, fetch the returnedurl(signed URLs may expire).
Usage Examples
Running with Augment Code
Augment Code supports MCP servers through its Easy MCP feature in VS Code and JetBrains IDEs.
Setup in Augment Code (VS Code or JetBrains)
Open Augment Settings:
In VS Code: Open the Augment Code extension settings
In JetBrains: Navigate to Augment settings
Navigate to Easy MCP:
Find the "Easy MCP" pane in the settings
Click the "+" button to add a new MCP server
Configure the Server:
Using npx from npmjs (Recommended)
Add this configuration:
{ "pylon": { "command": "npx", "args": ["@customer-support-success/pylon-mcp-server"], "env": { "PYLON_API_TOKEN": "your_pylon_api_token_here", "PYLON_CACHE_TTL": "30000", "PYLON_RETRY_MAX": "3" } } }Note:
PYLON_RETRY_MAXis optional and defaults to 3. Set to0to disable retries.PYLON_CACHE_TTLis optional and defaults to 30000ms (30 seconds). Set to0to disable caching.Option B: Using local installation
If you've cloned this repository locally:
{ "pylon": { "command": "node", "args": ["/absolute/path/to/pylon-mcp-server/dist/index.js"], "env": { "PYLON_API_TOKEN": "your_pylon_api_token_here", "PYLON_CACHE_TTL": "30000", "PYLON_RETRY_MAX": "3" } } }Get Your Pylon API Token:
Log into your Pylon dashboard
Navigate to Settings → API
Generate or copy your API token
Replace
your_pylon_api_token_herewith your actual token
Test the Integration:
Once configured, you can ask Augment to use Pylon tools:
"Check my Pylon user info" "Show me recent support issues" "Search for a contact by email" "Create a new support ticket"
Running Locally with Claude Desktop
Setup Environment:
# Clone and install git clone <your-repo-url> cd pylon-mcp-server npm install npm run build # Set up environment variables cp .env.example .env # Edit .env and add your PYLON_API_TOKENConfigure Claude Desktop:
Add this to your Claude Desktop MCP settings (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
Using npx from npmjs (Recommended)
{
"mcpServers": {
"pylon": {
"command": "npx",
"args": ["@customer-support-success/pylon-mcp-server"],
"env": {
"PYLON_API_TOKEN": "your_pylon_api_token_here",
"PYLON_CACHE_TTL": "30000",
"PYLON_RETRY_MAX": "3"
}
}
}
}Option B: Using local installation
{
"mcpServers": {
"pylon": {
"command": "node",
"args": ["/path/to/pylon-mcp-server/dist/index.js"],
"env": {
"PYLON_API_TOKEN": "your_pylon_api_token_here",
"PYLON_CACHE_TTL": "30000",
"PYLON_RETRY_MAX": "3"
}
}
}
}Test the Connection:
Restart Claude Desktop and try these commands in a conversation:
Use the pylon_get_me tool to check my Pylon user info
Use pylon_get_issues to show recent support tickets
Search for contacts with pylon_search_contacts using "customer@example.com"Example Tool Usage
Once connected, you can use the available tools:
# User Management
"Get my user info" → uses pylon_get_me
"Search for users named John" → uses pylon_search_users
# Issue Management
"Show all open issues" → uses pylon_get_issues
"Create a new bug report" → uses pylon_create_issue
"Get issue #123 with all messages" → uses pylon_get_issue_with_messages
"Update issue status to resolved" → uses pylon_update_issue
# Similar Issues
"Find similar issues from this customer" → uses pylon_find_similar_issues_for_requestor
"Check if this account has had similar problems" → uses pylon_find_similar_issues_for_account
# Tags
"Show all available tags" → uses pylon_get_tags
"Add a tag to this issue" → uses pylon_add_tags
# External Linking
"Link this Linear ticket to the Pylon issue" → uses pylon_link_external_issue
# Issue Followers
"Add me as a follower on this issue" → uses pylon_add_issue_followers
# Attachments
"Create attachment from URL" → uses pylon_create_attachment_from_url
# Knowledge Base
"List all knowledge bases" → uses pylon_get_knowledge_bases
"Create a new help article" → uses pylon_create_knowledge_base_article
# Ticket Forms
"Show available ticket forms" → uses pylon_get_ticket_forms
# Team & Account Management
"Show all teams" → uses pylon_get_teams
"Get account details" → uses pylon_get_accountsAPI Reference
For more information about the Pylon API, visit the API reference.
Available Tools
38 toolspylon_add_issue_followersA
Add team members (user_ids) or customers (contact_ids) as followers to a Pylon issue.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_id | Yes | Pylon issue ID | |
| user_ids | No | Array of team member user IDs to add as followers | |
| contact_ids | No | Array of customer contact IDs to add as followers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It states it adds followers (a mutation) but does not disclose side effects, idempotency, permissions, or error conditions. For a mutation tool, more transparency 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?
Single sentence with no fluff. Front-loaded with the action and parameters. Every word is necessary.
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 action tool, the description covers main purpose and parameter roles. No output schema needed. Could mention that it modifies the issue's followers list, but not essential.
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 clarifies that user_ids are for team members and contact_ids for customers, but the schema already includes those descriptions. No additional semantic value beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the action: add team members or customers as followers to a Pylon issue. It uses specific verbs and resources, distinguishing it from siblings like pylon_remove_issue_followers and pylon_get_issue_followers.
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 context (adding followers) and differentiates from siblings by naming the two types of followers. However, it lacks explicit guidance on when not to use or alternatives beyond sibling tool names.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_add_tagsA
Add tags to a Pylon issue without removing existing tags. To replace all tags, use pylon_update_issue; to remove tags, use pylon_remove_tags.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_id | Yes | Pylon issue ID | |
| tags | Yes | Tags to add (duplicates ignored) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, but the description discloses the key non-destructive behavior and notes duplicate handling. Could mention idempotency or response details, but sufficient for a simple additive operation.
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 concise sentences front-loading purpose and key behavior, followed by alternatives. 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?
For a tool with 2 parameters and no output schema, the description covers purpose, usage context, and parameter behavior adequately. Could add return type, but not a major 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 already covers 100% of parameters, but the description adds context about existing tags being preserved and duplicates ignored, which is not in the parameter descriptions.
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 it adds tags to a Pylon issue without removing existing ones, distinguishing it from pylon_update_issue and pylon_remove_tags.
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 says to use this tool for adding without removal, and references sibling tools for replacing or removing tags.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_create_attachment_from_urlC
Create a Pylon attachment by downloading a file from a public URL.
| Name | Required | Description | Default |
|---|---|---|---|
| file_url | Yes | Publicly accessible URL of the file to attach | |
| description | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of disclosing behavioral traits. It fails to mention side effects (e.g., does the download happen synchronously? Are there size limits?), authentication requirements, or the resulting state of the attachment. The description only restates the action without deeper 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 a single, efficient sentence that conveys the core action without unnecessary words. It is front-loaded with the verb and resource, making it easy to parse quickly.
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 absence of an output schema, the description does not explain the return value (e.g., attachment ID, status). It also lacks context about how the attachment relates to other entities (like issues or accounts). For a simple creation tool, more detail would help the agent understand the full outcome and requirements.
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 schema coverage is 50% (description parameter lacks a description), and the tool description adds no additional meaning beyond what is in the schema. The 'file_url' parameter is already described as a public URL; the 'description' parameter remains ambiguous in purpose, and the tool description does not clarify it.
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 'Create', the resource 'Pylon attachment', and the method 'downloading a file from a public URL'. This distinguishes it from sibling tools like pylon_get_attachment (read) and other creation tools that focus on different entities (issues, contacts, etc.).
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, nor does it mention any prerequisites or contexts. For example, it does not explain that the file must be publicly accessible without authentication, or that this attachment might need to be associated with a specific issue or account.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_create_contactC
Create a new customer contact in Pylon. Use carefully.
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | |||
| name | Yes | ||
| portal_role | No | Role in customer portal: "admin", "member", or "viewer" |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Without annotations, the description bears full responsibility for behavioral disclosure. 'Use carefully' hints at potential impact but fails to explain what behaviors or side effects the agent should be aware of, such as permissions, duplicate handling, or notifications.
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 minimal and front-loaded, but the second sentence ('Use carefully') adds little value. It is concise but sacrifices necessary detail.
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 lack of annotations and output schema, the description is insufficiently complete. It omits return values, side effects, and validation rules, leaving the agent with significant uncertainty about the tool's behavior.
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 only 33% (only portal_role has a description). The tool description does not elaborate on email or name, leaving the agent without guidance on format, uniqueness, or intended structure beyond the schema's type constraints.
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 'Create a new customer contact in Pylon' with a specific verb and resource, distinguishing it from contact retrieval/search tools like pylon_get_contacts and pylon_search_contacts.
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 admonition 'Use carefully' is too vague and provides no context on when to use this tool instead of alternatives like pylon_get_contacts or pylon_search_contacts, nor does it mention prerequisites or restrictions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_create_issueC
Create a new support issue/ticket in Pylon.
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | ||
| description | Yes | ||
| status | Yes | "open", "in_progress", "pending", "resolved", or "closed" | |
| priority | Yes | "low", "medium", "high", or "urgent" | |
| assignee | No | Team member email or user ID to assign (optional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations present, the description carries full burden for behavioral disclosure. It only indicates a write/mutation operation ('create') but omits details on side effects, authentication requirements, rate limits, idempotency, or what happens on duplicate attempts.
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, clear sentence with no unnecessary words. However, it could be slightly more informative without sacrificing conciseness, such as mentioning the output or required parameters.
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 lacks information about return values (e.g., does it return the created issue?), error conditions, or behavior when required fields are missing. Given the complexity of 5 parameters and no output schema, more detail is needed for complete understanding.
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 'status', 'priority', and 'assignee' (60% of parameters), but 'title' and 'description' lack any schema description. The tool description adds no additional meaning for these parameters, failing to clarify expected input format or constraints.
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 action ('Create') and the resource ('support issue/ticket in Pylon'), effectively distinguishing it from sibling tools like pylon_update_issue or pylon_get_issue. The verb-resource combination is 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?
The description provides no guidance on when to use this tool versus alternatives such as pylon_create_contact or pylon_update_issue. It does not mention prerequisites, context for creation, or when to choose other tools for related tasks.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_create_knowledge_base_articleB
Create a new help article in a knowledge base.
| Name | Required | Description | Default |
|---|---|---|---|
| knowledge_base_id | Yes | ID of the knowledge base | |
| title | Yes | ||
| body_html | Yes | Article content in HTML format | |
| author_user_id | No | User ID to attribute as author; defaults to authenticated user | |
| collection_id | No | ID of the collection to place the article in | |
| is_published | No | ||
| is_unlisted | No | ||
| slug | No | Custom URL slug; defaults to slug based on title |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must disclose behavioral traits. It only says 'Create', implying a write operation, but omits details like idempotency, permissions, or side effects.
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, directly to the point, no extraneous or redundant phrasing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimal for an 8-parameter tool with no output schema. It does not explain return values, effects, or relationships with 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?
Schema coverage is 63%, but the description adds no information about undocumented parameters (title, is_published, is_unlisted). It relies entirely on the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Create'), the resource ('help article'), and the location ('in a knowledge base'). This distinguishes it from other create tools like pylon_create_issue or pylon_create_contact.
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. It does not mention prerequisites, exclusions, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_create_tagB
Create a new tag for categorizing issues and contacts.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| color | No | Tag color in hex or color name (e.g., "#FF0000" or "red") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits (e.g., idempotency, duplicate behavior, return value). It only says 'create a new tag', which implies mutation but fails to address potential side effects or constraints.
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, no wasted words, directly addresses the core 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 simple tool with no output schema, the description covers basic purpose but lacks details on behavior (e.g., duplicate names) and return value. Adequate but could be more 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?
Schema coverage is only 50% (color has a description, name does not). The description adds no parameter information beyond the schema, leaving the required 'name' parameter undocumented.
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 'create', the resource 'tag', and the purpose 'for categorizing issues and contacts'. It distinguishes the tool from siblings as the only create-tag operation.
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 vs alternatives, no mention of prerequisites (e.g., duplicate handling, permissions), and no context on when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_create_teamC
Create a new support team in Pylon.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | ||
| description | No | ||
| members | No | Array of user IDs or emails of team members |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations and the description does not disclose behavioral traits such as duplicate handling, permissions, or side effects beyond creation.
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 is concise but omits essential details, borderline under-specification.
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 output schema, no annotations, and the description does not explain return values, error conditions, or how to confirm creation.
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?
Only 33% schema coverage; description adds no meaning for 'name' and 'description', and 'members' is partially described. Lacks format requirements or limitations.
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 action (create) and specific resource (support team), and is distinct from sibling tools that deal with issues, contacts, tags, etc.
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, no prerequisites or context about team creation rules.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_delete_issueA
⚠️ Permanently delete a Pylon issue. This cannot be undone. Verify the correct issue ID before proceeding.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_id | Yes | Pylon issue ID to permanently delete |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It correctly notes irreversibility ('cannot be undone') and the destructive nature, but omits details like required permissions or side effects on related data.
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 concise sentences with a prominent warning emoji. Front-loaded with critical information and no unnecessary 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?
For a simple delete tool with one parameter and no output schema, the description covers the essential purpose, irreversibility, and a caution. Missing details like error behavior or permissions are minor given the tool's simplicity.
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 only parameter, 'issue_id', has a clear description in the schema ('Pylon issue ID to permanently delete'). The description adds no extra semantic value beyond stating the action, so the baseline score of 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 the action ('permanently delete') and the resource ('a Pylon issue'). The verb 'delete' distinguishes it from sibling tools like 'pylon_update_issue' or 'pylon_snooze_issue'.
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 warns to 'verify the correct issue ID before proceeding' but does not explicitly state when to use this tool versus alternatives (e.g., when to use update instead). It implies cautious usage but lacks explicit guidance on context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_find_similar_issues_for_accountB
Find issues from the same company/account to identify company-wide problems.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_id | Yes | Pylon issue ID | |
| query | No | Optional search terms; defaults to source issue title | |
| limit | No | Max results to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden for behavioral disclosure. However, it only states 'find issues' without mentioning read-only nature, destructive potential, rate limits, or return behavior. This is a significant gap for a search-like 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?
The description is a single concise sentence that directly states the purpose without unnecessary words. However, it could benefit from a bit more detail without losing conciseness.
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 no output schema and no annotations, the description is incomplete. It does not explain return format, pagination, error handling, or what 'similar issues' means semantically. More context is needed for full understanding.
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, describing all three parameters adequately. The description adds no extra meaning beyond the schema, such as how query interacts with issue_id or default behavior for limit. 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 the tool finds issues from the same company/account to identify company-wide problems. It specifies the verb 'Find,' the resource 'issues from the same company/account,' and the purpose, distinguishing it from siblings like pylon_find_similar_issues_for_requestor and pylon_find_similar_issues_global.
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 does not provide explicit guidance on when to use this tool versus its siblings. It implies usage for company-wide problems but lacks any when-not or alternative recommendations, leaving the agent to infer context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_find_similar_issues_for_requestorA
Find issues from the same requestor as the source issue to identify recurring patterns.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_id | Yes | Pylon issue ID | |
| query | No | Optional search terms; defaults to source issue title | |
| limit | No | Max results to return |
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 describes a read/search operation but does not disclose behavioral traits such as rate limits, authentication requirements, or what happens with no results.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence that is concise and front-loaded with the key action 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?
The description does not mention the return format or pagination behavior, and there is no output schema to compensate. While the tool is simple, additional context would improve completeness.
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 description does not add any meaning beyond the schema. The schema already provides adequate descriptions for each parameter, 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 it finds issues from the same requestor as the source issue, which differentiates it from sibling tools like pylon_find_similar_issues_for_account (by account) and pylon_find_similar_issues_global (global search).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'to identify recurring patterns' implies a use case, but there is no explicit guidance on when to use this tool versus the similar siblings, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_find_similar_issues_globalA
Find similar issues across all accounts to identify widespread issues or find past solutions.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_id | Yes | Pylon issue ID | |
| query | No | Optional search terms; defaults to source issue title | |
| limit | No | Max results to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It only states the tool 'finds similar issues' without disclosing whether it is read-only, auth requirements, rate limits, or side effects. The description is insufficient for behavioral 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 a single sentence with no wasted words. It is front-loaded with the core purpose and use cases. Perfectly concise for the information provided.
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 3 parameters and no output schema, the description reasonably covers the global scope and use cases. It lacks pagination or format details, but for a 'find' tool, it is sufficiently 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?
Schema coverage is 100%, so baseline is 3. The description adds meaning by noting 'query' defaults to source issue title and 'limit' is max results. This provides value beyond the schema descriptions.
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 finds similar issues across all accounts, with specific use cases (identify widespread issues or find past solutions). It distinguishes from siblings like pylon_find_similar_issues_for_account by specifying 'global' scope.
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 for cross-account issue similarity, but does not explicitly state when not to use it or name alternatives. The context of global vs per-account is clear but lacks explicit when-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_get_accountB
Get details of a specific customer account.
| Name | Required | Description | Default |
|---|---|---|---|
| account_id | Yes | Pylon account ID |
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. It only states 'Get details', which implies a read operation, but fails to disclose behavior on invalid IDs, authentication needs, rate limits, or potential side effects. This is a significant gap for a tool with no annotation support.
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 7-word sentence that is concise but too terse. While it states the purpose, it lacks structure and additional context that would fit without becoming verbose.
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 no output schema and simple parameters, the description does not mention what details are returned (e.g., account structure). The absence of annotations and behavioral details leaves the agent with incomplete context, especially given the many 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 input schema has 100% coverage with a description for 'account_id' as 'Pylon account ID'. The tool description adds no additional meaning beyond the schema, resulting in 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 verb 'Get' and the resource 'details of a specific customer account', accurately reflecting the tool's function. It distinguishes itself from sibling tools like pylon_get_accounts (plural) which lists accounts.
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. There is no mention of prerequisites (e.g., having an account ID) or exclusions, which is insufficient for an agent to decide context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_get_accountsA
Get all customer accounts from Pylon.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description is minimal. It does not disclose behavioral traits such as pagination, rate limits, authentication requirements, or whether results are returned in a particular order.
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 sentence that front-loads the core purpose. No filler or unnecessary 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 the low complexity (no parameters, no output schema, no annotations), the description is sufficient for a simple 'get all' operation. However, it could benefit from mentioning that it returns a list of account objects without any filtering capability.
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 no parameters, and the schema description coverage is 100%. The description adds no additional meaning but none is required.
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 'Get all customer accounts from Pylon' clearly states the verb (Get), the resource (all customer accounts), and the scope (all). It effectively distinguishes from the sibling tool pylon_get_account (singular).
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 usage guidelines are provided. The description does not indicate when to use this tool vs alternatives, nor does it provide exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_get_attachmentA
Get attachment metadata by ID. Use when you have an attachment_id from an issue message. Download the file using the returned URL.
| Name | Required | Description | Default |
|---|---|---|---|
| attachment_id | Yes | Pylon attachment ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It states the tool returns metadata and a URL for downloading, but doesn't mention auth, rate limits, or that it's a read-only operation. Adequate but not enriched.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no wasted words, front-loaded with the core 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 simple one-parameter tool with no output schema, the description completely explains purpose, usage, and outcome.
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 description 'Pylon attachment ID.' The description adds context that the ID comes from an issue message, adding value beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Get attachment metadata by ID' and specifies the use case: 'when you have an attachment_id from an issue message.' It distinguishes from siblings, like pylon_create_attachment_from_url.
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 says to use when an attachment_id is available. While it doesn't mention when not to use, it gives clear context. Alternatives are implicit from sibling tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_get_contactsB
Get customer contacts from Pylon. Returns contact details like name, email, and company.
| Name | Required | Description | Default |
|---|---|---|---|
| search | No | Search contacts by name, email, or company | |
| limit | No | Max results to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden. It correctly implies it is a read operation (get contacts), but lacks details such as default behavior, pagination, or error states. The description is basic but not contradictory.
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 front-loaded, consisting of two short sentences without extraneous information. It efficiently conveys the tool's purpose and output.
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 simplicity (two optional params, no output schema), the description is adequate but incomplete. It misses context about sibling differentiation and default behavior, but covers basic functionality.
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 clear parameter descriptions. The description adds minimal value, only confirming that returned details include name, email, and company, which aligns with the search parameter description.
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 it retrieves customer contacts from Pylon, specifying returned fields. However, it does not distinguish from the sibling tool pylon_search_contacts, which likely searches contacts. The scope (all contacts vs filtered) is 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 alternatives like pylon_search_contacts. No mention of prerequisites or typical scenarios. The description is purely declarative without context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_get_issueA
Get complete details of a specific issue. Prefer this over message tools when you only need issue metadata.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_id | Yes | Pylon issue ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It states 'Get complete details' implying a read operation with no side effects, but does not confirm idempotency, access requirements, or potential errors. Minimally adequate for a simple get.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no superfluous words. Action stated at the beginning. Highly concise and well-structured.
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 get tool with one parameter and no output schema, the description is mostly complete. It mentions that it provides 'complete details' and contrasts with message tools, but could clarify what is not included (e.g., messages, followers).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% coverage with description 'Pylon issue ID'. The tool description adds no additional meaning beyond the schema. Baseline 3 for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and resource 'specific issue', indicating it retrieves issue details. It contrasts with message tools, but does not differentiate from other get tools like pylon_get_issue_with_messages or pylon_get_issue_followers.
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?
Provides explicit guidance to 'Prefer this over message tools when you only need issue metadata', which helps in tool selection. However, it does not address when to use sibling tools that also retrieve issue data (e.g., with messages or followers).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_get_issue_followersA
Get all users and contacts following a Pylon issue.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_id | Yes | Pylon issue ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It only states what it gets, but does not disclose pagination, authentication, rate limits, or scope details beyond 'all'.
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 with no extraneous information, efficiently conveying the tool's purpose.
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 simplicity of the tool (one parameter, no output schema), the description is sufficiently complete for an agent to understand its function and invoke it 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% for the single parameter, and the description adds no additional meaning beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'users and contacts following a Pylon issue', which distinguishes it from sibling tools like add and remove.
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 guidance on when to use this tool vs alternatives is provided. The purpose is implied, but no when-not or alternative mentions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_get_issue_messagesA
Get the message history for an issue. Use when you need message content, not just issue metadata.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_id | Yes | Pylon issue ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description lacks behavioral details such as pagination, response structure, authentication requirements, or limits. The description only states the basic function, leaving the agent without critical operational context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with no extraneous content. The key information is front-loaded, 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?
For a simple retrieval tool with one parameter and no output schema, the description covers the core purpose and usage context adequately. Minor omission of behavioral details like response format or limits, but overall complete enough.
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 the description's mention of 'issue_id' adds no extra meaning beyond the schema's 'Pylon issue ID'. The description does not clarify format or origin of the ID, resulting in no added value.
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 ('message history for an issue') and distinguishes it from metadata retrieval via pylon_get_issue, 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?
Explicitly says to use when message content is needed, not just metadata, providing clear context. However, it does not mention alternatives like pylon_get_issue_with_messages, which could be a sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_get_issuesA
Get support issues within a time range (max 30 days); defaults to last 30 days. Use this for unfiltered listing. For filtering by state, tags, or custom statuses, use pylon_search_issues instead.
| Name | Required | Description | Default |
|---|---|---|---|
| start_time | No | Start of time range (RFC3339, e.g. "2024-01-01T00:00:00Z"). Defaults to 30 days ago. | |
| end_time | No | End of time range (RFC3339, e.g. "2024-01-31T00:00:00Z"). Defaults to now. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided; description adds the max 30-day constraint but does not disclose other behaviors like pagination or response structure.
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 concise sentences with no fluff; key info is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers purpose, usage, and constraints adequately for a simple listing tool, though lacks output structure info (no output schema).
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 covers both parameters with descriptions; description adds the critical constraint that the time range is max 30 days, which is not in schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states verb 'get' and resource 'support issues', specifies scope (time range with max 30 days) and distinguishes from sibling tool pylon_search_issues.
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 (unfiltered listing) and when not to (if filtering needed, use pylon_search_issues), providing direct alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_get_issue_with_messagesA
Get an issue with its full conversation history. Prefer pylon_get_issue when you only need issue details.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_id | Yes | Pylon issue ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must cover behavioral traits. It mentions 'full conversation history' but lacks details like pagination, order of messages, or read-only nature. Adequate but not rich.
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 succinct, front-loaded sentences with no extraneous information. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter get tool without output schema, description adequately conveys purpose and usage guidance. Could mention output format, but not necessary.
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 has 100% coverage with a single parameter (issue_id) described as 'Pylon issue ID'. Description adds no extra parameter info, meeting baseline but not exceeding.
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?
Description states specific verb and resource: 'Get an issue with its full conversation history.' Clearly distinguishes from sibling pylon_get_issue by contrasting scope.
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 to prefer pylon_get_issue when only issue details are needed, providing clear guidance on when to use this tool vs. alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_get_knowledge_basesA
Get all knowledge bases in Pylon.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description does not disclose behavioral traits beyond the stated action. Since annotations are absent, the description carries the full burden. It does not mention pagination, performance implications, or what happens if no knowledge bases exist, but given the simplicity of the tool, the lack of detail is minimally acceptable.
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 sentence with no redundancy. It is concise and front-loaded, conveying the essential information efficiently.
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 tool with no parameters and no output schema, the description is nearly complete. It could mention the type of returned data, but the omission is minor given the straightforward nature of 'get all'.
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 description does not need to add parameter meaning. Baseline score of 4 is appropriate as the description adds no unnecessary information.
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 the resource 'all knowledge bases', making the tool's action unambiguous. It distinguishes itself from sibling tools like pylon_create_knowledge_base_article or pylon_get_issues.
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 guidance on when to use this tool versus alternatives is provided. While the purpose is clear, there is no mention of when not to use it or how it differs from similar listing tools like pylon_get_accounts.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_get_meA
Get the current authenticated user profile including name, email, role, and permissions.
| 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 must cover behavioral traits. It accurately describes the output but does not mention authentication requirements, rate limits, or potential side effects, which are minimal for a read operation. Adequate but not outstanding.
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 sentence that efficiently conveys the tool's purpose and key output fields, with no unnecessary 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 no output schema, the description adequately describes the return structure by listing included fields. It could mention data types or format, but for a simple profile retrieval, it is sufficiently 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 no parameters, and the schema coverage is 100%. The description adds value by listing the returned fields (name, email, role, permissions), which clarifies the tool's output beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'current authenticated user profile' with specific fields (name, email, role, permissions), distinguishing it from sibling tools like get_users (all users) and get_account.
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 guidance on when to use this tool versus alternatives, but the implied usage is straightforward for retrieving the current user's profile.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_get_tagsA
Get all available tags for categorizing issues and contacts.
| 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. It discloses a read-only operation (getting all tags) without mentioning any destructive behavior or side effects. For a simple retrieval, this is sufficiently transparent.
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, clear sentence with no unnecessary words. It is front-loaded and concise.
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 simplicity (0 parameters, no output schema), the description is adequate. It clearly states what the tool does. However, it could optionally mention the return format (e.g., array of tag objects) since no output schema is provided.
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 the description need not explain any. Schema coverage is 100% (empty). Baseline for 0 parameters is 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 it retrieves all available tags for categorizing issues and contacts. It uses a specific verb ('Get') and resource ('tags'), and naturally distinguishes from siblings like pylon_create_tag (creates) and pylon_add_tags (adds to entities).
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 implicitly tells when to use: when you need a list of all tags. It doesn't explicitly exclude alternatives or provide context, but the sibling set makes it clear that this is the retrieval endpoint.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_get_teamA
Get details of a specific support team including members and workload.
| Name | Required | Description | Default |
|---|---|---|---|
| team_id | Yes | Pylon team ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description indicates a read operation (get details) but lacks detail on permissions, rate limits, or return behavior beyond mentioned fields.
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, front-loaded with purpose, no unnecessary 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?
For a simple retrieval tool with one parameter and no output schema, the description is mostly complete. It mentions key return details (members, workload). Minor gaps: no error cases or full field list.
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% for the single parameter. The description does not add extra context beyond the schema's 'Pylon team ID'.
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 retrieves details of a specific support team, including members and workload. This distinguishes it from sibling like pylon_get_teams (list) and other operations.
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 guidance on when to use or avoid this tool versus siblings. The purpose is implied but not contrasted with alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_get_teamsA
Get all support teams in Pylon.
| 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 must cover behavior. It describes a read operation but lacks details on authentication, rate limits, or edge cases. The description is adequate but not thorough.
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 sentence that communicates the essential purpose without extraneous 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?
For a simple list operation without parameters or output schema, the description is minimally sufficient. It does not mention the structure of the returned data or any limitations, but the simplicity of the tool reduces the need for extensive detail.
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, and schema description coverage is 100%. The description adds no parameter information, but that is acceptable given the absence of parameters. Baseline of 4 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb 'Get' and resource 'all support teams', clearly indicating the tool returns a list of all teams. It implicitly distinguishes from the sibling tool 'pylon_get_team' which retrieves a single team.
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 guidance on when to use this tool versus alternatives like 'pylon_get_team'. The purpose is implied by the name and description, but no when-not or alternative usage is stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_get_ticket_formsB
Get all ticket submission forms available to customers.
| 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 must disclose behavioral traits. It states 'Get all ticket submission forms' implying read-only, but gives no details on side effects, permissions, rate limits, or return format. For a tool with no parameters, more context would be helpful, though the description is not contradictory.
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 sentence with no unnecessary words. It is perfectly concise and directly communicates the tool's purpose.
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 no output schema and no parameters, the description should explain what the tool returns (e.g., list of forms, with what fields). It only says 'Get all ticket submission forms,' leaving the return format unspecified. This is insufficient for complete understanding.
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 (0 params, 100% schema coverage). The description adds no parameter info, but per guidelines, baseline is 4 for zero 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 clearly states the action ('Get') and the resource ('all ticket submission forms'), with the qualifier 'available to customers' adding specificity. It is unambiguous and distinguishes from sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. The description only states what it does, with no context on when it's appropriate or when to consider other tools like get_accounts or get_issues.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_get_usersA
Get all team members and support agents in your Pylon workspace.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description lacks behavioral details such as pagination, rate limits, authentication needs, or whether it returns all users without filtering. Safety profile is not disclosed.
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 sentence, zero waste. Clearly states purpose without unnecessary detail.
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?
Simple tool with no parameters and no output schema. Description covers the main purpose. Could mention return type or list format, but still mostly complete for a list operation.
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?
Zero parameters, schema coverage 100%. Baseline 3 applies. Description doesn't add parameter info as 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?
Description specifies verb 'Get', resource 'all team members and support agents', and scope 'in your Pylon workspace'. Clearly distinguishes from siblings like pylon_search_users (search) and pylon_get_me (single user).
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 alternatives guidance. The description implies it's for listing all users, but doesn't mention when to use pylon_search_users instead or any prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_link_external_issueA
Link a Linear, Jira, GitHub, or Asana issue to a Pylon support issue for cross-system tracking.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_id | Yes | Pylon issue ID | |
| external_issue_id | Yes | ID of the external issue (e.g., "ABC-123" for Linear, "123" for GitHub) | |
| source | Yes | External system: "linear", "jira", "github", or "asana" |
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. It only states the action (linking) without disclosing critical behavioral traits such as side effects (e.g., bidirectional linking), whether it modifies the external issue, preconditions like issue existence, or error handling. This is insufficient for a mutation 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?
The description is a single sentence of 16 words, front-loading the core action and purpose. Every word is informative with no 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 presence of a complete input schema with descriptions and no output schema, the description provides adequate high-level context for a linking operation but lacks details on invocation behavior, preconditions, or result format. It is minimally viable.
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%, with clear parameter descriptions. The description adds no additional semantic value beyond the schema; it only repeats the purpose. Baseline score of 3 applies as schema already provides sufficient parameter guidance.
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 action ('Link') and specific resources (Linear, Jira, GitHub, or Asana issues to a Pylon support issue), with a clear purpose ('cross-system tracking'). This uniquely identifies the tool and distinguishes it from siblings like pylon_unlink_external_issue.
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 clearly indicates when to use this tool: to link an external issue to a Pylon support issue. It names the supported external systems, giving explicit context. Although it doesn't discuss when not to use it or alternatives, the sibling context makes the primary use case unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_remove_issue_followersA
Remove team members or customers from following a Pylon issue.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_id | Yes | Pylon issue ID | |
| user_ids | No | Array of team member user IDs to remove as followers | |
| contact_ids | No | Array of customer contact IDs to remove as followers |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It states the action 'remove' which is a mutation, but does not mention side effects, permissions, error conditions, or whether the operation is reversible. Minimal information beyond the basic action.
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 concise sentence that communicates the tool's purpose without any redundant or unnecessary words. Very efficiently structured.
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 mutation tool with 3 parameters (1 required) and no output schema, the description is largely complete. It covers the action and the two types of followers to remove. Minor missing context like bulk behavior is provided by the schema. Adequate for the complexity.
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 baseline is 3. The description adds context by naming 'team members' and 'customers' corresponding to user_ids and contact_ids, but does not add extra meaning or usage hints beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Remove' and the resource 'team members or customers from following a Pylon issue'. It distinguishes from siblings like pylon_add_issue_followers and pylon_get_issue_followers explicitly.
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?
While the name and description implicitly indicate usage (removing followers when needed), there is no explicit guidance on when to use this vs alternatives like pylon_add_issue_followers or pylon_get_issue_followers. The context is clear but not explicitly stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_remove_tagsA
Remove specific tags from a Pylon issue without affecting other tags. To add tags, use pylon_add_tags; to replace all, use pylon_update_issue.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_id | Yes | Pylon issue ID | |
| tags | Yes | Tags to remove (missing tags ignored) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It discloses the key behavioral trait that other tags are unaffected, and the schema description notes missing tags are ignored. However, it does not mention permissions or rate limits, which are minor gaps for a simple removal 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?
Two sentences, front-loaded with purpose, no wasted words. Extremely concise and well-structured.
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 no output schema and simple parameters, the description is complete: it covers purpose, usage guidelines, and a key behavioral guarantee. No additional context is needed.
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% for both parameters (issue_id and tags), so baseline is 3. The description does not add additional meaning beyond what is already in the schema; the 'missing tags ignored' detail is already present in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the tool removes specific tags from a Pylon issue without affecting other tags, which is a specific verb+resource combination. It also distinguishes from sibling tools pylon_add_tags and pylon_update_issue.
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 vs alternatives: 'To add tags, use pylon_add_tags; to replace all, use pylon_update_issue.' This provides clear usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_search_contactsA
Search for customer contacts by name, email, company, or phone.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries the burden. It discloses that the query can match name, email, company, or phone, but does not specify search behavior (e.g., fuzzy matching, case sensitivity, partial matches) or result limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the purpose without any superfluous words, earning its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple search tool with one parameter, the description is fairly complete. It covers the search fields but could be slightly more complete by mentioning that it returns matching contacts, especially given no output schema.
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 one 'query' parameter. The description adds value by explaining that the query searches across specific fields (name, email, company, phone), which provides context beyond the schema's generic 'Search query' description.
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 for customer contacts by specific fields (name, email, company, or phone), distinguishing it from sibling tools like pylon_get_contacts (which likely retrieves all contacts) and pylon_search_issues.
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 for searching contacts by specific identifiers but does not explicitly state when to use this tool versus alternatives like pylon_get_contacts, nor does it provide exclusions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_search_issuesA
Search issues using structured filters; requires at least one filter. For unfiltered listing, use pylon_get_issues instead.
| Name | Required | Description | Default |
|---|---|---|---|
| state | No | Filter by state: "new", "waiting_on_you", "waiting_on_customer", "on_hold", or "closed" | |
| tag | No | Filter by single tag; combine with state for custom statuses (e.g., state="on_hold" + tag="waiting on eng") | |
| tags | No | Filter by multiple tags (issue must have ALL specified tags) | |
| title_contains | No | Search text within issue titles | |
| assignee_id | No | Filter by assignee user ID | |
| account_id | No | Filter by account/company ID | |
| requester_id | No | Filter by requester/contact ID | |
| team_id | No | Filter by team ID | |
| limit | No | Max results to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must convey behavioral traits. It only mentions the filter requirement but does not disclose return format, pagination, rate limits, or whether the operation is read-only. For a search tool, this is insufficient 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?
Single sentence is highly concise, includes essential instruction and sibling differentiation. 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?
No output schema exists, so description should explain what the tool returns (e.g., list of issues). It fails to mention return type or structure. However, given the filter requirement and sibling distinction, it covers the basic context but misses the output description.
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 parameter descriptions, but the description adds value by noting that combining state and tag yields custom statuses, and by stating the 'at least one filter' requirement. This goes beyond the schema alone.
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?
Description clearly states 'Search issues using structured filters' and distinguishes from pylon_get_issues for unfiltered listing. Verb 'search' plus noun 'issues' with qualifier 'using structured filters' provides specific 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?
Explicitly says 'requires at least one filter' and suggests alternative tool for unfiltered listing: 'use pylon_get_issues instead'. This provides clear when-to-use and when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_search_issues_by_statusA
Search issues by status name, including custom statuses like "Waiting on Eng Input" or "Escalated". Automatically maps status names to state+tag combinations. For multi-filter searches, use pylon_search_issues instead.
| Name | Required | Description | Default |
|---|---|---|---|
| status | Yes | Status name (built-in state or custom, e.g., "Waiting on Eng Input"). Case-insensitive. | |
| limit | No | Max results to return |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses automatic mapping of status names to state+tag combinations, which is nontrivial behavior not evident from schema. With no annotations, the description takes on behavioral disclosure burden. No mention of auth or rate limits, but appropriate for a read-only search.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, no superfluous words. First sentence defines purpose and examples; second provides usage guidance and behavioral hint. Efficient and well-structured.
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 search tool with two parameters and no output schema, description covers purpose, usage guidance, and key behavior. Lacks details on return format or ordering but is generally complete for the tool's complexity.
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 already describes both parameters (status and limit) with 100% coverage, so baseline is 3. Description adds context about custom statuses and mapping, but does not significantly enhance understanding of limit. Overall adds marginal value.
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?
Description clearly states the action (search issues) and criterion (by status name), includes examples of custom statuses, and distinguishes from sibling tool pylon_search_issues. Verb+resource are specific and unique.
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 (search by single status) and when to use alternative (pylon_search_issues for multi-filter). Provides 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.
pylon_search_usersA
Search for team members and support agents by name, email, or department.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description is the sole source. It indicates a read-only search but does not disclose details like whether partial matches are supported, pagination, rate limits, or return format, leaving some ambiguity for a search operation.
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, front-loaded sentence with no unnecessary words, efficiently conveying the tool's purpose and criteria.
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 simple input (one required string) and no output schema, the description adequately covers the tool's function and searchable fields. Missing details about return values are minor in this context.
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 schema covers the 'query' parameter 100%, but the description adds value by specifying the searchable fields (name, email, department), which is not evident from the schema alone, raising the baseline from 3 to 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 searches for team members and support agents by name, email, or department, distinguishing it from sibling tools like pylon_search_contacts (for contacts) and pylon_get_users (which lists all users without search).
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 when searching for users by specific attributes but does not explicitly contrast with alternatives like pylon_get_users or pylon_search_contacts, leaving the agent to infer when to use this tool.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_snooze_issueA
Temporarily hide an issue until a future date/time for deferred follow-up.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_id | Yes | Pylon issue ID | |
| until | Yes | Date/time to reactivate (ISO 8601, e.g., "2024-01-15T09:00:00Z") |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the burden. It mentions 'temporarily hide' and implies a future reactivation, but it does not specify exactly what happens when the snooze ends (e.g., automatic reactivation) or any side effects.
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 sentence with no unnecessary words, perfectly front-loading the key action and purpose.
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 tool with two required parameters (both documented) and no output schema, the description provides the essential context: what it does and its temporal nature. It could be enhanced by specifying that the issue will reappear automatically.
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 both parameters are well-described in the schema (issue_id and until with format). The description adds no additional meaning beyond restating the purpose, so it meets the 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?
The description clearly states the tool's action ('temporarily hide an issue') and its purpose ('for deferred follow-up'), effectively distinguishing it from sibling tools like pylon_delete_issue (permanent) and pylon_update_issue (general update).
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 when to use this tool (when a deferred follow-up is needed) but does not explicitly state when not to use or list alternatives. Given the sibling context, it is clear enough.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_unlink_external_issueA
Remove the link between a Pylon issue and an external ticketing system issue.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_id | Yes | Pylon issue ID | |
| external_issue_id | Yes | ID of the external issue to unlink | |
| source | Yes | External system: "linear", "jira", "github", or "asana" |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must carry the full burden. It states the action ('remove the link') but does not disclose any side effects, permissions required, or what happens to the linked issues. For a mutation tool, more behavioral context 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 a single, clear sentence with no wasted words. It is appropriately sized and front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has three parameters and no output schema or annotations. The description covers the core function but lacks information on return values, error conditions, or prerequisites. For a mutation tool, this is adequate but not comprehensive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all three parameters (issue_id, external_issue_id, source). The description adds no additional meaning beyond the schema, meeting the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('remove the link') and the resource ('between a Pylon issue and an external ticketing system issue'). It differentiates from the sibling tool pylon_link_external_issue, which does the opposite.
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 does not explicitly state when to use this tool or when not to. It implies usage when an external issue link needs to be removed, but lacks guidance on prerequisites or alternatives. The sibling name provides context, but the description itself is insufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pylon_update_issueA
Update an existing issue's title, description, status, priority, assignee, or tags. To add/remove tags without replacing all, use pylon_add_tags or pylon_remove_tags.
| Name | Required | Description | Default |
|---|---|---|---|
| issue_id | Yes | Pylon issue ID | |
| title | No | ||
| description | No | ||
| status | No | "open", "in_progress", "pending", "resolved", or "closed" | |
| priority | No | "low", "medium", "high", or "urgent" | |
| assignee | No | ||
| tags | No | Complete replacement tag list. Use pylon_add_tags or pylon_remove_tags to modify without replacing all. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description bears full responsibility. It indicates mutation ('Update') and specifies that tags are completely replaced, which is key behavioral info. However, it does not disclose whether the update returns the updated issue, permissions required, or any side effects, leaving some ambiguity.
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 long, front-loads the purpose, and provides a clear alternative usage. Every sentence adds value without any redundancy or 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?
The description lists all updatable fields and includes guidance for tags. However, it does not explicitly state that only provided fields are updated (implied but not explicit) and lacks return value information (no output schema). For a simple update operation with clear parameters, it is mostly complete but misses these details.
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 57% (4 of 7 parameters have descriptions). The tool description adds a note about tags replacement behavior, which is already present in the schema's tags description. It lists the updatable fields but does not provide additional meaning beyond the schema for the undocumented parameters (title, description, assignee).
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 'Update' and the resource 'existing issue', listing the specific fields that can be updated (title, description, status, priority, assignee, or tags). It also distinguishes itself from sibling tools pylon_add_tags and pylon_remove_tags by mentioning them as alternatives for tag modification.
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 tells when to use alternative tools: 'To add/remove tags without replacing all, use pylon_add_tags or pylon_remove_tags.' This provides clear guidance on when not to use this tool for tag operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
38 tool updates
v3.7.2- First observed
pylon_add_issue_followers - First observed
pylon_add_tags - First observed
pylon_create_attachment_from_url - First observed
pylon_create_contact - First observed
pylon_create_issue - First observed
pylon_create_knowledge_base_article - First observed
pylon_create_tag - First observed
pylon_create_team - First observed
pylon_delete_issue - First observed
pylon_find_similar_issues_for_account - First observed
pylon_find_similar_issues_for_requestor - First observed
pylon_find_similar_issues_global - First observed
pylon_get_account - First observed
pylon_get_accounts - First observed
pylon_get_attachment - First observed
pylon_get_contacts - First observed
pylon_get_issue - First observed
pylon_get_issue_followers - First observed
pylon_get_issue_messages - First observed
pylon_get_issue_with_messages - First observed
pylon_get_issues - First observed
pylon_get_knowledge_bases - First observed
pylon_get_me - First observed
pylon_get_tags - First observed
pylon_get_team - First observed
pylon_get_teams - First observed
pylon_get_ticket_forms - First observed
pylon_get_users - First observed
pylon_link_external_issue - First observed
pylon_remove_issue_followers - First observed
pylon_remove_tags - First observed
pylon_search_contacts - First observed
pylon_search_issues - First observed
pylon_search_issues_by_status - First observed
pylon_search_users - First observed
pylon_snooze_issue - First observed
pylon_unlink_external_issue - First observed
pylon_update_issue
TDQS
Each tool has a clear, distinct purpose. Even similar tools like the three find_similar_issues variants are differentiated by scope (account, requestor, global). Descriptions explicitly guide selection between overlapping tools (e.g., get_issue vs get_issue_with_messages, add_tags vs update_issue).
All 38 tools follow the exact same pattern: snake_case with a 'pylon_' prefix and a verb_noun structure. Verbs are consistently used (create, get, update, delete, search, add, remove, snooze, link, unlink). No mixing of camelCase or other conventions.
At 38 tools, this is a large surface area, but each tool serves a specific function for a feature-rich support platform. The count is on the higher end of acceptable; some tools like pylon_get_issue and pylon_get_issue_with_messages could arguably be merged. Overall, it's justified by the breadth of entities managed.
The tool set provides full CRUD for issues, plus extensive operations for contacts, teams, knowledge bases, tags, attachments, and external integrations. Missing: update/delete for contacts and teams, but these are less critical. The search variants cover filtering needs well. Minor gaps exist but don't severely hinder common workflows.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Remote MCP server for managing Muninx tickets, messages, ticket search, and support analytics.
MCP server connecting AI agents to 100+ apps (Gmail, Slack, Notion, GitHub) via one-click OAuth.
Related MCP Servers
- FlicenseCqualityDmaintenanceThis is an MCP server that facilitates building tools for interacting with various APIs and workflows, supporting Python-based development with potential for customizable prompts and user configurations.1-
- AlicenseNot gradedqualityDmaintenanceA comprehensive MCP server that provides full access to Help Scout's Docs and Inbox APIs. It enables users to manage knowledge base articles, collections, and sites while also handling customer conversations, threads, and mailbox operations.MIT
- FlicenseDqualityDmaintenanceA comprehensive MCP server for managing Zendesk Support, Talk, Chat, and Guide products, providing tools for tickets, users, organizations, search, and more.4929-
- FlicenseNot gradedqualityDmaintenanceComprehensive MCP server providing 89 tools and 13 React UI apps for complete Zendesk Support API integration, enabling ticket, user, organization, and automation management.-
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/mgmonteleone/pylon-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server