Skip to main content
Glama
gyuco
by gyuco

MCP REST Server

A Model Context Protocol (MCP) server that provides REST API client functionality with authentication support and Swagger documentation integration.

Features

  • Multiple Authentication Methods: Support for both token-based and login-based authentication

  • Swagger Integration: Automatic endpoint discovery and documentation from OpenAPI/Swagger specs

  • Automatic Token Management: Handles token refresh and re-authentication

  • Comprehensive HTTP Methods: Support for GET, POST, PUT, DELETE, and PATCH requests

  • Error Handling: Robust error handling with retry logic

  • MCP Compatible: Fully compatible with the Model Context Protocol

Related MCP server: Swagger/Postman MCP Server

Installation

npm install
npm run build

Development

npm run dev

Configuration

The server supports two authentication methods:

Token Authentication

{
  "baseUrl": "https://api.example.com",
  "swaggerUrl": "https://api.example.com/swagger.json",
  "auth": {
    "type": "token",
    "token": "your-api-token-here"
  },
  "timeout": 30000,
  "retries": 3
}

Login Authentication

{
  "baseUrl": "https://api.example.com",
  "swaggerUrl": "https://api.example.com/swagger.json",
  "auth": {
    "type": "login",
    "username": "your-username",
    "password": "your-password",
    "loginEndpoint": "/auth/login",
    "tokenField": "access_token"
  },
  "timeout": 30000,
  "retries": 3
}

Available Tools

1. configure_rest_client

Configure the REST client with authentication and API details.

Parameters:

  • baseUrl (required): Base URL for the REST API

  • auth (required): Authentication configuration (token or login)

  • swaggerUrl (optional): URL to Swagger/OpenAPI documentation

  • timeout (optional): Request timeout in milliseconds (default: 30000)

  • retries (optional): Number of retries for failed requests (default: 3)

2. http_request

Make HTTP requests to the configured API.

Parameters:

  • method (required): HTTP method (GET, POST, PUT, DELETE, PATCH)

  • path (required): API endpoint path

  • params (optional): Query parameters or request body parameters

  • body (optional): Request body for POST, PUT, PATCH requests

  • headers (optional): Additional headers

3. get_swagger_documentation

Get the complete list of available endpoints from Swagger documentation.

4. search_endpoints

Search for endpoints in the Swagger documentation.

Parameters:

  • query (required): Search query to find matching endpoints

5. get_endpoint_info

Get detailed information about a specific endpoint.

Parameters:

  • path (required): Endpoint path

  • method (required): HTTP method

6. check_authentication

Check if the client is currently authenticated.

7. logout

Logout and clear authentication state.

Usage Examples

Basic Setup

  1. Configure the client:

{
  "baseUrl": "https://jsonplaceholder.typicode.com",
  "auth": {
    "type": "token",
    "token": "dummy-token"
  }
}
  1. Make a GET request:

{
  "method": "GET",
  "path": "/posts/1"
}
  1. Make a POST request:

{
  "method": "POST",
  "path": "/posts",
  "body": {
    "title": "New Post",
    "body": "Post content",
    "userId": 1
  }
}

With Swagger Documentation

{
  "baseUrl": "https://petstore.swagger.io/v2",
  "swaggerUrl": "https://petstore.swagger.io/v2/swagger.json",
  "auth": {
    "type": "token",
    "token": "your-api-key"
  }
}

Then you can:

  • Search endpoints: search_endpoints with query "pet"

  • Get endpoint info: get_endpoint_info with path "/pet" and method "POST"

  • View all documentation: get_swagger_documentation

Authentication Flow

Token Authentication

  1. Token is stored and used immediately

  2. Added to requests as Authorization: Bearer <token>

  3. If 401 received, no automatic retry (token assumed invalid)

Login Authentication

  1. Makes login request to specified endpoint

  2. Extracts token from response using tokenField

  3. Stores token in memory

  4. Adds token to subsequent requests

  5. If 401 received, automatically re-authenticates and retries

Error Handling

  • Network errors: Automatic retry with exponential backoff

  • Authentication errors: Automatic re-authentication for login-based auth

  • Validation errors: Clear error messages with details

  • API errors: HTTP status and error message forwarding

Development

Project Structure

src/
├── types.ts          # TypeScript type definitions
├── auth.ts           # Authentication manager
├── swagger.ts        # Swagger documentation parser
├── rest-client.ts    # REST client implementation
└── index.ts          # MCP server implementation

Building

npm run build

Running

npm start

MCP Client Configuration

The MCP REST server now supports automatic configuration through multiple methods, eliminating the need to configure APIs manually for each project.

