Skip to main content
Glama
dkmaker

mcp-function-app-tester

by dkmaker

MCP Function App Tester

License: MIT

A TypeScript-based MCP server that enables testing of Azure Function Apps through Cline. This tool allows you to test and interact with Function App endpoints directly from your development environment.

Installation

npm install dkmaker-mcp-function-app-tester

Related MCP server: MySQL Server MCP Server

Features

  • Test Function App endpoints with different HTTP methods

  • Support for GET, POST, PUT, and DELETE requests

  • Detailed response information

  • Custom header support

  • Request body handling for POST/PUT methods

  • Authentication support:

    • Basic Authentication (username/password)

    • Bearer Token Authentication

    • API Key Authentication (custom header)

Authentication

The server supports two authentication methods that can be configured via environment variables:

Basic Authentication

Set both environment variables to enable Basic Authentication:

AUTH_BASIC_USERNAME=your-username
AUTH_BASIC_PASSWORD=your-password

Bearer Token

Set this environment variable to enable Bearer Token authentication:

AUTH_BEARER=your-token

API Key

Set both environment variables to enable API Key authentication:

AUTH_APIKEY_HEADER_NAME=X-API-Key  # The header name to use (e.g., X-API-Key, api-key, etc.)
AUTH_APIKEY_VALUE=your-api-key     # The actual API key value

Note: Authentication precedence order:

  1. Basic Authentication (if username and password are set)

  2. Bearer Token (if token is set and Basic Auth is not configured)

  3. API Key (if header name and value are set, and no other auth is configured)

Usage

Once installed, you can use the Function App Tester through Cline. The server provides tools to test endpoints at the base URL: http://localhost:7071/api

Example usage:

// Test a GET endpoint
{
  "method": "GET",
  "endpoint": "/users"
}

// Test a POST endpoint with body
{
  "method": "POST",
  "endpoint": "/users",
  "body": {
    "name": "John Doe",
    "email": "john@example.com"
  }
}

// Test with custom headers
{
  "method": "GET",
  "endpoint": "/secure/data",
  "headers": {
    "Authorization": "Bearer token123"
  }
}

Development

  1. Clone the repository:

git clone https://github.com/dkmaker/mcp-function-app-tester.git
cd mcp-function-app-tester
  1. Install dependencies:

npm install
  1. Build the project:

npm run build

For development with auto-rebuild:

npm run watch

License

This project is licensed under the MIT License - see the LICENSE file for details.

Available Tools

1 tool
test_endpointC

Test a Function App endpoint and get detailed response information. The endpoint will be prepended to the base url which is: http://localhost:7071/api

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNoOptional request body for POST/PUT requests
endpointYesEndpoint path (e.g. "/users"). Will be appended to base URL.
headersNoOptional request headers
methodYesHTTP method to use

TDQS

C2.9/5.0
Behavior2/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 mentions testing an endpoint and getting 'detailed response information,' but lacks critical behavioral details such as error handling, timeout behavior, authentication requirements, rate limits, or what 'detailed' entails. This is insufficient for a tool that performs HTTP operations.

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 concise and front-loaded, consisting of two sentences that directly state the tool's purpose and base URL. There is no wasted text, though it could be slightly more informative without sacrificing brevity.

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

Completeness2/5

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

Given the complexity of HTTP testing (4 parameters, no output schema, no annotations), the description is incomplete. It lacks details on response format, error cases, or behavioral traits, leaving significant gaps for an agent to understand how to use the tool effectively.

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 schema fully documents all parameters. The description adds minimal value by noting the base URL context ('http://localhost:7071/api'), but does not provide additional semantics beyond what the schema already covers. This meets the baseline for high schema coverage.

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

Purpose4/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: 'Test a Function App endpoint and get detailed response information.' It specifies the verb ('test') and resource ('Function App endpoint'), and mentions the base URL context. However, with no sibling tools, it cannot differentiate from alternatives, so it doesn't reach the highest score.

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

Usage Guidelines2/5

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, prerequisites, or constraints. It only states what the tool does without context for its application, leaving the agent without usage direction.

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.

  1. 1 tool updatev1.0.0
    • First observedtest_endpoint

TDQS

B3/5.0
Disambiguation5/5

With only one tool, there is no possibility of ambiguity or overlap between tools. The single tool has a clear, distinct purpose that cannot be confused with any other tool in this set.

Naming Consistency5/5

The naming follows a consistent verb_noun pattern (test_endpoint). With only one tool, there is no inconsistency to evaluate, and the naming is clear and appropriate for its function.

Tool Count2/5

A single tool is too few for a server named 'mcp-function-app-tester', which suggests broader testing capabilities. This minimal set feels thin and incomplete for the implied scope of testing Function App endpoints comprehensively.

Completeness1/5

The tool surface is severely incomplete for testing Function App endpoints. It only provides a basic test endpoint function, lacking essential operations like listing endpoints, managing test configurations, validating responses, or handling different HTTP methods and authentication scenarios.

Maintenance

ActivityInactive
ResponsivenessSyncing

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

Related MCP Servers

  • A
    license
    A
    quality
    F
    maintenance
    A TypeScript-based MCP server that enables testing of REST APIs through Cline. This tool allows you to test and interact with any REST API endpoints directly from your development environment.
    1
    93
    101
    MIT
  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    An MCP server that wraps the Azure CLI. As LLMs are very good at generating Azure CLI commands, this server allows your LLM to list resources, update/create/delete them, fix errors (by looking at the logs), fix security issues...
    81
    -
  • A
    license
    A
    quality
    D
    maintenance
    A Node.js/TypeScript MCP server that facilitates interactive communication between LLMs and users, allowing AI assistants to request user input, display notifications, and manage command-line chat sessions.
    5
    29
    1
    MIT

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/dkmaker/mcp-function-app-tester'

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