Company API MCP Server Template

Company API MCP Server Template

A template for building Model Context Protocol servers that connect to company REST APIs using FastMCP, providing authentication handling, error management, and example tools for common API operations.

Category
Visit Server

README

Company API MCP Server Template

A template for creating Model Context Protocol (MCP) servers that integrate with your company's API using FastMCP.

Overview

This template provides a starting point for building MCP servers that can interact with your company's REST API. It includes:

  • Authentication handling (Bearer token)
  • Error handling and logging
  • Example tools for common API operations
  • Environment variable configuration
  • Proper async/await patterns

Setup

  1. Clone this repository

  2. Install dependencies:

    pip install -e .
    
  3. Set environment variables:

    export API_BASE_URL="https://your-api.example.com"
    export API_KEY="your-api-key-here"
    

Configuration

The server can be configured using environment variables:

  • API_BASE_URL: Base URL of your company's API
  • API_KEY: API key for authentication

Usage

Running the server

python server.py

Available Tools

The template includes two example tools:

  1. get_user_info(user_id): Retrieve user information by ID
  2. search_items(query, limit): Search for items with optional limit

Customization

To adapt this template for your API:

  1. Update the API_BASE_URL and authentication method in server.py
  2. Modify the existing tools or add new ones based on your API endpoints
  3. Update the response formatting to match your API's data structure
  4. Add any additional error handling specific to your API

Example Tools Implementation

@mcp.tool()
async def your_custom_tool(param: str) -> str:
    """Description of what your tool does.
    
    Args:
        param: Description of the parameter
    """
    data = await make_api_request(f"your-endpoint/{param}")
    
    if not data or "error" in data:
        return "Error message"
    
    # Format and return your data
    return formatted_response

MCP Integration

To use this server with an MCP client, add it to your MCP configuration:

{
  "mcpServers": {
    "company-api": {
      "command": "python",
      "args": ["/path/to/server.py"],
      "env": {
        "API_BASE_URL": "https://your-api.example.com",
        "API_KEY": "your-api-key"
      }
    }
  }
}

Development

Project Structure

.
├── server.py           # Main MCP server implementation
├── main.py            # Simple CLI entry point
├── pyproject.toml     # Project configuration
├── README.md          # This file
└── .gitignore         # Git ignore rules

Adding New Tools

  1. Define your tool function with the @mcp.tool() decorator
  2. Use make_api_request() to call your API
  3. Handle errors appropriately
  4. Format the response for the user

License

[Add your license here]

Contributing

[Add contribution guidelines here]

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured