We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/noah-vh/mcp-server-clickup'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
�
�MMg� � �l � d dl mZ d dlZd dlmZmZ d dlmZmZm Z d dl
mZmZm
Z
mZ dZ G d� d� Zy) � )�annotationsN)�URL�Headers)�PlainTextResponse�RedirectResponse�Response)�ASGIApp�Receive�Scope�Sendz6Domain wildcard patterns must be like '*.example.com'.c �0 � e Zd Z d dd�Zdd�Zy)�TrustedHostMiddlewareNc �� � |�dg}|D ]H }d|dd vsJ t � �|j d� s�'|dk7 s�-|j d� r�?J t � � || _ t |� | _ d|v | _ || _ y )N�*� z*.)�ENFORCE_DOMAIN_WILDCARD�
startswith�app�list�
allowed_hosts� allow_any�www_redirect)�selfr r r �patterns �lC:\Users\noahv\Documents\GitHub\clickup-operator\.venv\Lib\site-packages\starlette/middleware/trustedhost.py�__init__zTrustedHostMiddleware.__init__
s� � � � � �E�M�$�G��g�a�b�k�)�B�+B�B�)��!�!�#�&�7�c�>��)�)�$�/�H�1H�H�/� %� ���!�-�0����
�-���(��� c � � K � | j s|d dvr| j |||� � d { ��� y t |�� }|j dd� j d� d }d}d}| j
D ]; }||k( s%|j
d � r|j |d
d � rd} n
d|z |k( s�:d}�= |r| j |||� � d { ��� y |rM| j rAt |�� } | j d| j z �
� }
t t |
� �� }n
t dd�� } ||||� � d { ��� y 7 ��7 �w7 �
�w)N�type)�http� websocket)�scope�host� �:r Fr r Tzwww.)�netloc)�urlzInvalid host headeri� )�status_code)r r r �get�splitr r �endswithr r �replacer&