GlobalSource Partners MCP Server

Search expert emerging-markets research on economics, politics, policy and sovereign risk.

使うべきか

品質と安全性

A
説明の品質
100%
スキーマの完全性
100%
命名の品質
100%
ポイズニングのリスク
100%
権限の一致
100%
プロトコルへの準拠
100%

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~3,323トークン数(ツール定義)
~9.3 KB一般的なレスポンスサイズ
注意への影響は大きい(128k コンテキストの 2.60%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "emerging-markets-research": {
      "url": "https://www.globalsourcepartners.com/mcp"
    }
  }
}

リモートエンドポイント

https://www.globalsourcepartners.com/mcpstreamable-http

できること

ツール一覧

ツール(4)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢search_research_entities(query, limit)

Search research entities by name or approximate name. Use this tool whenever a user refers to an entity by name and a research entity UUID is needed. Results are ranked by match quality and include the research entity UUIDs required by other research tools. When multiple results are returned, review the entity name, description, match type, match confidence, and available research count to determine the most appropriate entity before using its entity_uuid in another tool. This tool only searches existing research entities and does not create or modify data.

入力スキーマ

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "description": "The entity name or approximate entity reference to search for."
    },
    "limit": {
      "type": "integer",
      "description": "Maximum number of results to return. Minimum 1, maximum 50, default 10."
    }
  },
  "required": [
    "query"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "queried_name": {
      "type": "string",
      "description": "The normalized version of the query used to search for research entities."
    },
    "limit": {
      "type": "integer",
      "description": "The maximum number of matching research entities requested."
    },
    "total_results_count": {
      "type": "integer",
      "description": "The total number of matching research entities found before applying the result limit."
    },
    "results": {
      "type": "array",
      "description": "The matching research entities, ordered by match confidence.",
      "items": {
        "properties": {
          "entity_uuid": {
            "type": "string",
            "description": "The stable UUID of the research entity."
          },
          "entity_name": {
            "type": "string",
            "description": "The display name of the research entity."
          },
          "entity_normalized_name": {
            "type": "string",
            "description": "The normalized name of the research entity, used for matching and deduplication."
          },
          "entity_description": {
            "type": [
              "string",
              "null"
            ],
            "description": "A short description of the research entity, if available."
          },
          "available_research_count": {
            "type": "integer",
            "description": "The number of published research posts associated with this research entity."
          },
          "match_confidence": {
            "type": "number",
            "description": "A relative confidence score from 0.0 to 1.0 used to rank results. Scores should not be interpreted as probabilities."
          },
          "match_type": {
            "type": "string",
            "enum": [
              "normalized_name",
              "alias"
            ],
            "description": "How the research entity matched the query. Values are normalized_name or alias."
          },
          "matched_normalized_name": {
            "type": "string",
            "description": "The normalized name or alias value that matched the query."
          },
          "reason": {
            "type": "string",
            "description": "A short human-readable explanation of why this research entity was returned."
          }
        },
        "required": [
          "entity_uuid",
          "entity_name",
          "entity_normalized_name",
          "entity_description",
          "available_research_count",
          "match_confidence",
          "match_type",
          "matched_normalized_name",
          "reason"
        ]
      }
    }
  },
  "required": [
    "queried_name",
    "limit",
    "total_results_count",
    "results"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢read_research_author(author_uuid)

Read a single research author by author UUID. Use this tool when a user wants profile details for a specific research author returned by another research tool. The response includes author metadata, biography fields, profile URL, and visible sectors associated with the author. Missing, inactive, non-author, and hidden-sector-only authors return a generic not-found error.

入力スキーマ

{
  "type": "object",
  "properties": {
    "author_uuid": {
      "type": "string",
      "description": "The stable UUID of the research author to read.\n\nUse an author_uuid returned by another research tool.\n"
    }
  },
  "required": [
    "author_uuid"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "author_uuid": {
      "type": "string",
      "description": "The stable UUID of the research author."
    },
    "author_name": {
      "type": "string",
      "description": "The display name of the research author."
    },
    "author_short_biography": {
      "type": [
        "string",
        "null"
      ],
      "description": "A short biography or role summary for the research author, if available."
    },
    "author_biography_html": {
      "type": [
        "string",
        "null"
      ],
      "description": "The research author's biography as HTML, if available."
    },
    "author_profile_url": {
      "type": "string",
      "description": "The URL where this research author's profile can be viewed."
    },
    "author_sectors": {
      "type": "array",
      "description": "The visible sectors associated with this research author.",
      "items": {
        "properties": {
          "sector_uuid": {
            "type": "string",
            "description": "The stable UUID of the research sector."
          },
          "sector_name": {
            "type": "string",
            "description": "The display name of the research sector."
          }
        },
        "required": [
          "sector_uuid",
          "sector_name"
        ]
      }
    }
  },
  "required": [
    "author_uuid",
    "author_name",
    "author_short_biography",
    "author_biography_html",
    "author_profile_url",
    "author_sectors"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢search_research_posts(research_entity_uuids, published_before, published_after, order, limit, ...)

Search published research posts associated with one or more research entities. This tool requires research entity UUIDs. If only entity names are known, first call search_research_entities to obtain candidate research entities and their UUIDs. Use only entity_uuid values copied exactly from search_research_entities results. Never infer, guess, construct, or transform UUIDs from entity names. Use this tool only after selecting the most appropriate research entity from the search_research_entities results. Examples: - To find research about "United States", first call search_research_entities with "United States", review the returned matches, select the most appropriate entity, and then call this tool with the selected entity_uuid. - To find recent research about multiple entities, pass all selected entity_uuid values in research_entity_uuids. - To retrieve the next page of results, pass the previous response's next_cursor as cursor. Results can be filtered by publication date and retrieved using cursor-based pagination.

入力スキーマ

{
  "type": "object",
  "properties": {
    "research_entity_uuids": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "One or more research entity UUIDs to search against.\n\nThis field is required.\n\nAt least one research entity UUID must be supplied.\n\nDo not pass entity names.\n\nIf the user provides entity names rather than UUIDs, first call the \"search_research_entities\" tool and use the returned UUIDs from that tool.\n"
    },
    "published_before": {
      "type": "string",
      "format": "date-time",
      "description": "Only return posts published before this timestamp. Provide a complete RFC 3339 timestamp including a timezone, for example 2026-08-01T00:00:00Z. Date-only values such as 2026-08-01 are not accepted."
    },
    "published_after": {
      "type": "string",
      "format": "date-time",
      "description": "Only return posts published after this timestamp. Provide a complete RFC 3339 timestamp including a timezone, for example 2026-08-01T00:00:00Z. Date-only values such as 2026-08-01 are not accepted."
    },
    "order": {
      "type": "string",
      "enum": [
        "published_descending",
        "published_ascending"
      ],
      "description": "Sort results by publication time. Use 'published_descending' for newest first or 'published_ascending' for oldest first. Default is published_descending."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "description": "Maximum number of posts to return. Minimum 1, maximum 50, default 25."
    },
    "cursor": {
      "type": "string",
      "description": "Pagination cursor returned by a previous response. Use this to retrieve the next page of results."
    },
    "count_total_results": {
      "type": "boolean",
      "description": "Whether to include the total number of matching posts. Use false unless the total count is specifically needed. Calculating the total count may increase response time for large result sets."
    }
  },
  "required": [
    "research_entity_uuids"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "research_entities": {
      "description": "The research entities used to filter the search results.",
      "type": "array",
      "items": {
        "properties": {
          "entity_uuid": {
            "type": "string",
            "description": "The stable UUID of the research entity."
          },
          "entity_name": {
            "type": "string",
            "description": "The display name of the research entity."
          },
          "entity_normalized_name": {
            "type": "string",
            "description": "The normalized name of the research entity, used for matching and deduplication."
          },
          "entity_description": {
            "type": [
              "string",
              "null"
            ],
            "description": "A short description of the research entity, if available."
          }
        },
        "required": [
          "entity_uuid",
          "entity_name",
          "entity_normalized_name",
          "entity_description"
        ]
      }
    },
    "published_before": {
      "type": "string",
      "description": "The effective upper publication timestamp used for the search. If no upper publication date filter was supplied, this defaults to the current date and time."
    },
    "published_after": {
      "type": "string",
      "description": "The effective lower publication timestamp used for the search. If no lower publication date filter was supplied, this defaults to the earliest date from which research is available."
    },
    "order": {
      "type": "string",
      "description": "The sort order applied to the results."
    },
    "limit": {
      "type": "integer",
      "description": "The maximum number of research posts requested."
    },
    "next_cursor": {
      "type": [
        "string",
        "null"
      ],
      "description": "An opaque pagination cursor. Supply this value in a subsequent request to retrieve the next page of results. Clients should not attempt to interpret or modify the cursor value. If this field is null, there are no additional pages of results."
    },
    "total_results_count": {
      "type": [
        "integer",
        "null"
      ],
      "description": "The total number of matching research posts before pagination was applied. Returned only when count_total_results was requested with true; otherwise null."
    },
    "results": {
      "type": "array",
      "description": "The research posts matching the supplied research entities and filters, ordered according to the requested sort order.",
      "items": {
        "properties": {
          "post_uuid": {
            "type": "string",
            "description": "The stable UUID of the research post."
          },
          "post_title": {
            "type": "string",
            "description": "The title of the research post."
          },
          "post_type": {
            "type": "string",
            "description": "The type of research post, e.g., 'Report', 'In Brief', 'Presentation', etc."
          },
          "post_published": {
            "type": "string",
            "description": "The publication timestamp of the research post in ISO 8601 format."
          },
          "post_updated": {
            "type": "string",
            "description": "The most recent update timestamp of the research post in ISO 8601 format."
          },
          "matched_research_entities": {
            "type": "array",
            "description": "The subset of the requested research entities that caused this post to be returned. This is most useful when searching using multiple research entities.\n",
            "items": {
              "properties": {
                "entity_uuid": {
                  "type": "string",
                  "description": "The stable UUID of the research entity."
                },
                "entity_name": {
                  "type": "string",
                  "description": "The display name of the research entity."
                },
                "entity_normalized_name": {
                  "type": "string",
                  "description": "The normalized name of the research entity, used for matching and deduplication."
                },
                "entity_description": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "A short description of the research entity, if available."
                }
              },
              "required": [
                "entity_uuid",
                "entity_name",
                "entity_normalized_name",
                "entity_description"
              ]
            }
          },
          "post_authors": {
            "type": "array",
            "description": "The authors of this research post.",
            "items": {
              "properties": {
                "author_uuid": {
                  "type": "string",
                  "description": "The stable UUID of the research author."
                },
                "author_name": {
                  "type": "string",
                  "description": "The display name of the research author."
                }
              },
              "required": [
                "author_uuid",
                "author_name"
              ]
            }
          },
          "post_sectors": {
            "type": "array",
            "description": "The sectors associated with this research post. Only clients who are  permissioned for these sectors can access the full version of this post;  other clients will only be able to see a snippet of the post and  will not have access to the full content.\n",
            "items": {
              "properties": {
                "sector_uuid": {
                  "type": "string",
                  "description": "The stable UUID of the research sector."
                },
                "sector_name": {
                  "type": "string",
                  "description": "The display name of the research sector."
                }
              },
              "required": [
                "sector_uuid",
                "sector_name"
              ]
            }
          },
          "post_snippet": {
            "type": "string",
            "description": "A preview of this research post, which may be a human-written synopsis or a truncated excerpt from the research body."
          }
        },
        "required": [
          "post_uuid",
          "post_title",
          "post_type",
          "post_published",
          "post_updated",
          "matched_research_entities",
          "post_authors",
          "post_sectors",
          "post_snippet"
        ]
      }
    }
  },
  "required": [
    "research_entities",
    "published_before",
    "published_after",
    "order",
    "limit",
    "next_cursor",
    "total_results_count",
    "results"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢read_research_post(post_uuid)

Read a single published research post by post UUID. Use this tool after calling search_research_posts and selecting the most relevant result. The response includes post metadata, authors, sectors, body HTML, and a URL. Depending on the authenticated MCP user's permissions, the body HTML and URL may expose either the full research post or teaser content. Missing, unpublished, and hidden-sector posts return a generic not-found error.

入力スキーマ

{
  "type": "object",
  "properties": {
    "post_uuid": {
      "type": "string",
      "description": "The stable UUID of the research post to read.\n\nUse a post_uuid returned by search_research_posts.\n"
    }
  },
  "required": [
    "post_uuid"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

出力スキーマ

{
  "type": "object",
  "properties": {
    "post_uuid": {
      "type": "string",
      "description": "The stable UUID of the research post."
    },
    "post_title": {
      "type": "string",
      "description": "The title of the research post."
    },
    "post_type": {
      "type": "string",
      "description": "The type of research post, e.g., 'Report', 'In Brief', 'Presentation', etc."
    },
    "post_published": {
      "type": "string",
      "description": "The publication timestamp of the research post in ISO 8601 format."
    },
    "post_updated": {
      "type": "string",
      "description": "The most recent update timestamp of the research post in ISO 8601 format."
    },
    "post_authors": {
      "type": "array",
      "description": "The authors of this research post.",
      "items": {
        "properties": {
          "author_uuid": {
            "type": "string",
            "description": "The stable UUID of the research author."
          },
          "author_name": {
            "type": "string",
            "description": "The display name of the research author."
          }
        },
        "required": [
          "author_uuid",
          "author_name"
        ]
      }
    },
    "post_sectors": {
      "type": "array",
      "description": "The sectors associated with this research post. Only clients who are permissioned for these sectors can access the full version of this post; other clients will receive teaser content.\n",
      "items": {
        "properties": {
          "sector_uuid": {
            "type": "string",
            "description": "The stable UUID of the research sector."
          },
          "sector_name": {
            "type": "string",
            "description": "The display name of the research sector."
          }
        },
        "required": [
          "sector_uuid",
          "sector_name"
        ]
      }
    },
    "post_body_html": {
      "type": "string",
      "description": "The HTML body available for this research post. This may be full post content or teaser content depending on the MCP user's permissions."
    },
    "post_url": {
      "type": "string",
      "description": "The URL where this research post can be viewed. This may be a full post URL or teaser URL depending on the MCP user's permissions."
    },
    "post_snippet_notice": {
      "type": [
        "string",
        "null"
      ],
      "description": "A notice shown when the returned body contains only teaser or snippet content instead of the full research post. Null when the MCP user can view the full post."
    }
  },
  "required": [
    "post_uuid",
    "post_title",
    "post_type",
    "post_published",
    "post_updated",
    "post_authors",
    "post_sectors",
    "post_body_html",
    "post_url",
    "post_snippet_notice"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 4 件
検証済みバージョンは記録されていませんツール 4 件