Configuration Methods (in order of priority)

  1. Command Line Arguments (highest priority)

  2. Environment Variables

  3. Configuration File

  4. Manual Configuration (via MCP tools - lowest priority)

Cursor Configuration

{
  "mcpServers": {
    "mcp-rest-github": {
      "command": "node",
      "args": ["/path/to/your/mcp-rest/dist/index.js"],
      "env": {
        "MCP_REST_BASE_URL": "https://api.github.com",
        "MCP_REST_AUTH_TYPE": "token",
        "MCP_REST_TOKEN": "your-github-token-here",
        "MCP_REST_SWAGGER_URL": "https://raw.githubusercontent.com/github/rest-api-description/main/descriptions/api.github.com/api.github.com.json"
      }
    },
    "mcp-rest-petstore": {
      "command": "node",
      "args": ["/path/to/your/mcp-rest/dist/index.js"],
      "env": {
        "MCP_REST_BASE_URL": "https://petstore.swagger.io/v2",
        "MCP_REST_AUTH_TYPE": "token",
        "MCP_REST_TOKEN": "your-api-key",
        "MCP_REST_SWAGGER_URL": "https://petstore.swagger.io/v2/swagger.json"
      }
    }
  }
}

Option 2: Auto-Configuration with Config Files

{
  "mcpServers": {
    "mcp-rest-github": {
      "command": "node",
      "args": ["/path/to/your/mcp-rest/dist/index.js", "--config", "/path/to/your/mcp-rest/examples/github-api.json"]
    },
    "mcp-rest-petstore": {
      "command": "node",
      "args": ["/path/to/your/mcp-rest/dist/index.js", "--config", "/path/to/your/mcp-rest/examples/petstore.json"]
    }
  }
}

Option 3: Auto-Configuration with Command Line Arguments

{
  "mcpServers": {
    "mcp-rest-github": {
      "command": "node",
      "args": [
        "/path/to/your/mcp-rest/dist/index.js",
        "--base-url", "https://api.github.com",
        "--auth-type", "token",
        "--token", "your-github-token-here",
        "--swagger-url", "https://raw.githubusercontent.com/github/rest-api-description/main/descriptions/api.github.com/api.github.com.json"
      ]
    }
  }
}

Claude Desktop Configuration

Location:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Use the same configuration options as Cursor above.

Configuration Examples

The project includes several example configurations in the examples/ directory:

  • examples/github-api.json - GitHub API configuration

  • examples/petstore.json - Swagger Petstore API configuration

  • examples/jsonplaceholder.json - JSONPlaceholder API configuration

Environment Variables

Variable

Description

MCP_REST_BASE_URL

Base URL for the REST API (required)

MCP_REST_AUTH_TYPE

Authentication type: 'token' or 'login' (required)

MCP_REST_TOKEN

API token (required for token auth)

MCP_REST_USERNAME

Username (required for login auth)

MCP_REST_PASSWORD

Password (required for login auth)

MCP_REST_LOGIN_ENDPOINT

Login endpoint path (required for login auth)

MCP_REST_TOKEN_FIELD

Token field name in login response (default: access_token)

MCP_REST_SWAGGER_URL

URL to Swagger/OpenAPI documentation

MCP_REST_TIMEOUT

Request timeout in milliseconds (default: 30000)

MCP_REST_RETRIES

Number of retries for failed requests (default: 3)

MCP_REST_CONFIG_FILE

Path to JSON configuration file

Note: Replace /path/to/your/mcp-rest/ with the actual path to your MCP REST server directory.

Usage in Claude/Cursor

If you've configured the server with auto-configuration (environment variables, CLI args, or config file), the server will be ready to use immediately:

Make a GET request to /posts/1
Show me all available endpoints
Search for endpoints related to "user"

With Manual Configuration

If you haven't provided auto-configuration, you can still configure the client manually:

  1. Configure the client first:

Please configure the REST client with:
- Base URL: https://api.example.com
- Authentication: token
- Token: your-api-token-here
- Swagger URL: https://api.example.com/swagger.json
  1. Then make API requests:

Make a GET request to /users/123

Testing the Configuration

You can test your configuration before using it in Claude/Cursor:

# Test with config file
node dist/index.js --config examples/jsonplaceholder.json

# Test with CLI arguments
node dist/index.js --base-url https://api.github.com --auth-type token --token your-token

# Test with environment variables
MCP_REST_BASE_URL=https://httpbin.org MCP_REST_AUTH_TYPE=token MCP_REST_TOKEN=test node dist/index.js

If you see "✅ Auto-configured REST client for [URL]", the configuration is working correctly.

