# Cant use MCP server in Flows

**URL:** <https://community.crewai.com/t/cant-use-mcp-server-in-flows/7556>\
**Category:** General\
**Tags:** crewai\
**Created:** [June 3, 2026, 8:06pm UTC](https://community.crewai.com/t/cant-use-mcp-server-in-flows/7556 "2026-06-03T20:06:05Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Jai\_Pande](https://sea1.discourse-cdn.com/flex025/user_avatar/community.crewai.com/jai_pande/32/4974_2.png) [@Jai\_Pande](https://community.crewai.com/u/Jai_Pande)\
**Post date:** [June 3, 2026, 8:06pm UTC](https://community.crewai.com/t/cant-use-mcp-server-in-flows/7556/1 "2026-06-03T20:06:05Z")

</div>

Hi @maxmoura/ @Pratik_Kumar ,

Any idea how to use MCP servers in Flows, its working perfectly in Crews but not in flows, only when i deploy it to AMP it gives me this MCPServerHTTP is not serializable issue

---

<div class="post-metadata">

**Author:** ![doker1](https://sea1.discourse-cdn.com/flex025/user_avatar/community.crewai.com/doker1/32/2910_2.png) [@doker1](https://community.crewai.com/u/doker1)\
**Post date:** [June 23, 2026, 1:54pm UTC](https://community.crewai.com/t/cant-use-mcp-server-in-flows/7556/2 "2026-06-23T13:54:29Z")

</div>

It seems the problem isn’t with MCP itself, but with how Flows serializes objects before launching/deploying.

The error “MCPServerHTTP is not serializable” usually means you’re trying to pass in a “live” object (HTTP client/server/class) that works fine at runtime (like in Crews), but can’t be packaged as JSON when passed to Flows/AMP.

What I’d check:

Where exactly is MCPServerHTTP created?  
If it’s created inside the Flow graph and passed on as a variable, Flows is most likely trying to serialize it.  
Separating init vs. runtime  
In some MCP systems, the server needs to be initialized outside of Flow (at application startup), and only the config or reference/ID is passed to Flow. AMP deployment adds strict serialization  
The fact that “it crashes in AMP, but works in Crews” is almost always a sign that AMP is running everything through a strict serializer (JSON-safe graph).

Basically, the solution is usually the same:  
don’t pass MCPServerHTTP as an object between nodes, but store it as a singleton/service and access it through an interface (or through a wrapper that is serialized).
