developer-tools-mcp-server
Server Details
Search GitHub, npm, PyPI, StackOverflow, ArXiv from one MCP — built for coding agents.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.3/5 across 7 of 7 tools scored.
Each tool targets a distinct resource and action: get for specific GitHub repos and npm/PyPI packages, search for GitHub repos, arXiv papers, Google Scholar papers, and Stack Overflow Q&A. No two tools overlap in purpose.
All tool names follow a consistent verb_source pattern using snake_case (get_github_repo, get_npm_package, search_arxiv, etc.). This makes the set predictable and easy to navigate.
With 7 tools, the server covers a focused domain—developer research and resource evaluation—without bloat. Each tool contributes a distinct function, and the count is well-balanced for the scope.
The tool surface covers fetching metadata for known repos/packages and searching multiple external platforms. A minor gap is the lack of direct search for npm or PyPI packages, but GitHub search partially fills this need. Overall, lifecycle coverage is appropriate for a read-only research assistant.
Available Tools
7 toolsget_github_repoARead-onlyInspect
Fetch detailed statistics and metadata for a GitHub repository. Returns star count, fork count, open issue count, primary programming language, project description, last updated timestamp, and contributor count. Use for evaluating open-source projects, competitive analysis, or monitoring project health.
| Name | Required | Description | Default |
|---|---|---|---|
| repo | Yes | Repository in format 'owner/repo' (e.g. 'facebook/react', 'kubernetes/kubernetes') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly and openWorld hints. The description adds value by enumerating the specific returned metrics (star count, fork count, etc.) and indicates read-only behavior consistent with annotations. Does not disclose rate limits or error handling, but the bar is lower given annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the primary action and resource, then a concise list of return fields and use cases. No redundant or filler content.
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 one-parameter schema and no output schema, the description adequately explains what the tool returns and when to use it. It could mention failure behavior (e.g., repo not found) but is otherwise complete for this complexity level.
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 single parameter 'repo' is fully documented in the schema with format and examples, providing 100% coverage. The description adds no additional parameter-level meaning beyond what the schema already offers, so baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states it fetches detailed statistics and metadata for a specific GitHub repository, listing key return fields. This distinguishes it from sibling search tools like search_github and other package-specific 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?
Provides context on when to use (evaluating open-source projects, competitive analysis, monitoring project health) but does not explicitly contrast with alternatives like search_github. Clear usage context, though no exclusions are stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_npm_packageARead-onlyInspect
Look up Node.js package information from NPM registry. Returns latest version, download statistics (weekly/monthly), dependency list, package description, license, and GitHub link. Use for evaluating JavaScript libraries, checking maintenance status, or reviewing package popularity.
| Name | Required | Description | Default |
|---|---|---|---|
| package_name | Yes | NPM package name exactly as published (e.g. 'express', 'react', 'lodash', '@babel/core') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, but the description adds valuable behavioral context by enumerating exactly what data is returned (latest version, download stats, dependencies, license, GitHub link) and that it fetches from the NPM registry. It does not mention error handling or rate limits, but the read-only nature and return payload are well 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?
The description is two sentences: the first states the core action and return contents, the second gives usage scenarios. Every word earns its place with no redundancy, and the most important information 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?
For a simple read-only lookup tool with one parameter and no output schema, the description covers the essential behavior and return fields. It is sufficient for an agent to select and invoke the tool, though it could mention handling of nonexistent packages or network failures.
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 for the single parameter, fully explaining that package_name must be the exact published name with examples. The description does not add further parameter-specific meaning, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool looks up Node.js package information from the NPM registry, specifying the exact resource and action. It distinguishes itself from siblings like get_pypi_package and get_github_repo by focusing on npm packages and lists specific return data (version, downloads, dependencies, license, 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 explicit use cases: evaluating JavaScript libraries, checking maintenance status, and reviewing package popularity. It does not name alternatives or state when not to use it, but the context is clear relative to sibling tools. This is a strong 'when to use' statement, lacking only explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pypi_packageARead-onlyInspect
Retrieve Python package information from PyPI (Python Package Index). Returns current version, download counts, dependencies, release history, package homepage, and PyPI page URL. Use for Python library evaluation, dependency analysis, or checking package quality metrics.
| Name | Required | Description | Default |
|---|---|---|---|
| package_name | Yes | PyPI package name as listed in registry (e.g. 'numpy', 'django', 'flask', 'pandas') |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is known. The description adds value by specifying the exact data returned (current version, download counts, dependencies, release history, homepage, PyPI URL), which is useful behavioral context beyond the annotations. No contradictions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loaded with the action and resource. Every sentence adds value—first the purpose, then the return values and use cases. No redundancy or filler.
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 single-parameter read-only tool with strong annotations and clear return field enumeration, the description is complete. It covers what the tool does, what it returns, and when to use it. The absence of an output schema is mitigated by the explicit list of returned data.
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 clear description of 'package_name' (e.g., 'numpy', 'django'). The description does not add much beyond the schema, but the schema itself is sufficiently descriptive, 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 tool's function with a specific verb 'Retrieve' and a specific resource 'Python package information from PyPI'. It lists concrete return fields (version, download counts, dependencies, etc.), which distinguishes it from sibling tools like get_npm_package and get_github_repo.
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 states use cases: 'Use for Python library evaluation, dependency analysis, or checking package quality metrics.' This gives clear context for when to use the tool, but it does not mention when not to use it or name alternative tools for other package registries.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_arxivARead-onlyInspect
Search arXiv for academic papers in computer science, machine learning, AI, physics, and mathematics. Returns paper titles, authors, abstracts, submission dates, and direct PDF download links. Use for researching algorithms, ML techniques, or emerging CS topics.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Research topic in CS/ML/physics (e.g. 'transformer architectures', 'distributed systems', 'quantum algorithms') | |
| max_results | No | Papers to return (default 10, suitable for focused research) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so safety is known. The description adds behavioral detail by specifying the return fields (titles, authors, abstracts, dates, PDF links), which helps the agent anticipate the output. It does not mention any limitations like metadata-only search, but that is not critical.
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 crisp sentences without fluff. The first sentence covers purpose and output, the second covers usage. All sentences earn their keep.
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 two simple parameters, full schema descriptions, and read-only annotations, the description provides sufficient context. It lists output fields and usage, making it complete for a search tool without needing an 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?
The schema covers both parameters with descriptions, so coverage is 100%. The description reinforces the query domain but adds no new parameter semantics beyond the schema. Baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description opens with 'Search arXiv for academic papers in computer science, machine learning, AI, physics, and mathematics,' which clearly states the action, resource, and domain scope. It differentiates from sibling search tools like search_google_scholar by naming arXiv specifically and listing return fields.
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 'Use for researching algorithms, ML techniques, or emerging CS topics' provides clear usage context. It does not explicitly name alternatives like search_google_scholar or exclude non-academic queries, so it stops short of a full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_githubARead-onlyInspect
Search GitHub repositories by keyword to discover code, projects, and libraries. Returns matching repositories with star count, description, language, and URL. Use for finding libraries, examples, or competitive projects in specific domains.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search keywords or project name (e.g. 'web framework', 'authentication library', 'data visualization') | |
| max_results | No | Number of repository results to return (default 10, up to 100 for broad searches) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and openWorldHint, so safety is covered. The description adds useful context about return values (star count, description, language, URL) and the scope of results, which goes beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with the primary action, and every clause earns its place. No fluff, no repetition, and appropriately sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple search tool with 2 well-documented parameters, open-world hints, and no output schema, the description covers purpose, use cases, and return shape. Nothing essential is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description does not add any extra semantic detail beyond what the schema already provides; it merely restates that it searches by keyword, which the 'query' parameter already says.
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 a specific verb and resource ('Search GitHub repositories by keyword') and explains what it returns. Differentiates itself from siblings like get_github_repo (search vs specific) and other search tools (Arxiv, Stack Overflow) through its 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 says to use it for 'finding libraries, examples, or competitive projects in specific domains,' giving a clear intended use case. Does not explicitly mention when not to use it, but the purpose is distinct enough from siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_google_scholarARead-onlyInspect
Search Google Scholar for computer science research papers, citations, and academic publications. Returns paper title, authors, publication details, citation count, and link to paper. Use for finding research on CS topics, reviewing state-of-the-art, or citation tracking.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Computer science research topic (e.g. 'natural language processing', 'distributed consensus algorithms') | |
| max_results | No | Maximum papers to return (default 10) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, covering the safety profile. The description adds that it 'Returns paper title, authors, publication details, citation count, and link to paper,' which is valuable behavioral/return information beyond the annotations. No contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the main action, then return fields and usage examples. Every sentence serves a purpose with no redundancy, making it 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 two-parameter, read-only search tool with no output schema, the description provides everything needed: purpose, return fields, and use cases. It is self-sufficient for an agent to decide whether and how to invoke it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema description covers 100% of the parameters ('query' and 'max_results' with descriptions and a default), so the baseline is 3. The tool description does not add additional parameter detail 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 opens with 'Search Google Scholar for computer science research papers, citations, and academic publications,' specifying both verb and resource. It clearly distinguishes the tool from siblings like search_arxiv by naming Google Scholar and its CS focus, and it lists the return fields, reinforcing what the tool does.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states 'Use for finding research on CS topics, reviewing state-of-the-art, or citation tracking,' giving clear use cases. However, it does not explicitly mention alternatives or when not to use it, so it falls short of the highest bar for usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_stackoverflowARead-onlyInspect
Search Stack Overflow Q&A platform for programming questions, solutions, and code examples. Returns matching questions, answer count, view count, accepted answer snippet, tags, and link to full discussion. Use for troubleshooting, code examples, or finding solutions to common problems.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Programming problem or question (e.g. 'how to merge arrays in javascript', 'python asyncio example') | |
| max_results | No | Number of Q&A results to retrieve (default 10, higher for comprehensive answers) |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is clear. The description adds value by detailing the return content (questions, answer count, view count, accepted answer snippet, tags, link), which goes beyond annotations. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the tool's purpose, then return details, then usage context. Every sentence earns its place 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?
For a simple search tool with 2 parameters, no output schema, and supportive annotations, the description is complete enough. It covers purpose, return content, and usage. It could mention potential limitations (e.g., API rate limits) but that is not critical for this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so both parameters (query and max_results) are well-documented in the schema itself. The description does not add extra parameter-specific semantics beyond what the schema provides, supporting the 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?
Description clearly states it searches Stack Overflow for programming questions, solutions, and code examples, and lists specific return fields (answer count, view count, accepted answer snippet, tags, link). This specific verb+resource distinguishes it from sibling tools like search_github or search_arxiv.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage context: 'Use for troubleshooting, code examples, or finding solutions to common problems.' This clarifies when to use the tool but does not explicitly mention alternatives or when not to use it, which would warrant a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- AlicenseAqualityDmaintenanceCLI-first web and code search for agents, with MCP support for integration with IDEs like Cursor, VS Code, and Claude Code.3MIT

GitHitsofficial
Alicense-qualityAmaintenanceEnables AI coding agents to search and access open-source code, documentation, and package information via a local MCP server.1,57777Apache 2.0- AlicenseAqualityDmaintenanceFacilitates searching and accessing programming resources across platforms like Stack Overflow, MDN, GitHub, npm, and PyPI, aiding LLMs in finding code examples and documentation.642AGPL 3.0
- AlicenseAqualityCmaintenanceSearch 21 sources in one call — GitHub, npm, PyPI, arXiv, HN, X, Reddit, and more. No API keys to juggle, structured JSON back.21291MIT