License

MIT

Available Tools

7 tools
check_authenticationB

Check if the client is currently authenticated

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

B3/5.0
Behavior2/5

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

No annotations are present, so the description must carry full behavioral disclosure. It fails to specify what constitutes 'authenticated', whether it returns a boolean or throws an error, or if there are side effects. The minimal description adds little transparency.

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 succinct sentence with no wasted words, which is appropriate for a simple tool. However, it is very brief and could include more context without sacrificing conciseness.

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?

The description lacks information about the return value or output format. Given the tool's simplicity, it should at least indicate that it returns a boolean or status. No output schema exists to compensate.

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

Parameters4/5

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

The input schema has zero parameters, so the description does not need to provide parameter details. Schema description coverage is trivially 100%, warranting a baseline score of 4.

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 specifies the verb 'Check' and the resource 'authentication status', clearly indicating the tool's function. However, it does not differentiate from sibling tools like 'logout' or 'http_request', which may also involve authentication state.

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, such as before sensitive operations or after login. There is no mention of prerequisites or context.

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

configure_rest_clientC

Configure the REST client with base URL, authentication, and optional Swagger documentation URL

ParametersJSON Schema
NameRequiredDescriptionDefault
baseUrlYesBase URL for the REST API
swaggerUrlNoURL to Swagger/OpenAPI documentation (optional)
authYes
timeoutNoRequest timeout in milliseconds (default: 30000)
retriesNoNumber of retries for failed requests (default: 3)

TDQS

C2.9/5.0
Behavior2/5

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

No annotations provided, so description must disclose side effects. It mentions authentication but does not state that login auth may trigger network calls or that configuration persists globally. The description is insufficient for an agent to understand behavioral implications.

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?

A single, well-structured sentence that front-loads the key purpose. No unnecessary words.

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?

As a configuration tool with complex auth options and no output schema, the description is too brief. It does not explain return value, persistence of settings, or prerequisites. An agent would benefit from more detail on how configuration affects subsequent requests.

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 80%, so description adds some value by summarizing parameters into groups (base URL, auth, Swagger URL). However, it does not elaborate on the auth object's two distinct modes, leaving the agent to infer from schema.

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 configures a REST client with base URL, authentication, and optional Swagger URL. It distinguishes from siblings like http_request which use the client, but could be more specific about the configuration scope.

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?

No explicit guidance on when to use this tool versus alternatives. It should indicate that this setup is required before making HTTP requests, but the description is silent on usage context.

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

get_endpoint_infoC

Get detailed information about a specific endpoint

ParametersJSON Schema
NameRequiredDescriptionDefault
pathYesEndpoint path
methodYesHTTP method

TDQS

C2.9/5.0
Behavior2/5

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

No annotations are provided, and the description does not disclose behavioral traits such as read-only nature, authentication requirements, or side effects. The single sentence is insufficient for transparency.

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 extremely concise at one sentence, which is efficient. However, it lacks front-loading of critical details and could be structured to include more context without losing conciseness.

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 lack of output schema and annotations, the description is too minimal. It does not explain what 'detailed information' entails or how the response is structured, leaving the agent underinformed.

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 baseline is 3. The description does not add meaning beyond the schema's parameter descriptions. No further elaboration on path or method format is given.

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 verb 'Get' and the resource 'detailed information about a specific endpoint', distinguishing it from siblings like 'search_endpoints' (search) and 'get_swagger_documentation' (whole documentation). However, it could be more specific about what 'detailed information' includes.

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?

No guidance on when to use this tool versus alternatives like 'search_endpoints' or when not to use it. The description lacks context for decision-making.

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

get_swagger_documentationA

Get the complete Swagger/OpenAPI documentation for available endpoints

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.5/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 full burden for behavioral disclosure. It does not mention that this is a read-only operation, the format of the output (e.g., JSON/YAML), or any potential size or performance implications.

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 of 10 words, highly concise and front-loaded. Every word serves a purpose, with no redundancy.

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

Completeness3/5

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

Given no parameters and no output schema, the description is minimal but adequate for a simple documentation retrieval tool. However, it lacks behavioral details and usage hints, making it barely sufficient.

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

Parameters4/5

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

The input schema has no parameters, so baseline is 4. The description adds no parameter information (none needed), meeting the baseline expectation.

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 retrieves the complete Swagger/OpenAPI documentation for available endpoints. The verb 'Get' and resource 'complete Swagger/OpenAPI documentation' are specific, and it distinguishes from siblings like get_endpoint_info which returns a single endpoint's info.

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 like get_endpoint_info or search_endpoints. It only states what it does, 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.

