By Wang Cheng & Cheng Tan
MMCP is becoming a "fortress" for companies to acquire AI traffic, with application vendors and SaaS service providers competing to build their own MCP Servers. However, challenges arise as well:
● MCP is a brand-new communication protocol that offers a language-agnostic data format in JSON-RPC. However, when faced with new features like "Resource, Tool, and Prompts," there are high costs associated with building and debugging the Server.
● The majority of MCP Servers released in various markets have not yet supported Streamable HTTP, resulting in renovation costs and long-term maintenance costs at the protocol level.
● Enterprise users building their own MCP market lack best practices and comprehensive solutions.
In light of these challenges, Higress has open-sourced the ability to “batch convert existing APIs into MCP Servers” and “support protocol unloading based on Higress-deployed MCP Servers without the need to bear the maintenance work associated with releasing new versions of MCP," and has launched the Higress MCP Marketplace.
MCP has released two versions, 2025-03-26 and 2024-11-05, with 2025-03-26 supporting Streamable HTTP. Early adopters of MCP face significant upgrade workloads.
Although MCP is booming, it is still in its early development stage. A single MCP market struggles to meet the diverse demands of all parties.There are significant differences in technological capabilities, application scenarios, business needs, and choices among different enterprises and developers. This makes a diversified MCP market inevitable.
Currently, the MCP market can be roughly divided into four categories:
● "App Store" players: A centralized hub for MCP across the web, with the greatest advantage being the quantity of Servers and Clients. They will also launch the latest resources immediately and open upload access, but so far, they have not provided debugging, hosting, or other value-added services.
Customers need to deploy server resources on their own for debugging and invocation. For example, mcpmarket.com, mcp.so, etc.
● Client players: Maintained by the client, such as large model robots and AI programming, which invoke the officially supported Servers using natural language and code. They perform adequate reasoning training during invocation, resulting in better results for MCP calls and outputs.
For example, Cline and Tongyi Lingma, etc.
● Platform players: Maintained by cloud vendors and comprehensive open-source communities, providing management services for the entire life cycle of MCP, including debugging, invocation, release, hosting, and other functions. They simplify the construction process of Agent applications and are divided into Official Hosting (Host) and Local Deployment (Local).
The Official Hosting (Host) allows users to invoke and test directly, with computational resources provided by the platform; in Local Deployment (Local), users deploy server resources themselves for debugging and invocation.
For example, Bailian, Moti, Dify, and Spring AI Alibaba can also be categorized here, simplifying implementation and invocation methods but not providing computational resource support.
● Vertical players: Maintained by single open-source projects, cloud products, or PaaS vendors that provide various operational environment support for MCP Servers. Utilizing their specialized expertise, they offer value-added services in areas such as network protocol adaptation, request routing, security, and server operation and expansion.
Higress MCP Marketplace falls under the fourth type mentioned above. Unlike other marketplaces, Higress primarily addresses the following three needs:
● Rapid conversion of existing APIs into MCP Servers: Users do not need to start from scratch. Higress Marketplace targets enterprises with a large number of existing APIs, wishing to quickly enjoy the benefits of MCP.
● Enterprise-level requirements: Utilize the mature capabilities of the gateway in authentication, authorization, rate limiting, and observability to meet the needs of enterprise-level MCP services.
● Enterprises building their own MCP market: The Higress MCP Marketplace serves as a complete example, providing a full MCP market solution for enterprises, including rapid generation of MCP servers while providing capabilities for authentication, traffic control, and more during external service invocations.
Nearly 50 MCP Servers launched in the first phase have all been implemented and maintained by Higress officials, and the implementation code has been published as best practices to help enterprises deeply understand how Higress converts existing APIs into MCP Servers.
A major feature of Higress MCP Marketplace is its independence from development platforms, large models, and clients; as long as they comply with relevant protocols, they can be used.See the Q&A section at the end for details on Q4/Q5/Q6. Additionally, it includes features such as batch conversion of existing APIs, fine-tuning, and enterprise-level capabilities.
Utilizing existing infrastructure has become a key strategy for most enterprises stepping into the MCP era. However, it brings a new problem: converting existing REST APIs into MCP Servers is a "repetitive physical task" that also requires daily maintenance, including interface updates and server stability guarantees.
To allow AI assistants to invoke REST APIs, developers need to:
This process is not only cumbersome, but also requires code updates every time an API changes. Higress API-to-MCP can thoroughly solve this problem.With simple declarative configuration, any REST API can be converted into an MCP Server without writing any code, and the entire process takes only a few minutes.
Let’s look at a practical example to see the powerful capabilities of API-to-MCP. Here is the configuration to convert Amap’s geocoding API into an MCP tool:
server:
name: rest-amap-server
config:
apiKey: your-api-key-here
tools:
- name: maps_geo
description: "Converts detailed structured addresses into latitude and longitude coordinates. Supports parsing landmark names and building names into latitude and longitude coordinates."
args:
- name: address
description: "The structured address information to be parsed."
required: true
- name: city
description: "The specified city for the query."
required: false
requestTemplate:
url: "https://restapi.amap.com/v3/geocode/geo?key={{.config.apiKey}}&address={{.args.address}}&city={{.args.city}}&source=ts_mcp"
method: GET
headers:
- key: x-api-key
value: "{{.config.apiKey}}"
responseTemplate:
body: |
# Geocoding Information
{{- range $index, $geo := .geocodes }}
## Location {{add $index 1}}
- **Country**: {{ $geo.country }}
- **Province**: {{ $geo.province }}
- **City**: {{ $geo.city }}
- **City Code**: {{ $geo.citycode }}
- **District/County**: {{ $geo.district }}
- **Street**: {{ $geo.street }}
- **Number**: {{ $geo.number }}
- **Administrative Code**: {{ $geo.adcode }}
- **Coordinates**: {{ $geo.location }}
- **Level**: {{ $geo.level }}
{{- end }}
What does this configuration do?
When the AI assistant invokes this tool, it will:
🔹 Build the API request using the provided address and city parameters
🔹 Invoke the Amap API
🔹 Convert the JSON response into an easily readable Markdown format
🔹 Return the formatted results back to the AI assistant
The entire process requires no coding; just a simple configuration file.
The true power of API-to-MCP lies in handling complex JSON responses. Using GJSON path syntax, you can execute advanced queries and transformations:
<!-- Using the gjson function for complex queries -->
Active Users: {{gjson "users.#(active==true)#.name"}}
<!-- Array filtering with multiple conditions -->
Active Developers Over 30: {{gjson "users.#(active==true && age>30)#.name"}}
<!-- Using modifiers -->
Usernames (in reverse order): {{gjson "users.@reverse.#.name"}}
<!-- Iterating and filtering results -->
Admins:
{{range $user := gjson "users.#(roles.#(==admin)>0)#"}}
- {{$user.name}} ({{$user.age}})
{{end}}
These powerful querying capabilities allow you to extract the most valuable information from complex API responses and present it in a way that is most understandable and usable for AI assistants.
Although the auto-generated configuration is functionally complete, it often lacks precision. Especially when APIs return complex data structures, failure to manually fine-tune the configurations may lead to inaccurate understanding of data by LLMs, thus affecting user experience.
For instance, it may lead to the following issues:
🔹 Information overload: The LLM's context window is limited; excessive irrelevant information can dilute important content.
🔹 Lack of clarity: Complex nested relationships can be lost in flat descriptions.
🔹 Lack of semantics: Technical code and jargon that are unconverted may be difficult for LLMs to understand correctly.
🔹 Hallucination risk: Faced with unfamiliar data structures, LLMs may produce incorrect inferences.
Higress supports the fine-tuning of request and response templates using Go Templates and GJSON expressions (for detailed capabilities, please refer to the documentation). Careful tuning can resolve the above issues.
Compared to manual tuning, Higress tuning only requires configuration changes, and the process of configuration changes is completely lossless in terms of traffic, with SSE connections also remaining intact.
Let’s look at a case before and after tuning:
Before tuning (based on the open-source Higress openapi-to-mcp command-line tool, auto-generated from Swagger documentation):
server:
name: ecommerce-api
tools:
- name: searchProducts
description: "Search for products in the e-commerce platform"
args:
- name: query
description: "Search query string"
type: string
required: true
- name: category
description: "Product category"
type: string
required: false
- name: limit
description: "Maximum number of results to return"
type: integer
default: 10
requestTemplate:
url: "https://api.example.com/products/search"
method: GET
argsToUrlParam: true
responseTemplate:
prependBody: |
# Search Results
Below is the API response with these fields:
- **success**: Boolean indicating if the request was successful
- **total**: Total number of matching products
- **page**: Current page number
- **pageSize**: Number of items per page
- **products**: Array of product objects with the following fields:
- **id**: Product unique identifier
- **name**: Product name
- **description**: Product description
- **price**: Product price
- **compareAtPrice**: Original price before discount
- **currency**: Currency code (e.g., USD, EUR)
- **availability**: Product availability status
- **metadata**: Technical metadata
- **attributes**: Product attributes
- **variants**: Product variations
- **images**: Product images
- **categories**: Categories the product belongs to
- **tags**: Product tags
- **brand**: Product brand information
- **shipping**: Shipping information
- **ratings**: Product ratings and reviews
Original response:
After tuning:
server:
name: ecommerce-api
tools:
- name: searchProducts
description: "Search for products on the e-commerce platform and return a list of products that match the search criteria, including basic information, prices, stock status, ratings, etc."
args:
- name: query
description: "Search keywords, which can be product names, brands, models, or keywords in the description."
type: string
required: true
- name: category
description: "Product category, such as 'electronics', 'clothing', 'home', etc."
type: string
required: false
- name: limit
description: "Number of results to return, range 1-50."
type: integer
minimum: 1
maximum: 50
default: 10
requestTemplate:
url: "https://api.example.com/products/search"
method: GET
argsToUrlParam: true
responseTemplate:
body: |
# Product Search Results
Found {{.total}} products matching "{{.query}}", below are the {{len .products}} most relevant results:
{{range $index, $product := .products}}
## {{add $index 1}}. {{$product.name}}
**Price**: {{if $product.onSale}}~~{{$product.compareAtPrice}} {{$product.currency}}~~ **{{$product.price}} {{$product.currency}}** (Save {{percentage $product.compareAtPrice $product.price}}%){{else}}{{$product.price}} {{$product.currency}}{{end}}
**Brand**: {{$product.brand.name}}
**Stock Status**: {{if eq $product.availability "in_stock"}}In Stock{{else if eq $product.availability "low_stock"}}Low Stock{{else}}Out of Stock{{end}}
{{if gt (len $product.ratings.reviews) 0}}**Rating**: {{$product.ratings.averageRating}}/5 ({{$product.ratings.reviewCount}} reviews){{end}}
{{$product.description | truncate 200 "..."}}
{{if gt (len $product.highlights) 0}}**Product Features**:
{{range $highlight := $product.highlights}}
- {{$highlight}}
{{end}}{{end}}
{{end}}
{{if gt .total (len .products)}}
There are more results not displayed; you can adjust the search criteria for more precise matches.
{{end}}
Here is an actual response example for a smartwatch product, showcasing how the tuned template handles raw data:
# Product Search Results
Found 128 products matching "smartwatch." Below are the 10 most relevant results:
## 1. TechFit Pro Smartwatch
**Price**: ~~1299 CNY~~ **899 CNY** (Save 30.8%)
**Brand**: TechFit
**Stock Status**: In Stock
**Rating**: 4.7/5 (342 reviews)
The TechFit Pro smartwatch is equipped with a high-definition color touchscreen, supports heart rate monitoring, blood oxygen detection, various sports mode tracking, and sleep analysis. It has a waterproof design with a battery life of up to 7 days.
**Product Features**:
- High-definition AMOLED touchscreen
- 7-day ultra-long battery life
- Heart rate and blood oxygen monitoring
- 30 sports modes
- 5ATM waterproof
## 2. FitBit Versa 3
**Price**: 1499 CNY
**Brand**: FitBit
**Stock Status**: In Stock
**Rating**: 4.5/5 (287 reviews)
The FitBit Versa 3 smartwatch integrates GPS positioning, supports 24/7 heart rate monitoring, has a built-in voice assistant, can receive phone calls, and has a battery life of up to 6 days.
**Product Features**:
- Built-in GPS
- Voice assistant functionality
- Call answering
- 20+ sports modes
- Waterproof up to 50 meters
## 3. Apple Watch Series 7
**Price**: 2999 CNY
**Brand**: Apple
**Stock Status**: Low Stock
**Rating**: 4.9/5 (1243 reviews)
The Apple Watch Series 7 features a larger display, faster charging speed, IP6X dust resistance certification, swimming-level waterproofing, and all-day blood oxygen monitoring and electrocardiogram functions.
**Product Features**:
- Retina-level OLED display
- Fast charging
- Electrocardiogram and blood oxygen monitoring
- Fall detection and emergency SOS
- Supports Apple Pay
There are more results not displayed; you can adjust the search criteria for more precise matches.
With this structured response format, LLMs can clearly understand the key information of each product without being overwhelmed by extensive technical details and the raw JSON structure.
Based on the above example, we can extract the following fine-tuning strategies for MCP configurations:
🔹 Identify and extract core fields: Analyze the information users truly need and eliminate technical details and internal data.
🔹 Convert jargons: Transform technical code and jargon into descriptions that LLMs can easily understand.
🔹 Add contextual information: Help LLMs understand the integrity and scope of data.
🔹 Structure key information: Use a hierarchical structure to make the importance and relationships of information clear.
Batch conversion of existing APIs and fine-tuning solve production efficiency issues, while enterprise-level capabilities meet diverse enterprise-level needs, such as authentication, traffic control, protocol version upgrades, etc.
Higress is built on Envoy, inheriting the mature capabilities of traditional API gateways in authentication, authorization, rate limiting, and observability, while also being optimized for AI scenarios.These capabilities are highly aligned with the needs of MCP services:
● Unified authentication and authorization: Higress provides an OAuth2 plugin that meets the new MCP protocol's requirements for authentication and authorization.
Developers do not need to write complex authentication code and can achieve secure user authentication and access control with simple configurations.
● Fine-grained traffic control: Through Higress's rate-limiting plugin, different invocation quotas can be set for different users and tools to prevent resource abuse and service overload.
● Full link observability: Higress integrates open-source observability solutions such as Prometheus and OTel, providing complete metrics monitoring and distributed tracing capabilities that allow operations teams to monitor the health and performance of MCP services in real-time.
● High performance: Compared to traditional gateways, Higress offers superior performance, supports horizontal scaling, and can handle high invocation volumes of MCP with ease.
● Audit logs: Records all tool invocation behaviors to meet compliance requirements while providing data support for security analysis.
Currently, there are two versions of the MCP protocol: 20241105 and 20250326. Given the rapid development of the MCP Server ecosystem, the standard's sedimentation and optimization speed cannot keep up.This also poses risks for early adopters of MCP; when a large number of MCP Servers are built, facing future protocol version upgrades requires significant renovation efforts.
As a gateway, Higress can unload the MCP protocol, much like it did with traditional API gateways, to uniformly unload client protocols such as HTTP1/HTTP2/HTTP3, thereby abstracting multiple version protocol details.
Higress can support two protocols, MCP version 20241105 and 20250326, at a single access point.At the transport layer of the protocol, it supports POST+SSE mode as well as the latest Streamable HTTP mode. Additionally, it natively supports WebSocket, allowing connection persistence with modified WebSocket configurations and graceful disconnections, preparing the technical groundwork for the evolution of MCP protocols.
When deploying MCP Servers, you have the option to use cloud vendor-provided computation platform products or choose to host them on Higress, which has significant advantages in deployment and operations:
● Elastic scaling: Automatic scaling capabilities based on Kubernetes adjust the instance count based on traffic, ensuring high availability and resource utilization efficiency.
● Gray release: Supports gray releases and A/B testing for MCP Servers, reducing update risks.
● One-click deployment: Provides Helm Charts to simplify the deployment process and reduce the operational threshold.
● High performance: Can easily handle hundreds of thousands of tool invocation requests per second while maintaining millisecond-level response times to meet enterprise-level application performance needs.
The servers released on the Higress MCP Marketplace are maintained by Higress and provide implementation use cases along with a number of free usage sessions (one account can access for free 10 times a day).
For example, the Stock Assistant is a multifunctional API service designed for the stock, futures, and foreign exchange markets.It offers various tools, including candlestick charts, quotes, rankings, etc., to help users obtain real-time and historical data for technical analysis and decision support.
Through these tools, users can easily access relevant information on A-shares, Hong Kong stocks, U.S. stocks, global indices, domestic and foreign futures, as well as foreign exchange markets. Specific tools include:
A-share Candlestick Chart
A-share Adjusted Candlestick Chart
A-share Quote
A-share Ranking
After logging in at mcp.higress.ai, you can go to the page and directly copy the generated URL on the right. We also provide SSE endpoints and Streamable HTTP endpoints, supporting access according to the client usage situation as needed.
If you reach the trial access limit and wish to continue using it, you can refer to the instructions in the Overview tab to apply for an API Key yourself, configure it below, and then regenerate the URL:
● Collaborate with multiple API vendors, such as Alibaba Cloud's cloud market, to continuously offer more free trial credits for different Servers.
● Launch more commonly used Servers for coding scenarios and integrate deeply with Tongyi Lingma to facilitate integration for Tongyi Lingma users.
● Integrated with Nacos MCP Registry, allowing enterprise users to easily launch equally powerful MCP Servers with a single click when building their own MCP Marketplace.
Q1: What benefits do I receive after uploading my MCP Server to the Higress MCP Marketplace?
A1: You gain traffic from Higress and the enterprise version of the Alibaba Cloud API Gateway, receiving more invocation volumes globally. Additionally, we recommend to Alibaba Cloud's MCP market, such as the MCP market at Alibaba Cloud, which reduces your communication costs.
Q2: Our MCP Server is already listed in other MCP markets; what additional development work is needed to upload it to the Higress MCP Marketplace?
A2: If you have existing API documentation, no additional development work is required. The API to MCP tool automatically converts it into a YAML configuration for an MCP Server. The tool link is: https://github.com/higress-group/openapi-to-mcpserver
Q3: How can I upload an MCP Server developed based on Higress to the Higress MCP Marketplace?
A3: You can first refer to this example and submit a PR to our open-source repository: https://github.com/alibaba/higress/pull/2080/files
Then contact our staff to discuss cooperation details, DingTalk group number 107690002780, or WeChat (ID: zjjxg2018).
Q4: Which MCP Clients can call MCP Servers implemented based on Higress, such as Tongyi Lingma, Cline, Cherry Studio, etc.?
A4: Any client that supports POST + SSE mode and Streamable HTTP mode can invoke them.
Q5: Which AI application development platforms support integration with MCP Servers implemented based on Higress, such as Bailian, Dify, Spring AI Alibaba, LangChain, etc.?
A5: Any development platform that supports interfacing with the MCP protocol can integrate.
Q6: Which large models can recognize MCP Servers implemented based on Higress, such as Tongyi, DeepSeek, OpenAI, etc.?
A6: Any large model that supports Function Call or can produce responses in specified formats (e.g., XML) can recognize them.
Q7: Our MCP Server has been deployed; how do we leverage Higress's enterprise capabilities?
A7: Download Higress and follow the official documentation for deployment. If your services are deployed on Alibaba Cloud, we recommend Higress Enterprise Edition. For detailed comparisons, see: https://www.alibabacloud.com/help/en/api-gateway/cloud-native-api-gateway/product-overview/product-comparison
Q8: Our MCP Server has not been deployed yet; can it be hosted directly on Higress?
A8: Yes, users do not need to deploy servers themselves. Based on Higress's high performance and horizontal scalability, it can easily host thousands of MCP Servers. If you have more stringent requirements for performance, stability, and security, we recommend Higress Enterprise Edition.
How to Solve the Occasional 404 Error After Enabling HTTP/2 in Envoy?
552 posts | 53 followers
FollowAlibaba Cloud Native Community - April 9, 2025
Alibaba Cloud Native Community - April 16, 2025
Alibaba Cloud Native Community - March 27, 2025
Alibaba Cloud Native Community - April 17, 2025
Alibaba Cloud Native Community - April 3, 2025
Alibaba Cloud Native Community - May 13, 2025
552 posts | 53 followers
FollowAccelerate AI-driven business and AI model training and inference with Alibaba Cloud GPU technology
Learn MoreTop-performance foundation models from Alibaba Cloud
Learn MoreOffline SDKs for visual production, such as image segmentation, video segmentation, and character recognition, based on deep learning technologies developed by Alibaba Cloud.
Learn MoreSelf-service network O&M service that features network status visualization and intelligent diagnostics capabilities
Learn MoreMore Posts by Alibaba Cloud Native Community