ifly-workflow
This a simple implementation of an MCP server using iFlytek. It enables calling iFlytek workflows through MCP tools.
claude mcp add --transport stdio iflytek-ifly-workflow-mcp-server uvx --from git+https://github.com/iflytek/ifly-workflow-mcp-server ifly_workflow_mcp_server \ --env CONFIG_PATH="<path to your config.yaml>"
How to use
This MCP server enables integration with iFlytek workflows by exposing the workflow execution capabilities through the MCP client. It supports a range of workflow features such as sequential, parallel, looped, and nested execution, as well as multiple node types and a hook mechanism for streaming output. By registering the server under an MCP client, you can publish and manage workflows, then trigger them via the MCP protocol and receive results as part of your chat or automation flows. To use it, prepare your MCP config and point the server to a YAML configuration that specifies workflow metadata and authentication information, then interact with your workflows through the MCP interface and the bound applications in your environment.
How to install
Prerequisites:
- Python 3.8+ installed on your system
- Git available to fetch packages
- Access to the internet to pull the MCP server and dependencies
- Optional: pipx for isolated Python CLI installations
Installation steps:
-
Install the MCP client (uvx) or ensure it is available in your environment:
- With pipx (recommended):
pipx install uvx - Or using Python's pip:
python -m pip install uvx
- With pipx (recommended):
-
Install or run the MCP server from its GitHub source using uvx:
- From GitHub (recommended):
uvx --from git+https://github.com/iflytek/ifly-workflow-mcp-server ifly_workflow_mcp_server
- From GitHub (recommended):
-
Prepare a config.yaml for your workflows and place it where the server can read it. For MCP integration, you typically set an environment variable to point to this config:
- flow_id: 'flow id' # required name: 'flow name' # optional description: 'flow description' # optional api_key: 'API Key:API Secret' # required -
If you are using the sample in the README as a guide, you can bind CONFIG_PATH to your local config file:
export CONFIG_PATH=/path/to/your/config.yamlThen run the MCP registration snippet as shown in the example to expose the server under ifly-workflow-mcp-server.
-
Validate installation by listing/triggering a simple workflow through your MCP client and verify the responses are streamed or returned as expected.
Additional notes
Tips and notes:
- The server relies on a CONFIG_PATH pointing to a YAML config with authentication details; ensure API keys or credentials are kept secure and not committed to source control.
- If you encounter network or dependency errors, verify Python environment compatibility and that uvx is correctly installed in your PATH or via your chosen enclosure (e.g., pipx).
- When debugging, you can temporarily set CONFIG_PATH to a test workflow configuration to validate MCP interactions before going live.
- The MCP server supports streaming outputs via the hook mechanism; ensure your client can handle incremental updates if you rely on real-time results.
- If you need to switch from uvx to a node-based or other runtime, adjust the mcp_config accordingly (not applicable for this Python/uvx-based server).
Related MCP Servers
mcp-vegalite
MCP server from isaacwasserman/mcp-vegalite-server
github-chat
A Model Context Protocol (MCP) for analyzing and querying GitHub repositories using the GitHub Chat API.
nautex
MCP server for guiding Coding Agents via end-to-end requirements to implementation plan pipeline
pagerduty
PagerDuty's official local MCP (Model Context Protocol) server which provides tools to interact with your PagerDuty account directly from your MCP-enabled client.
futu-stock
mcp server for futuniuniu stock
mcp -boilerplate
Boilerplate using one of the 'better' ways to build MCP Servers. Written using FastMCP