http_requestB

Make an HTTP request to the configured API

ParametersJSON Schema
NameRequiredDescriptionDefault
methodYesHTTP method
pathYesAPI endpoint path
paramsNoQuery parameters (for GET) or request body parameters
bodyNoRequest body (for POST, PUT, PATCH)
headersNoAdditional headers

TDQS

B3.1/5.0
Behavior2/5

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

No annotations provided; description does not mention side effects, idempotency, authentication needs, rate limits, or error behavior. For a generic HTTP tool, this is insufficient.

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?

Description is one short sentence with no wasted words. Could include slightly more detail but remains concise.

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?

Tool has 5 params, includes nested objects, and no output schema. Description does not explain return format, error handling, or usage patterns, leaving the agent underinformed.

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%; each parameter has a clear description. Description adds no additional meaning beyond the schema, so baseline of 3 is appropriate.

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?

Description states verb, resource, and context: 'Make an HTTP request to the configured API'. Clearly distinguishes from sibling tools like check_authentication or configure_rest_client.

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?

No guidance on when to use this tool vs alternatives (e.g., search_endpoints, get_swagger_documentation). Missing when-not-to-use or prerequisite conditions.

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

logoutA

Logout and clear authentication state

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior2/5

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

Lacks detail on side effects (e.g., token invalidation, session termination) beyond the vague 'clear authentication state'. No annotations to compensate.

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?

Extremely concise—two words—with no extraneous information. Perfectly front-loaded.

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?

Adequate for a simple, parameterless tool. However, it could mention potential side effects or prerequisites (e.g., must be authenticated).

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

Parameters4/5

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

No parameters exist, so the description cannot add value beyond the schema. Baseline of 4 is appropriate.

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 action 'Logout' and the consequence 'clear authentication state', 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.

Usage Guidelines3/5

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 check_authentication, but the use case is straightforward and implied.

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

search_endpointsB

Search for endpoints in the Swagger documentation

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch query to find matching endpoints

TDQS

B3.2/5.0
Behavior2/5

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

No annotations are present, so the description must convey behavioral traits. It only states it 'searches', but does not disclose whether it is read-only, what the response format is, or any side effects. This is insufficient for a tool with zero annotation coverage.

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 with 8 words, front-loading the action and resource. Every word is purposeful with no redundancy.

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 lack of output schema and annotations, the description is too minimal. It does not explain the return format, whether results are paginated, or what fields are returned, leaving the agent with significant gaps for correct invocation.

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% and the schema description for 'query' is adequate. The tool description adds no extra meaning beyond the schema, meeting the baseline of 3.

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 uses a specific verb 'search' and resource 'endpoints' with scope 'in the Swagger documentation', clearly distinguishing it from siblings like get_endpoint_info (single endpoint details) and get_swagger_documentation (whole document).

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?

No guidance is provided on when to use this tool versus alternatives such as get_endpoint_info or http_request. The description lacks any context about prerequisites, use cases, 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.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 7 tool updatesv1.0.0
    • First observedcheck_authentication
    • First observedconfigure_rest_client
    • First observedget_endpoint_info
    • First observedget_swagger_documentation
    • First observedhttp_request
    • First observedlogout
    • First observedsearch_endpoints

TDQS

A3.6/5.0
Disambiguation5/5

Each tool has a distinct purpose: authentication checking, configuration, endpoint info, documentation retrieval, HTTP requests, logout, and endpoint search. No overlap.

Naming Consistency5/5

All tool names follow the verb_noun snake_case pattern (e.g., check_authentication, get_endpoint_info), ensuring predictability.

Tool Count5/5

7 tools cover the core functionality of a REST client server without being excessive or sparse, aligning well with the server's scope.

Completeness4/5

The tool set covers authentication lifecycle, API documentation exploration, and HTTP requests. Missing features like configuration management (e.g., updating base URL without reconfiguring) are minor.

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

  • F
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables AI agents to dynamically discover and interact with APIs through Swagger/OpenAPI specifications and Postman collections using a strategic four-tool approach. It streamlines API integration by providing universal tools for endpoint discovery, detailed request information, and authenticated execution.
    1
    -
  • A
    license
    A
    quality
    D
    maintenance
    Exposes Swagger/OpenAPI API documentation to AI models, enabling exploration, search, and interaction with endpoints, schemas, and execution of API calls.
    14
    13
    2
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables natural language interaction with any Swagger/OpenAPI-defined API, allowing discovery, parameterized calls, and automated testing through large language models.
    5
    Apache 2.0

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/gyuco/mcp-http-client'

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