diff --git a/src/harness/client.ts b/src/harness/client.ts
index 1b367d56a6b92..c735ffa7f3e34 100644
--- a/src/harness/client.ts
+++ b/src/harness/client.ts
@@ -801,7 +801,6 @@ export class SessionClient implements LanguageService {
     }
 
     mapCode: typeof notImplemented = notImplemented;
-    getImports: typeof notImplemented = notImplemented;
 
     private createFileLocationOrRangeRequestArgs(positionOrRange: number | TextRange, fileName: string): protocol.FileLocationOrRangeRequestArgs {
         return typeof positionOrRange === "number"
diff --git a/src/harness/fourslashImpl.ts b/src/harness/fourslashImpl.ts
index b2a7bf9a15b44..81ffed9cd698f 100644
--- a/src/harness/fourslashImpl.ts
+++ b/src/harness/fourslashImpl.ts
@@ -4652,28 +4652,6 @@ ${changes.join("\n// ---\n")}
 ${after}`;
         this.baseline("mapCode", baseline, ".mapCode.ts");
     }
-
-    public verifyGetImports(fileName: string, expectedImports: string[]): void {
-        const actualImports = this.languageService.getImports(fileName);
-        if (actualImports.length !== expectedImports.length) {
-            throw new Error(`Expected ${expectedImports.length} imports for ${fileName}, got ${actualImports.length}
-    Expected:
-${expectedImports}
-    Actual:
-${actualImports}
-`);
-        }
-        for (let i = 0; i < expectedImports.length; i++) {
-            if (actualImports[i] !== expectedImports[i]) {
-                throw new Error(`Expected at ${fileName} index ${i}: ${expectedImports[i]}, got ${actualImports[i]}
-    Expected:
-${expectedImports}
-    Actual:
-${actualImports}
-`);
-            }
-        }
-    }
 }
 
 function updateTextRangeForTextChanges({ pos, end }: ts.TextRange, textChanges: readonly ts.TextChange[]): ts.TextRange {
diff --git a/src/harness/fourslashInterfaceImpl.ts b/src/harness/fourslashInterfaceImpl.ts
index 530b66c733d3b..bb10cbf744a99 100644
--- a/src/harness/fourslashInterfaceImpl.ts
+++ b/src/harness/fourslashInterfaceImpl.ts
@@ -257,10 +257,6 @@ export class VerifyNegatable {
     public baselineMapCode(ranges: FourSlash.Range[][], changes: string[] = []): void {
         this.state.baselineMapCode(ranges, changes);
     }
-
-    public getImports(fileName: string, imports: string[]): void {
-        return this.state.verifyGetImports(fileName, imports);
-    }
 }
 
 export interface CompletionsResult {
@@ -2051,8 +2047,3 @@ export interface RenameOptions {
     readonly providePrefixAndSuffixTextForRename?: boolean;
     readonly quotePreference?: "auto" | "double" | "single";
 }
-
-export interface VerifyGetImportsOptions {
-    fileName: string;
-    imports: string[];
-}
diff --git a/src/server/protocol.ts b/src/server/protocol.ts
index d4e7f60bbf0cd..03c3ccb85faea 100644
--- a/src/server/protocol.ts
+++ b/src/server/protocol.ts
@@ -202,7 +202,6 @@ export const enum CommandTypes {
     ProvideInlayHints = "provideInlayHints",
     WatchChange = "watchChange",
     MapCode = "mapCode",
-    CopilotRelated = "copilotRelated",
 }
 
 /**
@@ -2417,18 +2416,6 @@ export interface MapCodeResponse extends Response {
     body: readonly FileCodeEdits[];
 }
 
-export interface CopilotRelatedRequest extends FileRequest {
-    command: CommandTypes.CopilotRelated;
-    arguments: FileRequestArgs;
-}
-
-export interface CopilotRelatedItems {
-    relatedFiles: readonly string[];
-}
-
-export interface CopilotRelatedResponse extends Response {
-    body: CopilotRelatedItems;
-}
 /**
  * Synchronous request for semantic diagnostics of one file.
  */
diff --git a/src/server/session.ts b/src/server/session.ts
index 3be8045143fa9..9730c0ba2ea8a 100644
--- a/src/server/session.ts
+++ b/src/server/session.ts
@@ -938,7 +938,6 @@ const invalidPartialSemanticModeCommands: readonly protocol.CommandTypes[] = [
     protocol.CommandTypes.ProvideCallHierarchyIncomingCalls,
     protocol.CommandTypes.ProvideCallHierarchyOutgoingCalls,
     protocol.CommandTypes.GetPasteEdits,
-    protocol.CommandTypes.CopilotRelated,
 ];
 
 const invalidSyntacticModeCommands: readonly protocol.CommandTypes[] = [
@@ -2032,6 +2031,7 @@ export class Session<TMessage = string> implements EventSender {
             };
         });
     }
+
     private mapCode(args: protocol.MapCodeRequestArgs): protocol.FileCodeEdits[] {
         const formatOptions = this.getHostFormatOptions();
         const preferences = this.getHostPreferences();
@@ -2052,14 +2052,6 @@ export class Session<TMessage = string> implements EventSender {
         return this.mapTextChangesToCodeEdits(changes);
     }
 
-    private getCopilotRelatedInfo(args: protocol.FileRequestArgs): protocol.CopilotRelatedItems {
-        const { file, project } = this.getFileAndProject(args);
-
-        return {
-            relatedFiles: project.getLanguageService().getImports(file),
-        };
-    }
-
     private setCompilerOptionsForInferredProjects(args: protocol.SetCompilerOptionsForInferredProjectsArgs): void {
         this.projectService.setCompilerOptionsForInferredProjects(args.options, args.projectRootPath);
     }
@@ -3802,9 +3794,6 @@ export class Session<TMessage = string> implements EventSender {
         [protocol.CommandTypes.MapCode]: (request: protocol.MapCodeRequest) => {
             return this.requiredResponse(this.mapCode(request.arguments));
         },
-        [protocol.CommandTypes.CopilotRelated]: (request: protocol.CopilotRelatedRequest) => {
-            return this.requiredResponse(this.getCopilotRelatedInfo(request.arguments));
-        },
     }));
 
     public addProtocolHandler(command: string, handler: (request: protocol.Request) => HandlerResponse): void {
diff --git a/src/services/services.ts b/src/services/services.ts
index c16aad81180d8..fb5e9a0857929 100644
--- a/src/services/services.ts
+++ b/src/services/services.ts
@@ -2,7 +2,6 @@ import {
     __String,
     ApplicableRefactorInfo,
     ApplyCodeActionCommandResult,
-    arrayFrom,
     AssignmentDeclarationKind,
     BaseType,
     BinaryExpression,
@@ -234,7 +233,6 @@ import {
     Node,
     NodeArray,
     NodeFlags,
-    nodeIsSynthesized,
     noop,
     normalizePath,
     normalizeSpans,
@@ -1604,7 +1602,6 @@ const invalidOperationsInPartialSemanticMode: readonly (keyof LanguageService)[]
     "provideInlayHints",
     "getSupportedCodeFixes",
     "getPasteEdits",
-    "getImports",
 ];
 
 const invalidOperationsInSyntacticMode: readonly (keyof LanguageService)[] = [
@@ -3381,18 +3378,6 @@ export function createLanguageService(
         );
     }
 
-    function getImports(fileName: string): readonly string[] {
-        synchronizeHostData();
-        const file = getValidSourceFile(fileName);
-        let imports: Set<string> | undefined;
-        for (const specifier of file.imports) {
-            if (nodeIsSynthesized(specifier)) continue;
-            const name = program.getResolvedModuleFromModuleSpecifier(specifier, file)?.resolvedModule?.resolvedFileName;
-            if (name) (imports ??= new Set()).add(name);
-        }
-        return imports ? arrayFrom(imports) : emptyArray;
-    }
-
     const ls: LanguageService = {
         dispose,
         cleanupSemanticCache,
@@ -3467,7 +3452,6 @@ export function createLanguageService(
         preparePasteEditsForFile,
         getPasteEdits,
         mapCode,
-        getImports,
     };
 
     switch (languageServiceMode) {
diff --git a/src/services/types.ts b/src/services/types.ts
index b8cec56bb5840..39c1636fefcd1 100644
--- a/src/services/types.ts
+++ b/src/services/types.ts
@@ -699,7 +699,6 @@ export interface LanguageService {
     getSupportedCodeFixes(fileName?: string): readonly string[];
 
     /** @internal */ mapCode(fileName: string, contents: string[], focusLocations: TextSpan[][] | undefined, formatOptions: FormatCodeSettings, preferences: UserPreferences): readonly FileTextChanges[];
-    /** @internal */ getImports(fileName: string): readonly string[];
 
     dispose(): void;
     preparePasteEditsForFile(fileName: string, copiedTextRanges: TextRange[]): boolean;
diff --git a/tests/baselines/reference/api/typescript.d.ts b/tests/baselines/reference/api/typescript.d.ts
index 4a0b8a9e15148..ad3e7bea3c6e8 100644
--- a/tests/baselines/reference/api/typescript.d.ts
+++ b/tests/baselines/reference/api/typescript.d.ts
@@ -123,7 +123,6 @@ declare namespace ts {
                 ProvideInlayHints = "provideInlayHints",
                 WatchChange = "watchChange",
                 MapCode = "mapCode",
-                CopilotRelated = "copilotRelated",
             }
             /**
              * A TypeScript Server message
@@ -1839,16 +1838,6 @@ declare namespace ts {
             export interface MapCodeResponse extends Response {
                 body: readonly FileCodeEdits[];
             }
-            export interface CopilotRelatedRequest extends FileRequest {
-                command: CommandTypes.CopilotRelated;
-                arguments: FileRequestArgs;
-            }
-            export interface CopilotRelatedItems {
-                relatedFiles: readonly string[];
-            }
-            export interface CopilotRelatedResponse extends Response {
-                body: CopilotRelatedItems;
-            }
             /**
              * Synchronous request for semantic diagnostics of one file.
              */
@@ -3534,7 +3523,6 @@ declare namespace ts {
             private getDocumentHighlights;
             private provideInlayHints;
             private mapCode;
-            private getCopilotRelatedInfo;
             private setCompilerOptionsForInferredProjects;
             private getProjectInfo;
             private getProjectInfoWorker;
diff --git a/tests/cases/fourslash/fourslash.ts b/tests/cases/fourslash/fourslash.ts
index 54d7276991009..3b07ac5a4981b 100644
--- a/tests/cases/fourslash/fourslash.ts
+++ b/tests/cases/fourslash/fourslash.ts
@@ -472,7 +472,6 @@ declare namespace FourSlashInterface {
             }
         }): void;
         baselineMapCode(ranges: Range[][], changes: string[]): void;
-        getImports(fileName: string, imports: string[]): void;
     }
     class edit {
         caretPosition(): Marker;
diff --git a/tests/cases/fourslash/getImportsDuplicate.ts b/tests/cases/fourslash/getImportsDuplicate.ts
deleted file mode 100644
index 1e4e069978a75..0000000000000
--- a/tests/cases/fourslash/getImportsDuplicate.ts
+++ /dev/null
@@ -1,16 +0,0 @@
-///<reference path="fourslash.ts"/>
-
-// @Filename: /first.ts
-//// export function foo() {
-////     return 1;
-//// }
-//// export function bar() {
-////     return 2;
-//// }
-
-// @Filename: /index.ts
-//// import { foo } from "./first";
-//// import { bar } from './first';
-//// console.log(foo() + bar())
-
-verify.getImports('/index.ts', ['/first.ts'])
diff --git a/tests/cases/fourslash/getImportsDynamic.ts b/tests/cases/fourslash/getImportsDynamic.ts
deleted file mode 100644
index 0a16718bdcb02..0000000000000
--- a/tests/cases/fourslash/getImportsDynamic.ts
+++ /dev/null
@@ -1,12 +0,0 @@
-///<reference path="fourslash.ts"/>
-
-// @Filename: /first.ts
-//// export function foo() {
-////     return 1;
-//// }
-// @Filename: /index.ts
-//// let bar: typeof import('./first').foo = function bar() {
-////     return 2;
-//// }
-
-verify.getImports('/index.ts', ['/first.ts'])
diff --git a/tests/cases/fourslash/getImportsJSXFactory.ts b/tests/cases/fourslash/getImportsJSXFactory.ts
deleted file mode 100644
index 2ccc885443a8b..0000000000000
--- a/tests/cases/fourslash/getImportsJSXFactory.ts
+++ /dev/null
@@ -1,108 +0,0 @@
-///<reference path="fourslash.ts"/>
-
-// @strict: true
-// @jsx: react-jsx
-// @jsxImportSource: preact
-// @filename: /node_modules/preact/index.d.ts
-//// type Defaultize<Props, Defaults> =
-//// 	// Distribute over unions
-//// 	Props extends any // Make any properties included in Default optional
-//// 		? Partial<Pick<Props, Extract<keyof Props, keyof Defaults>>> &
-//// 				// Include the remaining properties from Props
-//// 				Pick<Props, Exclude<keyof Props, keyof Defaults>>
-//// 		: never;
-//// export namespace JSXInternal {
-////     interface HTMLAttributes<T = {}> { }
-////     interface SVGAttributes<T = {}> { }
-////     type LibraryManagedAttributes<Component, Props> = Component extends {
-////         defaultProps: infer Defaults;
-////     }
-////         ? Defaultize<Props, Defaults>
-////         : Props;
-//// 
-////     interface IntrinsicAttributes {
-////         key?: any;
-////     }
-//// 
-////     interface Element extends VNode<any> { }
-//// 
-////     interface ElementClass extends Component<any, any> { }
-//// 
-////     interface ElementAttributesProperty {
-////         props: any;
-////     }
-//// 
-////     interface ElementChildrenAttribute {
-////         children: any;
-////     }
-//// 
-////     interface IntrinsicElements {
-////         div: HTMLAttributes;
-////     }
-//// }
-//// export const Fragment: unique symbol;
-//// export type ComponentType<T = {}> = {};
-//// export type ComponentChild = {};
-//// export type ComponentChildren = {};
-//// export type VNode<T = {}> = {};
-//// export type Attributes = {};
-//// export type Component<T = {}, U = {}> = {};
-// @filename: /node_modules/preact/jsx-runtime/index.d.ts
-//// export { Fragment } from '..';
-//// import {
-////     ComponentType,
-////     ComponentChild,
-////     ComponentChildren,
-////     VNode,
-////     Attributes
-//// } from '..';
-//// import { JSXInternal } from '..';
-//// 
-//// export function jsx(
-////     type: string,
-////     props: JSXInternal.HTMLAttributes &
-////         JSXInternal.SVGAttributes &
-////         Record<string, any> & { children?: ComponentChild },
-////     key?: string
-//// ): VNode<any>;
-//// export function jsx<P>(
-////     type: ComponentType<P>,
-////     props: Attributes & P & { children?: ComponentChild },
-////     key?: string
-//// ): VNode<any>;
-//// 
-//// 
-//// export function jsxs(
-////     type: string,
-////     props: JSXInternal.HTMLAttributes &
-////         JSXInternal.SVGAttributes &
-////         Record<string, any> & { children?: ComponentChild[] },
-////     key?: string
-//// ): VNode<any>;
-//// export function jsxs<P>(
-////     type: ComponentType<P>,
-////     props: Attributes & P & { children?: ComponentChild[] },
-////     key?: string
-//// ): VNode<any>;
-//// 
-//// 
-//// export function jsxDEV(
-////     type: string,
-////     props: JSXInternal.HTMLAttributes &
-////         JSXInternal.SVGAttributes &
-////         Record<string, any> & { children?: ComponentChildren },
-////     key?: string
-//// ): VNode<any>;
-//// export function jsxDEV<P>(
-////     type: ComponentType<P>,
-////     props: Attributes & P & { children?: ComponentChildren },
-////     key?: string
-//// ): VNode<any>;
-//// 
-//// export import JSX = JSXInternal;
-//// 
-// @filename: /index.tsx
-//// export const Comp = () => <div></div>;
-
-verify.noErrors()
-verify.getImports('/index.tsx', [])
diff --git a/tests/cases/fourslash/getImportsNone.ts b/tests/cases/fourslash/getImportsNone.ts
deleted file mode 100644
index d408cb6f14da5..0000000000000
--- a/tests/cases/fourslash/getImportsNone.ts
+++ /dev/null
@@ -1,12 +0,0 @@
-///<reference path="fourslash.ts"/>
-
-// @Filename: /index.ts
-//// function foo() {
-////     return 1;
-//// }
-//// function bar() {
-////     return 2;
-//// }
-////
-
-verify.getImports('/index.ts', [])
diff --git a/tests/cases/fourslash/getImportsOne.ts b/tests/cases/fourslash/getImportsOne.ts
deleted file mode 100644
index 7ebf0a51f2b7f..0000000000000
--- a/tests/cases/fourslash/getImportsOne.ts
+++ /dev/null
@@ -1,14 +0,0 @@
-///<reference path="fourslash.ts"/>
-
-// @Filename: /first.ts
-//// export function foo() {
-////     return 1;
-//// }
-// @Filename: /index.ts
-//// import { foo } from "./first";
-//// function bar() {
-////     return 2;
-//// }
-////
-
-verify.getImports('/index.ts', ['/first.ts'])
diff --git a/tests/cases/fourslash/getImportsOneJs.ts b/tests/cases/fourslash/getImportsOneJs.ts
deleted file mode 100644
index 1d9157f73e917..0000000000000
--- a/tests/cases/fourslash/getImportsOneJs.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-///<reference path="fourslash.ts"/>
-
-// @checkJs: true
-// @Filename: /first.ts
-//// export function foo() {
-////     return 1;
-//// }
-// @Filename: /index.js
-//// const { foo } = require("./first");
-//// function bar() {
-////     return 2;
-//// }
-////
-
-verify.getImports('/index.js', ['/first.ts'])
diff --git a/tests/cases/fourslash/getImportsReexport.ts b/tests/cases/fourslash/getImportsReexport.ts
deleted file mode 100644
index d5832405ae3b6..0000000000000
--- a/tests/cases/fourslash/getImportsReexport.ts
+++ /dev/null
@@ -1,15 +0,0 @@
-///<reference path="fourslash.ts"/>
-
-// @Filename: /first.ts
-//// export function foo() {
-////     return 1;
-//// }
-// @Filename: /index.ts
-//// export { foo } from "./first";
-//// function bar() {
-////     return 2;
-//// }
-////
-
-
-verify.getImports('/index.ts', ['/first.ts'])
diff --git a/tests/cases/fourslash/getImportsTslib.ts b/tests/cases/fourslash/getImportsTslib.ts
deleted file mode 100644
index 8f0519a3b0834..0000000000000
--- a/tests/cases/fourslash/getImportsTslib.ts
+++ /dev/null
@@ -1,19 +0,0 @@
-///<reference path="fourslash.ts"/>
-
-// @importHelpers: true
-// @target: es2015
-// @lib: es2015
-// @module: commonjs
-// @Filename: /node_modules/tslib/index.d.ts
-//// export function __awaiter(...args: any): any;
-// @Filename: /first.ts
-//// export function foo() {
-////     return 2
-//// }
-// @Filename: /index.ts
-//// export async function importer() {
-////     const mod = await import("./first");
-//// }
-
-verify.noErrors()
-verify.getImports('/index.ts', ['/first.ts'])