Skip to main content
Glama
shashwatgtm

craft-gtm-mcp

by shashwatgtm

Server Quality Checklist

67%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v1.0.0

  • Disambiguation5/5

    Each tool targets a distinct GTM deliverable: PMF assessment, launch planning, customer research, retention, partnerships, crisis response, competitive intel, and strategy analysis. There is no overlap in purpose or output, so an agent can easily select the right tool for a given task.

    Naming Consistency5/5

    All tool names follow a consistent pattern of lowercase snake_case noun phrases, each combining a domain term with a descriptor (e.g., scorecard, commander, kit, playbook, architect, planner, intel, analyzer). While not verb_noun, the naming is uniform and predictable across the set.

    Tool Count5/5

    With 8 tools, the server is well-scoped for a GTM strategy framework. Each tool covers a major area without redundancy, and the count is within the ideal 3-15 range, making the server focused yet comprehensive.

    Completeness4/5

    The tool surface covers a wide range of GTM activities from market validation to launch and post-launch. Missing elements like pricing or sales enablement are notable but likely outside the intended scope of a strategic GTM toolkit, so the coverage is quite strong with only minor gaps.

  • Average 3.9/5 across 8 of 8 tools scored.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 0 commits in the last 12 weeks
    • Last stable release on
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • This repository is licensed under MIT License.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior3/5

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

    With no annotations, the description carries the burden. It enumerates the outputs, which is informative, but does not disclose any behavioral traits such as whether it performs live research, generates templates only, or has any limitations. It's transparent about the deliverable set but not about the process.

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

    Conciseness4/5

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

    One comprehensive sentence that front-loads the purpose and then lists artifacts in a readable series. It's dense but not bloated; every deliverable earns its place. Could be slightly overwhelming, but structure is clear.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's complexity (a package with many potential outputs) and no output schema, the description helpfully enumerates eight distinct deliverables, providing a good sense of scope. It doesn't explain how to use the results or the exact format, but for a package tool this is substantial coverage.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 100%, so the params are already well-documented. The description does not add meaning beyond the schema; it lists outputs but doesn't map them to specific parameters. Baseline 3 applies since the schema handles the semantics.

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

    Purpose5/5

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

    Clearly states it generates a competitive intelligence package with specific deliverables (battle cards, feature matrix, etc.). The verb 'Generate' plus resource 'Competitive Intelligence Package' is specific and distinguishes from sibling tools like pmf_scorecard or launch_commander.

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

    Usage Guidelines3/5

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

    The description implies when to use it (when competitive intelligence artifacts are needed) but gives no explicit context, exclusions, or alternatives. Sibling tools cover different domains, but no guidance is provided for choosing this over them.

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

  • Behavior3/5

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

    No annotations are provided, so the description carries full weight. It thoroughly describes what the tool generates (the playbook contents), but does not disclose whether the tool is read-only, if it requires any permissions, or if it has side effects. For a generation tool, this is somewhat acceptable, but still lacks explicit behavioral context beyond the output contents.

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

    Conciseness4/5

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

    The description is front-loaded with the core verb and resource, then flows into a comprehensive list of deliverables. It is a single dense sentence but every item is relevant and adds value. It could be split for better readability, but it is not bloated or redundant.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    With no output schema, the description compensates by listing the major components of the generated playbook (severity levels, stakeholder communication matrix, response team structure, statement templates, FAQ bank, post-crisis review). This gives the agent a solid understanding of what the tool returns. However, it omits context like input/output format or edge cases, and given the tool's moderate complexity, it is nearly complete but not fully.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema-description coverage is 100% for all 5 parameters, so the baseline is 3. The description adds some context by giving examples of crisis-specific playbooks (security breach, outage, PR), which partially aligns with the 'potential_crises' parameter, but does not materially enrich the meaning of individual parameters beyond what the schema already provides.

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

    Purpose5/5

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

    The description clearly states the tool's function: 'Generate crisis playbook' with a specific verb and resource. It enumerates the included components (4 severity levels, stakeholder communication matrix, response team structure, etc.), making the tool's scope distinct from sibling tools like pmf_scorecard or launch_commander. The purpose is unambiguous and deeply specified.

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

    Usage Guidelines3/5

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

    The description implies usage for crisis planning/preparedness via the phrase 'Crisis Response Framework' and the list of outputs. However, it does not explicitly state when to use this tool vs. alternatives, nor does it mention any exclusions or prerequisites. Given the sibling tools are all in different domains, some explicit guidance would be helpful but is absent.

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

  • Behavior3/5

    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 transparently lists what the generated kit contains (e.g., 'insight synthesis template', 'cross-interview pattern analysis framework'), but does not disclose potential side effects, prerequisites, limitations, or any behavioral constraints beyond generating content. Lacks explicit statements about read-only nature or data handling.

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

    Conciseness4/5

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

    The description is a single sentence but well-structured, front-loading the core purpose ('Generate complete interview kit') followed by a detailed but efficient list of included elements. No redundant words, though it reads as a slightly long run-on; it earns its length by specifying multiple deliverables.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given no output schema and no annotations, the description must explain what the tool returns. It does so thoroughly by listing six distinct output components. The parameters are fully documented in the schema, so the description complements them well. However, it could be improved by noting the relationship between inputs (e.g., 'customer_segment') and the generated content.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100%, so the baseline is 3. The description adds no additional meaning to parameter semantics; it focuses on output components rather than explaining how parameters like 'research_objective' or 'interview_type' should be set or interact. The schema already provides clear parameter descriptions.

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

    Purpose5/5

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

    The description clearly states the tool's purpose: 'Generate complete interview kit' and enumerates specific deliverables (5-phase script, question bank, follow-up prompts, etc.). This distinguishes it from sibling tools like pmf_scorecard or competitive_intel, which focus on different research or analysis activities.

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

    Usage Guidelines3/5

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

    The description implies use for customer research and interviews but provides no explicit guidance on when to use this tool versus alternatives. It does not mention exclusions or conditions, leaving the agent to infer applicability from the phrase 'Customer Research Framework'.

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

  • Behavior3/5

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

    With no annotations provided, the description carries the full burden and does disclose the tool's output scope (framework components). However, it does not mention any side effects, required permissions, or whether it is a read-only generation tool. The absence of safety details is a gap, but the detailed deliverables offer some transparency.

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

    Conciseness5/5

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

    The description is a single, well-structured sentence that front-loads the purpose and uses a colon to introduce a concise list of deliverables. Every element adds value, with no filler or repetition.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    The tool has 6 parameters, no output schema, and no annotations, so the description plays a key role in explaining what the tool produces. It lists the main components of the framework, providing a good sense of the output, but it does not explain how the inputs (e.g., company, partner_types) map to these components. This is a minor gap for a complex design tool.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    The input schema covers 100% of parameters with descriptions, so the baseline is 3. The tool description does not add any parameter-specific details or syntax beyond what the schema already provides, so it neither improves nor degrades the understanding.

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

    Purpose5/5

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

    The description clearly states the tool's purpose: 'Design complete partner program' with a specific verb, resource, and detailed scope (4-tier structure, commission model, enablement curriculum, etc.). It is distinct from sibling tools like pmf_scorecard and launch_commander, which focus on different business aspects.

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

    Usage Guidelines3/5

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

    The description implies the tool is for designing partner programs but does not explicitly state when to use it versus alternatives. There is no mention of exclusions or prerequisites. The context is clear from the content, but it lacks explicit usage guidance.

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

  • Behavior3/5

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

    With no annotations, the description must convey behavioral traits. It explains what is generated (the plan components) but does not disclose side effects, output format, or any operational constraints. This is adequate but leaves room for more detail.

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

    Conciseness4/5

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

    The description is a single sentence, front-loaded with the main purpose 'Launch Sequence Planner: Generate complete 12-week launch plan'. It is efficient but somewhat dense, listing many items in one clause.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given 7 parameters and no output schema, the description provides a good sense of the output scope by enumerating plan deliverables. It does not fully explain how inputs map to outputs, but overall completeness is decent.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100%, so the baseline is 3. The description does not add parameter-specific meaning beyond the schema; it only lists the plan components, which indirectly relate to parameters but without explicit mapping.

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

    Purpose5/5

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

    The description clearly states the tool generates a complete 12-week launch plan, listing specific components (timeline, launch day schedule, channel coordination, RACI matrix, contingency plans, metrics dashboard). This specific verb-resource pairing distinguishes it from sibling tools like crisis_planner or retention_playbook.

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

    Usage Guidelines4/5

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

    The description implies this tool is for launch planning, a distinct use case from the sibling tools. It does not explicitly provide when-not-to-use or name alternatives, but the purpose is clear enough to guide selection.

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

  • Behavior4/5

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

    With no annotations provided, the description carries the burden of disclosing behavior. It explicitly says the tool 'Generate[s]' and 'save playbooks with email templates', indicating write/save behavior. It also lists what outputs to expect (health score model, playbooks, alerts, metrics). However, it does not discuss permissions, reversibility of saves, or side effects beyond saving. The core behavioral traits are transparent enough for an agent to understand this is a generation tool with save capability.

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

    Conciseness4/5

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

    The description is a single, information-dense sentence that uses a colon to introduce a list of features. It front-loads the domain ('Retention Strategy Framework') and each clause adds specific value. While it enumerates multiple components, it remains concise and does not contain filler or redundant statements.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a tool with no output schema and no annotations, the description covers the core outputs and components well: health score model, playbooks by segment, early warning alerts, saved playbooks, and success metrics. The fully documented schema handles parameter needs. The description does not specify the response format or delivery mechanism, but for a framework generation tool, this is adequate contextual detail.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100%, so the parameters themselves are fully documented. The description aligns with parameters like customer_segment and churn_reasons but does not add extra format, syntax, or detailed constraints beyond what the schema already provides. A baseline score of 3 is appropriate since the schema does the heavy lifting and no additional parameter meaning is required.

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

    Purpose5/5

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

    The description clearly states the tool's purpose with a specific verb ('Generate') and resource ('comprehensive retention system'), and enumerates distinct deliverables (health score model, intervention playbooks, alerts, saved email templates, success metrics). This distinguishes it from sibling tools focused on other domains like PMF (pmf_scorecard) or launch planning (launch_commander).

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

    Usage Guidelines3/5

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

    The description implies the tool is used for retention strategy by labeling it 'Retention Strategy Framework', but it does not explicitly state when to use it over alternatives or provide any exclusions. There is no mention of preconditions, such as when churn is high or when to prefer another tool like crisis_planner. The usage context is clear but only implied, not explicitly stated.

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

  • Behavior4/5

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

    With no annotations, the description carries the full burden. It discloses the analytical behavior (5-dimension weighted scoring, gap identification, action plan generation) and gives context on inputs (metrics, feedback). It does not mention side effects or permissions, but 'generate' implies a safe, read-only analytical action.

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

    Conciseness5/5

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

    The description is a single sentence that packs all essential information: purpose, dimensions, weights, output components. It is front-loaded with the tool's primary function and has no redundant words. Every clause contributes to understanding.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    For a tool with no output schema, the description adequately outlines what the result will include (scorecard, gap identification, action plan). It provides enough detail for an agent to know what to expect, though it does not specify the exact return format or how to interpret results.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema description coverage is 100%, so the baseline is 3. The description lists the analysis dimensions but does not map them to specific parameters or add syntax/format details. It adds no meaningful parameter-level semantics beyond the existing schema descriptions.

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

    Purpose5/5

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

    The description clearly states the tool generates a comprehensive PMF scorecard with specific dimensions and weighting. It identifies the exact output (scorecard, gap identification, 90-day action plan) and distinguishes itself from sibling tools by its specific focus on PMF assessment.

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

    Usage Guidelines3/5

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

    The description implies use for product-market fit assessment but does not explicitly state when to use this tool over alternatives like competitive_intel or customer_interview_kit. No exclusions or alternative references are provided, giving only implied usage context.

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

  • Behavior4/5

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

    With no annotations provided, the description carries the full burden of disclosing behavior. It clearly states what the tool returns: 'CRAFT score 0-100, dimension assessment, gap analysis, and improvement recommendations.' This provides essential transparency about outputs. It does not detail side effects or permissions, but given the read-only nature of an analyzer and the explicit output description, this is sufficient for a 4.

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

    Conciseness5/5

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

    The description is a single sentence that packs in the tool's purpose, the CRAFT framework, and the output details. Every word earns its place with no redundancy. It is front-loaded with the tool name and core action, making it quickly scannable.

    Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

    Completeness4/5

    Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

    Given the tool's moderate complexity (4 params, no output schema), the description adequately explains the return values and the analysis criteria. It could be more complete by adding explicit context on when to choose this over sibling tools or noting any input formats, but the provided information is sufficient for basic selection and invocation. A score of 4 reflects this slight gap.

    Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

    Parameters3/5

    Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

    Schema coverage is 100%, with all four parameters having meaningful descriptions in the schema. The tool description itself adds no additional parameter-level detail beyond the schema. Per the guidelines, baseline 3 is appropriate when the schema fully documents parameters; the description here does not go beyond that.

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

    Purpose5/5

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

    The description clearly states the tool's function: 'Analyze any GTM strategy document against CRAFT principles'. It specifies the resource (GTM strategy document), the action (analyze), and the unique framework (CRAFT: Character, Result, Artifact, Frame, Timeline). This distinguishes it from sibling tools focused on different GTM aspects like pmf_scorecard or launch_commander.

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

    Usage Guidelines4/5

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

    The description provides clear context for use: it is for analyzing GTM strategy documents against CRAFT. However, it does not explicitly mention when not to use it or name alternative tools. It implies a specific analytical niche but lacks explicit exclusionary guidance, so it gets a 4 rather than a 5.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

craft-gtm-mcp MCP server

Copy to your README.md:

Score Badge

craft-gtm-mcp MCP server

Copy to your README.md:

Latest Blog Posts

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/shashwatgtm/craft-gtm-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server