Skip to main content
Glama
AI_SYNC MCP Server

AI_SYNC MCP Server

by baonpNexle

AI_SYNC Tooling with OpenAI + MCP

This project connects GPT-4 to a backend merchant store API using the Model Context Protocol (MCP). It allows querying and updating store data under a specific merchant class.

⚠️ Note: The server is currently hardcoded to work with the Tnc_Store merchant ID. Only data under this class is accessible to the AI.


⚙️ Setup Instructions

1. Clone the Repository

git clone https://github.com/your-org/ai_sync
cd ai_sync

2. Create a .env File

Inside the project root, create a .env file containing your OpenAI API key:

OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

3. Set Up the Python Environment with uv

If you haven’t installed uv, do so with:

curl -Ls https://astral.sh/uv/install.sh | sh

Then set up and activate the virtual environment:

uv venv .venv
source .venv/bin/activate

This will automatically install dependencies based on the uv.lock file.


4. Start the Merchant API Server

Ensure the backend server (AI_SYNC) is running locally on:

http://localhost:4001

Required POST endpoints:

  • /MerchantStore/findAllStores

  • /MerchantStore/findStore

  • /MerchantStore/addNewStore


5. Run the Tooling System

To launch the client and tool server together:

uv run client.py server.py
  • server.py provides tool definitions via MCP

  • client.py connects to GPT-4 and routes user queries


Related MCP server: Shopify MCP Server

💬 Example Queries

Query: Show me all the stores for this merchant

Query: I want to add a new store, CGV Cinemas - Vincom Nguyễn Chí Thanh, Hà Nội, with keywords: CGV, rạp chiếu phim, Hà Nội, Vincom, giải trí

⚠️ For multiline input, paste it as a single line. Shift+Enter will submit prematurely in most terminals.


📁 Basic Project Structure

ai_sync/
├── client.py         # MCP + OpenAI chat client
├── server.py         # Tool server using FastMCP
├── .env              # OpenAI API key
├── uv.lock           # Dependency lock file (used by uv)

✅ Available Tools

Tool Name

Description

findAllStores

List all stores for Tnc_Store

findStore

Natural language search for relevant stores

addNewStore

Add a store with full description and tags


🔒 Notes

  • Only data for Tnc_Store is accessible

  • Requires OpenAI GPT-4 (gpt-4o) and a functioning backend API

  • Runs entirely locally using standard input/output


Available Tools

3 tools
addNewStoreC

Add a new store to the merchant's database.

Args:
    merchantID: The merchant to which the store belongs (e.g., "tnc").
    name: Full name of the store.
    keywords: List of keywords describing the store.
    fullOriginContent: Full description of the store.
    fullTextSearch: Preprocessed text for search indexing.

Inputs: name (required), keywords (required), fullOriginContent (required), fullTextSearch (required). Returns: result

findAllStoresC

Find all stores under a merchantID class Args: merchantID: string

Inputs: no named parameters. Returns: result

findStoreB

Search for relevant stores under a merchant using a natural language query.

Args:
    merchantID: The merchant class to search under (e.g., "Tnc").
    queryText: A natural language description of the desired product or store.

Inputs: queryText (required). Returns: result

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    C2.9/5.0

    Scored across 3 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose: addNewStore creates a new store, findAllStores retrieves all stores for a merchant, and findStore searches stores with a natural language query. There is no overlap in functionality, and the descriptions make the distinctions explicit.

    Naming Consistency2/5

    The naming is inconsistent: addNewStore uses camelCase with a verb-noun pattern, findAllStores uses camelCase with a verb-noun pattern, and findStore uses camelCase but lacks a noun (it should be findStores or similar). While all are camelCase, the lack of a consistent noun in findStore and the mix of 'New' in addNewStore versus no qualifiers in others shows poor pattern adherence.

    Tool Count3/5

    With only 3 tools, the count feels thin for a store management domain, as it lacks update and delete operations. However, it covers basic create, list, and search functions, which is borderline but workable for minimal CRUD.

    Completeness2/5

    The tool set is significantly incomplete for store management. It includes add, find all, and search, but misses essential operations like update_store, delete_store, and get_store_by_id. This creates gaps that could lead to agent failures when full lifecycle management is needed.

    Maintenance

    ActivityInactive
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      B
      quality
      D
      maintenance
      Connects AI assistants to the TailorKit API, enabling them to manage customizable product templates for e-commerce platforms through natural language conversations.
      4
      4 npm
      6
      MIT
    • F
      license
      Not graded
      quality
      D
      maintenance
      Enables AI assistants to access and manage Shopify store data including products, orders, inventory, and analytics through the Model Context Protocol. It allows users to query store performance and customer details using natural language.
      -
    • A
      license
      Not graded
      quality
      C
      maintenance
      Connects Claude, ChatGPT, Cursor, or any MCP client to a Shopify store, enabling read-only access to themes, Liquid files, catalogue data, and store configuration through 122 tools.
      2
      Apache 2.0